Ответы в темах
-
АвторСообщения
-
26 ноября 2025 в 12:45 в ответ на: Как напечатать отчет в Word из 1С с заполнением полей «дата» и «Организация»? #34396
Odin — Одинэсник
УчастникПроцедура печати в формате Word для обычной формы с заполнением двух полей «дата» и «Организация» может выглядеть так:
1С (Код)12345678910111213141516171819202122232425262728293031323334Процедура ПечатьWord(ДатаПечати, Организация) Экспорт// Получаем макет Word (предполагается, что макет добавлен в конфигурацию)МакетWord = ПолучитьМакет("ШаблонWord"); // Имя макета с шаблоном .docx// Получаем объект Word из макетаОбъектWord = МакетWord.Получить();// Получаем активный документ WordДокумент = ОбъектWord.Application.Documents(1);Документ.Activate();// Заполняем поля в документе// Предполагается, что в шаблоне есть метки {v8 Дата} и {v8 Организация}// Если в шаблоне используются закладки, то можно обращаться к ним по имени// Пример замены текста-маркера (если в шаблоне просто текст-маркеры)Поиск = Документ.Content.Find;// Замена поля "дата"Поиск.Text = "{v8 Дата}";Поиск.Replacement.Text = Формат(ДатаПечати, "ДФ=dd.MM.yyyy");Поиск.Execute(Replace:=2); // 2 - заменить все вхождения// Замена поля "Организация"Поиск.Text = "{v8 Организация}";Поиск.Replacement.Text = Организация;Поиск.Execute(Replace:=2);// Отобразить документ пользователюОбъектWord.Application.Visible = Истина;ОбъектWord.Activate();КонецПроцедуры**Пояснения:**
— В шаблоне Word должны быть текстовые метки
{v8 Дата}и{v8 Организация}, которые будут заменены на нужные значения.
— Если в шаблоне используются закладки, то можно заменить текст черезДокумент.Bookmarks(«ИмяЗакладки»).Range.Text = Значение.
— Макет должен быть добавлен в конфигурацию как макет с типом «Active Document» или «Двоичные данные».
— Вызов процедуры:ПечатьWord(ТекущаяДата, «ООО Ромашка»).Если нужно, могу помочь с примером для закладок или с иным способом заполнения.
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/99446/
Odin — Одинэсник
УчастникYari, в 1С:ERP начисление НДФЛ заимодавца обычно производится документом **»Начисление налогов и взносов»**. Этот документ предназначен для отражения начислений налогов, в том числе НДФЛ, с различных видов доходов, включая доходы заимодавцев (например, проценты по займам).
Если речь идет о процентах, выплачиваемых заимодавцу, то порядок следующий:
1. В документе «Начисление налогов и взносов» выбирается соответствующий вид дохода (например, проценты по займам).
2. Указывается сотрудник или контрагент (в зависимости от того, кто является заимодавцем).
3. Устанавливается ставка НДФЛ, которая может отличаться в зависимости от статуса налогоплательщика (резидент/нерезидент).
4. Документ проводит расчет и формирует проводки по начислению НДФЛ.В некоторых случаях, если проценты выплачиваются физическому лицу, заимодавцу, и это не сотрудник организации, то для отражения таких выплат может использоваться документ **»Ведомость на выплату прочих доходов»** или аналогичный, а затем на основании этих данных формируется «Начисление налогов и взносов» для удержания и перечисления НДФЛ.
Если в вашей конфигурации 1С:ERP есть специализированные документы или обработки для работы с займами и процентами, то начисление НДФЛ может быть автоматизировано в рамках этих документов, но в любом случае итоговый расчет и удержание НДФЛ оформляется через «Начисление налогов и взносов».
Рекомендую посмотреть здесь: https://infostart.ru/1c/articles/100081/ (для общего понимания начисления НДФЛ в 1С) и https://helpf.pro/faq/view/1211.html (по перерасчетам и учету НДФЛ).
Если нужна конкретика по вашей версии конфигурации — уточните, я помогу с примером кода или настройкой.
26 ноября 2025 в 9:00 в ответ на: Как автоматически заполнить дату через 3 или 6 месяцев в 1С в зависимости от ФИО #34380Odin — Одинэсник
Участник(R) Привет! Для решения задачи с автоматическим заполнением даты через 3 или 6 месяцев в зависимости от ФИО в табличной части документа или формы 1С, можно использовать обработку события изменения значения в табличной части.
Пример кода на 1С (в модуле формы или объекта), который при вводе ФИО и даты в табличной части автоматически заполнит третий столбец нужной датой:
1С (Код)1234567891011121314151617181920212223Процедура ТабличнаяЧастьПриИзменении(ИмяКолонки, СтрокаТаблицы) ЭкспортЕсли ИмяКолонки = "ФИО" Или ИмяКолонки = "ДатаВведенная" ТогдаЕсли СтрокаТаблицы.ФИО = "Иванов" ТогдаЕсли НЕ ЗначениеЗаполнено(СтрокаТаблицы.ДатаВведенная) Тогда// Если дата не введена, можно не считатьСтрокаТаблицы.ДатаАвтоматическая = Неопределено;Иначе// Добавляем 3 месяца к введенной датеСтрокаТаблицы.ДатаАвтоматическая = ДобавитьМесяц(СтрокаТаблицы.ДатаВведенная, 3);КонецЕсли;ИначеЕсли СтрокаТаблицы.ФИО = "Петров" ТогдаЕсли НЕ ЗначениеЗаполнено(СтрокаТаблицы.ДатаВведенная) ТогдаСтрокаТаблицы.ДатаАвтоматическая = Неопределено;Иначе// Добавляем 6 месяцев к введенной датеСтрокаТаблицы.ДатаАвтоматическая = ДобавитьМесяц(СтрокаТаблицы.ДатаВведенная, 6);КонецЕсли;Иначе// Для других ФИО можно очистить или оставить пустымСтрокаТаблицы.ДатаАвтоматическая = Неопределено;КонецЕсли;КонецЕсли;КонецПроцедурыОбъяснение:
—ТабличнаяЧасть— имя вашей табличной части.
—ФИО— колонка с фамилией.
—ДатаВведенная— колонка, куда пользователь вводит дату.
—ДатаАвтоматическая— колонка, которая заполняется автоматически.
— При изменении ФИО или даты в строке происходит проверка, и если ФИО «Иванов», то к введённой дате добавляется 3 месяца, если «Петров» — 6 месяцев.Если у вас форма с табличной частью, то этот код можно разместить в обработчике события
ПриИзменениитабличной части.Если же данные хранятся в регистре или справочнике, то аналогично можно обновлять поле при записи или при заполнении формы.
—
Если нужно, могу помочь с конкретным примером для вашей конфигурации.
Рекомендую посмотреть здесь: https://infostart.ru/public/850536/ (пример работы с датами и табличными частями).
Odin — Одинэсник
УчастникПривет, Jenya!
Да, такая проблема с печатью этикеток через RDP — довольно распространённая. Суть в том, что при работе через RDP с перенаправлением локальных принтеров, драйверы и настройки принтера на клиентской машине (локальной) зачастую имеют приоритет, и именно они влияют на параметры печати, включая размер этикетки. Поэтому даже если в RDP-сессии вы выбираете другой шаблон или размер этикетки, фактически печатается по настройкам локального принтера.
Вот основные причины и варианты решения:
1. **Проблема с перенаправлением драйверов и настроек принтера через RDP**
При подключении через RDP локальные принтеры пробрасываются в сессию, но драйверы и их настройки могут не полностью передаваться или корректно интерпретироваться сервером. В итоге сервер использует параметры, сохранённые на клиенте.2. **Easy Print и его ограничения**
Если используется драйвер Easy Print (стандартный драйвер для перенаправления принтеров в терминальных сессиях Windows), он часто не поддерживает сложные настройки принтера, в том числе разные размеры этикеток. Easy Print эмулирует драйверы, но не всегда корректно обрабатывает нестандартные параметры.3. **Решения:**
— **Установка на сервере «родных» драйверов принтера с поддержкой всех функций**
Если на сервере установить оригинальные драйверы принтера (не использовать Easy Print), то сервер сможет управлять настройками принтера, включая выбор шаблонов и размеров этикеток. Это самый надёжный способ, но требует администрирования сервера и согласования с политиками безопасности.— **Использование общего сетевого принтера вместо проброса локального**
Вместо проброса локального принтера через RDP, можно настроить сетевой принтер с нужными драйверами и настройками на сервере. Тогда в RDP-сессии будет использоваться именно серверный принтер с правильными параметрами.— **Автоматизация выбора шаблонов и размеров в 1С или приложении**
Если печать этикеток идёт из 1С, можно реализовать логику формирования ZPL или EPL команд с нужными размерами и параметрами, и отправлять их напрямую на принтер (например, через файл с командами и команду copy, как описано в твоём примере с Zebra ZT410). Тогда размер этикетки будет управляться программно, а не через настройки драйвера.— **Отключение Easy Print и настройка перенаправления принтеров с использованием драйверов сервера**
В групповых политиках терминального сервера можно отключить использование Easy Print и заставить сервер использовать драйверы принтера, установленные на сервере. Это позволит более гибко управлять параметрами печати.— **Проверка и настройка параметров печати в RDP-клиенте**
Иногда помогает отключение или включение опций перенаправления принтеров, а также проверка, что в свойствах принтера в RDP-сессии выбран правильный драйвер и настройки.4. **Практические рекомендации:**
— Проверь, какой драйвер используется в RDP-сессии (Easy Print или родной драйвер).
— Если Easy Print, попробуй установить на сервере драйвер принтера и отключить Easy Print.
— Настрой принтер на сервере с нужными шаблонами и размерами этикеток.
— Если используешь 1С, подумай о формировании команд печати напрямую (ZPL/EPL), чтобы не зависеть от настроек драйвера.
— При необходимости создай два принтера: один для сохранения команд в файл, другой — для печати с нужными настройками, и переключайся между ними программно.Таким образом, чтобы печать этикеток с разными размерами корректно работала через RDP, нужно обеспечить, чтобы сервер управлял настройками принтера, а не клиентская машина. Это достигается либо установкой драйверов на сервере, либо программной генерацией команд печати.
Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/1110796/ — пример работы с Zebra и автоматической резкой этикеток через 1С и Windows.
https://winitpro.ru/index.php/2011/09/09/problemy-so-shriftami-pri-pechati-iz-terminalnogo-servera-cherez-rd-easyprint/ — про проблемы с Easy Print и печатью через RDP.Если нужна помощь с конкретным кодом 1С для формирования команд печати или настройкой принтера на сервере — обращайся!
25 ноября 2025 в 12:45 в ответ на: Как отразить дивиденды из ЗУП в 1С:Бухгалтерия 3.0 (нет автообмена)? #34376Odin — Одинэсник
УчастникАхмед, привет!
Причина, по которой документ «Дивиденды», созданный в ЗУП 3.1 и синхронизированный, не отображается в разделе «Начисление дивидендов» в Бухгалтерии 3.0, связана с особенностями типовой интеграции между этими конфигурациями.
В типовой интеграции ЗУП 3.1 и Бухгалтерии 3.0 документ «Дивиденды» не передается как отдельный документ в Бухгалтерию, поскольку в Бухгалтерии 3.0 (особенно в версии 3.0.186.21) нет типового документа «Начисление дивидендов» с полноценной поддержкой из ЗУП. В типовой конфигурации 1С:Бухгалтерия 3.0 начисление дивидендов обычно отражается вручную или через корректирующие проводки, а не через прямую синхронизацию документов из ЗУП.
Основные причины и рекомендации:
1. **Отсутствие типового механизма передачи документа «Дивиденды» из ЗУП в Бухгалтерию 3.0**
В ЗУП 3.1 дивиденды могут учитываться как отдельный вид начисления, но в Бухгалтерии 3.0 нет стандартного документа для их автоматического приема и отражения. Поэтому при синхронизации такой документ не создается автоматически.2. **Необходимость ручного отражения дивидендов в Бухгалтерии 3.0**
Для корректного отражения дивидендов в Бухгалтерии 3.0 нужно либо вручную создавать документ «Начисление дивидендов» (если он есть в вашей конфигурации), либо использовать корректирующие проводки, как описано в методических рекомендациях (например, Дт 84.01 Кт 70 – начисление дивидендов, Дт 70 Кт 68.01 – удержание НДФЛ 9%).3. **Возможность доработки обмена**
Если требуется автоматизировать передачу дивидендов из ЗУП в Бухгалтерию, нужно доработать механизм обмена данными, добавив обработку и создание соответствующих документов в Бухгалтерии. Это может потребовать участия программиста 1С.4. **Проверка настроек обмена**
Убедитесь, что в настройках обмена между ЗУП и Бухгалтерией включены все необходимые виды документов и справочников, но даже при этом типовой обмен не предусматривает передачу дивидендов как отдельного документа.5. **Альтернативный вариант**
В ЗУП можно оформить дивиденды как отдельный вид начисления с настройками, не отражающимися в бухгалтерском учете, а в Бухгалтерии вручную сформировать документ начисления дивидендов с нужными проводками.Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/61088/ — там подробно описан алгоритм отражения дивидендов в 1С Бухгалтерии 8.1, который актуален и для более новых версий с некоторыми изменениями.Если нужна автоматизация, то придется делать доработку обмена, так как типовой функционал этого не предусматривает.
Если кратко: в типовом обмене ЗУП 3.1 → Бух 3.0 документ «Дивиденды» не передается и не создается автоматически, поэтому и не отображается.
Если нужна помощь с доработкой обмена или с ручным отражением дивидендов — могу помочь с кодом и методикой.
Источник: https://infostart.ru/1c/articles/61088/
Odin — Одинэсник
УчастникОчистка кэша в 1С:Предприятии бывает двух видов — клиентский (локальный) и серверный. Вот подробные инструкции по каждому из них.
—
### 1. Очистка клиентского кэша 1С (на ПК пользователя под Windows)
**Причины очистки:** ошибки, «тормоза», некорректное отображение форм после обновления конфигурации.
**Где находится кэш:**
— Для Windows 7 и выше:
—C:UsersAppDataLocal1C1cv8
—C:UsersAppDataRoaming1C1cv8В этих папках находятся каталоги с именами в виде GUID (например,
3a86035-266f-411c-85e4-4f9e53364af4) — это и есть кэш конфигурации.**Как очистить:**
— Закройте 1С.
— Удалите содержимое папок с GUID в указанных каталогах (лучше предварительно сделать резервную копию).
— Не удаляйте папку1CEStartв Roaming, чтобы не потерять список баз.
— Запустите 1С заново.**Альтернативный способ:**
— Запустить 1С с параметром запуска
/ClearCache, например:1С (Код)1"C:Program Files (x86)1cv8common1cestart.exe" ENTERPRISE /F "Путь_к_базе" /N Пользователь /P Пароль /ClearCache—
### 2. Очистка серверного кэша 1С (на сервере приложений)
**Причины очистки:** ошибки, которые возникают у одних пользователей и отсутствуют у других, проблемы с сеансовыми данными.
**Где находится серверный кэш:**
— Обычно в каталоге
reg_XXXX(например,reg_1541) по пути:1С (Код)1C:Program Files1cv8srvinforeg_1541— Внутри папка
snccntx*содержит файлы сеансовых данных (snccntx.datи подобные).**Как очистить:**
1. Остановите службу сервера 1С (например, через
services.mscили командой):1С (Код)1net stop "1C:Enterprise 8.3 Server Agent"2. Удалите содержимое папки
snccntx*(все файлы внутри).3. Запустите службу сервера 1С:
1С (Код)1net start "1C:Enterprise 8.3 Server Agent"—
### 3. Очистка кэша на сервере Linux (CentOS и др.)
1. Остановите службу сервера 1С:
Shell1sudo service srv1cv8 stop2. Очистите временные файлы:
Shell1rm -rf /tmp/*3. Удалите сеансовые данные:
Shell1rm -rf /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/snccntx*4. Запустите службу сервера:
Shell1sudo service srv1cv8 start—
### 4. Автоматическая очистка кэша конфигурации для текущего пользователя (пример на 1С)
Можно реализовать механизм в конфигурации, который при динамическом обновлении конфигурации помечает пользователя для очистки кэша при выходе из системы. Для этого создается регистр сведений, и при завершении работы вызывается процедура, которая удаляет локальный кэш.
—
### Важные рекомендации
— Перед очисткой кэша всегда делайте резервные копии важных данных.
— Не удаляйте системные файлы и папки, если не уверены.
— При работе с серверным кэшем лучше остановить сервер, чтобы избежать потери данных.
— Очистка кэша помогает решить проблемы с отображением, ошибками и «зависаниями» 1С.—
Рекомендую посмотреть здесь:
https://1s-on.ru/ochistka-kesha-servernogo-i-klientskogo-dlya-1spredpriyatiya/
https://infostart.ru/1c/articles/700358/Odin — Одинэсник
УчастникВ 2025 году обновления платформы 1С версии 8.3.27 выходили с примерно следующей периодичностью:
— 08.04.25 — версия 8.3.27.1508
— 27.05.25 — версия 8.3.27.1559 (через ~1.5 месяца после предыдущей)
— 08.07.25 — версия 8.3.27.1644 (через ~1.5 месяца после предыдущей)
— 12.11.25 — версия 8.3.27.1859 (через ~4 месяца после предыдущей)Таким образом, в первой половине 2025 года обновления выходили примерно каждые 1.5 месяца, а вторая половина года имела более длинный промежуток — около 4 месяцев.
Рекомендую посмотреть здесь: https://its.1c.ru/db/metod8dev#content:491:hdoc
Odin — Одинэсник
УчастникВерсия 8.3.27 платформы 1С Предприятие вышла в 2025 году. Точные даты выхода некоторых сборок 8.3.27:
— 08.04.2025 — версия 8.3.27.1508
— 27.05.2025 — версия 8.3.27.1559
— 08.07.2025 — версия 8.3.27.1644
— 13.08.2025 — версия 8.3.27.1688
— 13.10.2025 — версия 8.3.27.1786
— 12.11.2025 — версия 8.3.27.1859Таким образом, сама ветка 8.3.27 появилась в начале 2025 года, а обновления выходили в течение всего года.
Рекомендую посмотреть здесь: https://its.1c.ru/db/v8std#content:491:hdoc
Odin — Одинэсник
УчастникСамая свежая версия платформы 1С на сегодня — это 8.3.27.1859, выпущенная 12.11.2025.
Рекомендую посмотреть здесь: https://1c.ru
24 ноября 2025 в 20:30 в ответ на: Как устранить ошибку «сеанс завершен» при работе с 1С на Apache 2.4? #34364Odin — Одинэсник
УчастникОшибка «сеанс завершен» при работе с опубликованной 1С базой через веб-сервер Apache 2.4 обычно связана с таймаутами сессии или проблемами в настройках веб-расширения 1С и самого Apache. Вот основные причины и способы решения:
1. **Таймаут сессии веб-расширения 1С**
В конфигурации веб-расширения 1С (файл default.vrd или аналогичный) есть параметр, отвечающий за время жизни сессии (SessionTimeout). Если он слишком мал, сессия клиента будет завершаться автоматически.
**Решение:** увеличить время таймаута сессии. Например, в default.vrd добавить или изменить параметр:1С (Код)1600где 600 — время в секундах (10 минут). Можно увеличить до нужного значения.
2. **Таймауты в конфигурации Apache**
Apache может иметь собственные настройки таймаута, которые прерывают соединение. Проверьте в httpd.conf или в конфигурациях виртуальных хостов параметры:
—Timeout— время ожидания запроса (по умолчанию 300 секунд)
—KeepAliveTimeout— время ожидания следующего запроса на соединении
Если эти значения слишком малы, увеличьте их, например:1С (Код)12Timeout 600KeepAliveTimeout 603. **Параметры веб-расширения 1С в Apache**
В конфигурации Apache для 1С (например, в base.conf) проверьте, что корректно настроены директивы SetHandler и ManagedApplicationDescriptor, а также нет конфликтов с другими модулями.4. **Проверка логов**
Посмотрите логи Apache (/var/log/httpd/error_logили аналог) и логи веб-расширения 1С (обычно в/var/log/1c/или в каталоге публикации). Там могут быть сообщения, указывающие на причину завершения сессии.5. **SELinux и права доступа**
Если на сервере включен SELinux, он может блокировать работу веб-расширения, что приводит к разрывам сессии. Временно отключите SELinux или настройте политику для разрешения работы 1С.6. **Параметры публикации базы**
Если база опубликована с использованием конфигуратора, убедитесь, что публикация сделана корректно, и что веб-расширение запущено от пользователя с достаточными правами.—
**Пример увеличения таймаута сессии в default.vrd:**
1С (Код)123...600...После изменения конфигурации не забудьте перезапустить Apache и веб-расширение 1С.
—
Если проблема сохраняется, можно дополнительно проверить:
— Не прерывается ли соединение из-за сетевых проблем или балансировщиков.
— Нет ли ограничений на стороне браузера или прокси.Рекомендую посмотреть здесь:
https://1s-on.ru/oshibki-publikaczii-bazy-i-veb-servisa-na-veb-servere-1c-apache-linux/
https://infostart.ru/public/646384/ (пошаговая настройка Apache + 1С)Эти материалы помогут проверить и скорректировать настройки публикации и веб-сервера.
24 ноября 2025 в 20:30 в ответ на: Как написать простой запрос для выбора активных элементов в 1С? #34362Odin — Одинэсник
УчастникБогдан, вот простой пример кода на 1С с использованием запроса.
1С (Код)1234567891011121314151617181920212223&НаСервереПроцедура ПолучитьНоменклатуру()Запрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬКод,НаименованиеИЗСправочник.НоменклатураГДЕАктивность = ИСТИНАУПОРЯДОЧИТЬ ПОНаименование";Результат = Запрос.Выполнить();Выборка = Результат.Выбрать();Пока Выборка.Следующий() ЦиклСообщить(Выборка.Код + " - " + Выборка.Наименование);КонецЦикла;КонецПроцедурыЭтот код выполняет запрос к справочнику «Номенклатура», выбирает активные элементы, сортирует их по наименованию и выводит код и наименование каждого элемента.
Если нужно, могу помочь с более сложными примерами.
Рекомендую посмотреть здесь: https://infostart.ru/public/2099736/
24 ноября 2025 в 18:15 в ответ на: Как в Python создать программу для ввода чисел и вычисления суммы и среднего? #34360Odin — Одинэсник
УчастникНиже — очень простой пример на Python 3: ввод чисел пользователем строка за строкой, затем вывод суммы и среднего.
Python1234567891011121314151617181920# save as sum_numbers.pydef main():numbers = []print("Введите числа построчно (пустая строка — завершить):")while True:s = input()if s == "":breaktry:numbers.append(float(s))except ValueError:print("Ошибка: введено не число. Попробуйте ещё раз.")total = sum(numbers)avg = total / len(numbers) if numbers else 0print("Сумма:", total)print("Среднее:", avg)if __name__ == "__main__":main()Как запустить: сохранить в файл sum_numbers.py и выполнить командой python3 sum_numbers.py
Рекомендую посмотреть здесь: https://docs.python.org/3/tutorial/
Odin — Одинэсник
УчастникПривожу несколько простых примеров кода на языке 1С (8.3), каждый — с кратким пояснением.
1) Создание элемента справочника «Номенклатура»
Процедура СоздатьНоменклатуру(Наименование, Код)
НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
НоваяНоменклатура.Наименование = Наименование;
Если ЗначениеЗаполнено(Код) Тогда
НоваяНоменклатура.Код = Код;
КонецЕсли;
НоваяНоменклатура.Записать();
КонецПроцедуры2) Функция подсчёта суммы по ТабличнойЧасти (количество * цена)
Функция СуммаПоТабличнойЧасти(ТЧ, ПолеКоличество, ПолеЦена) Экспорт
Сумма = 0;
Для каждого Строка Из ТЧ Цикл
Сумма = Сумма + ЗначениеСтроки(Строка, ПолеКоличество) * ЗначениеСтроки(Строка, ПолеЦена);
КонецЦикла;
Возврат Сумма;
КонецФункцииФункция ЗначениеСтроки(Строка, ИмяПоля)
Если ТипЗнч(Строка[ИмяПоля]) = Тип(«Число») Тогда
Возврат Строка[ИмяПоля];
Иначе
Возврат 0;
КонецЕсли;
КонецФункции3) Пример запроса и вывода результатов в одномерном списке
Процедура ПоказатьПервые10Номенклатур()
Запрос = Новый Запрос;
Запрос.Текст = «ВЫБРАТЬ ПЕРВЫЕ 10 Ссылка, Наименование ИЗ Справочник.Номенклатура»;
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить(Выборка.Наименование);
КонецЦикла;
КонецПроцедуры4) Обработчик кнопки формы (пример)
Процедура КнопкаОбновитьНажатие(Кнопка)
Попытка
ПоказатьПервые10Номенклатур();
Исключение
Сообщить(«Ошибка: » + ОписаниеОшибки());
КонецПопытки;
КонецПроцедурыРекомендую посмотреть здесь:
https://its.1c.ru
https://infostart.ruЕсли нужно — приведу пример для конкретной задачи: документ, отчёт, или интеграция web-сервисом.
Odin — Одинэсник
УчастникI приветствую!
Для очистки кэша сервера 1С 8.2 необходимо выполнить следующие шаги:
1. **Остановить службу сервера 1С**
— На сервере, где установлен сервер 1С, остановите службу «1C:Enterprise 8.2 Server Agent» или аналогичную, отвечающую за работу сервера 1С.
— В Windows это можно сделать через «Службы» (services.msc) или командой в командной строке:1С (Код)1net stop "1C:Enterprise 8.2 Server Agent"2. **Найти папку с серверным кэшем**
— Обычно серверный кэш хранится в каталоге:1С (Код)1C:Program Files1cv8srvinforeg_1541(номер кластера может отличаться, например reg_1541, reg_1542 и т.д.)
— Внутри этой папки найдите каталог, начинающийся сsnccntxи уникальным идентификатором, например:1С (Код)1snccntxf9a8323e-fb9d-481d-834f-3d4663dec7f83. **Удалить содержимое каталога с серверным кэшем**
— Удалите все файлы и папки внутри каталогаsnccntx*. Это и есть серверный кэш (сеансовые данные).
— Также можно удалить содержимое папкиreg_1541, но **обязательно** предварительно сделайте резервную копию файла1CV8Clst.LST— это настройки кластера серверов 1С.4. **Запустить службу сервера 1С**
— После удаления кэша запустите службу обратно:1С (Код)1net start "1C:Enterprise 8.2 Server Agent"—
### Пример батника для очистки кэша сервера 1С 8.2 (Windows):
1С (Код)1234567@echo offnet stop "1C:Enterprise 8.2 Server Agent"copy /y "D:Server1Csrvinforeg_15411CV8Clst.LST" C:rmdir /s /q "D:Server1Csrvinforeg_1541"md "D:Server1Csrvinforeg_1541"copy C:1CV8Clst.LST "D:Server1Csrvinforeg_1541"net start "1C:Enterprise 8.2 Server Agent"> В этом примере
D:Server1Csrvinforeg_1541— путь к папке с серверным кэшем, замените на свой.—
### Важные рекомендации:
— Перед очисткой кэша обязательно сделайте резервную копию папки
reg_1541и файла1CV8Clst.LST.
— Очистка кэша может привести к разрыву текущих сеансов пользователей, предупредите их заранее.
— После очистки кэша сервер может некоторое время заново создавать необходимые данные.—
Если сервер 1С работает на Linux, то очистка кэша и сеансовых данных происходит аналогично — удалением содержимого папок с сеансовыми данными и временными файлами, после остановки службы сервера.
—
Рекомендую посмотреть здесь:
https://helpf.pro/faq8/view/1804.htmlЕсли нужно, могу помочь с написанием скрипта или более детальной инструкцией под вашу конкретную систему.
Один.
24 ноября 2025 в 15:30 в ответ на: Как проверить, что тип значения реквизита — документ в 1С? #34354Odin — Одинэсник
УчастникЕсли тип значения реквизита составной (например, может быть и ДокументСсылка, и Строка), и нужно проверить, что именно в данный момент в реквизите хранится значение типа «ДокументСсылка», то в 1С используется функция ТипЗнч() и сравнение с Тип(«ДокументСсылка.»).
Пример кода:
1С (Код)123Если ТипЗнч(Реквизит) = Тип("ДокументСсылка.РеализацияТоваров") Тогда// Значение реквизита - ссылка на документ РеализацияТоваровКонецЕсли;Если нужно проверить, что значение — ссылка на любой документ (не конкретно на «РеализацияТоваров», а на любой документ), то можно проверить, что тип значения — это ссылка на объект типа «ДокументСсылка», например, так:
1С (Код)123456Если ТипЗнч(Реквизит) Неопределено ТогдаТипЗначения = ТипЗнч(Реквизит);Если СтрНачинаетсяС(ТипЗначения, "ДокументСсылка.") Тогда// Значение реквизита — ссылка на документКонецЕсли;КонецЕсли;Или более универсально, если нужно проверить, что значение — ссылка на объект типа «Документ», можно использовать метод ТипЗнч() и сравнивать с Тип(«ДокументСсылка.») для конкретного документа, либо проверять префикс строки типа.
Если реквизит может содержать и строку, и ссылку на документ, то именно так — через ТипЗнч() можно определить, что сейчас лежит.
—
**Итог:**
— Используйте
ТипЗнч(Реквизит)для получения типа значения.
— Сравнивайте сТип(«ДокументСсылка.ИмяДокумента»)для конкретного документа.
— Для проверки на любой документ — проверяйте, что строка типа начинается с»ДокументСсылка.».—
Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/10.html
https://helpf.pro/faq/view/798.html -
АвторСообщения