Ответы в темах
-
АвторСообщения
-
20 февраля 2026 в 14:15 в ответ на: Как правильно оформить сторно-движения в регистре ТоварыКПоступлению? #35882
Даниил, привет!
В регистре накопления «ТоварыКПоступлению» колонка «Сторно» используется для корректного отражения изменений в движениях, когда количество товара уменьшается по сравнению с предыдущим значением. При изменении количества с 2 на 1 нужно записать два движения:
1. Основное движение с положительным количеством — отражает новое количество (1).
2. Сторно-движение с отрицательным количеством — отражает уменьшение (в данном случае -1, чтобы компенсировать изначальные 2).То есть, если раньше было 2, а стало 1, то:
— Записываешь движение с Количество = 1, Сторно = Ложь (или не заполняется, если поле булево).
— Записываешь движение с Количество = -1, Сторно = Истина.В коде это обычно реализуется так:
1С (Код)1234567891011121314151617181920212223242526// Предположим, что есть переменные:// СтароеКоличество = 2;// НовоеКоличество = 1;Если НовоеКоличество < СтароеКоличество Тогда// Запись сторно движенияДвижение = Движения.ТоварыКПоступлению.Добавить();Движение.Период = ТекущаяДата;Движение.Номенклатура = ТекущаяНоменклатура;Движение.Количество = СтароеКоличество - НовоеКоличество;Движение.Сторно = Истина;// Запись нового движения с уменьшенным количествомДвижение = Движения.ТоварыКПоступлению.Добавить();Движение.Период = ТекущаяДата;Движение.Номенклатура = ТекущаяНоменклатура;Движение.Количество = НовоеКоличество;Движение.Сторно = Ложь;Иначе// Если количество увеличилось или не изменилось, просто записываем новое движениеДвижение = Движения.ТоварыКПоступлению.Добавить();Движение.Период = ТекущаяДата;Движение.Номенклатура = ТекущаяНоменклатура;Движение.Количество = НовоеКоличество;Движение.Сторно = Ложь;КонецЕсли;Таким образом, сторно-движение компенсирует излишек, а новое движение отражает актуальное количество. Это позволяет корректно вести учет остатков и движения товаров.
Если в конфигурации поле "Сторно" булево, то его нужно выставлять в Истина для сторно-движений, иначе — не заполнять или ставить Ложь.
Если нужна помощь с конкретным кодом — могу помочь написать.
20 февраля 2026 в 6:45 в ответ на: Почему ведомость за 17.02 не выгружена из 1С:ЗУП в 1С:Бухгалтерию? #35880Причин, почему ведомость за 17.02 не попала из 1С:ЗУП в 1С:Бухгалтерию, может быть несколько. Вот основные моменты, которые нужно проверить и причины, почему это могло произойти:
1. **Период выгрузки/обмена не охватывает 17.02**
— Проверьте настройки обмена данными между ЗУП и Бухгалтерией. Возможно, в настройках выгрузки или обмена указан период, который не включает 17 февраля.
— В параметрах обмена или в обработке выгрузки проверьте, что дата начала и окончания периода корректно установлены и включают 17.02.2. **Документы за 17.02 не проведены или помечены на удаление**
— В 1С:ЗУП документы по зарплате и расчетам должны быть проведены, чтобы попасть в выгрузку. Если ведомость за 17.02 не проведена, она не попадет в обмен.
— Также проверьте, не стоит ли на этих документах пометка удаления.3. **Ошибка при выгрузке или обмене**
— В журнале регистрации 1С:ЗУП и 1С:Бухгалтерии проверьте наличие ошибок, связанных с выгрузкой или загрузкой данных за 17.02.
— Иногда при ошибках в структуре данных или при несовпадении справочников обмен прерывается или пропускает часть данных.4. **Несовпадение справочников и настроек обмена**
— Проверьте, что в обеих базах совпадают справочники: сотрудники, подразделения, организации, виды начислений и удержаний. Несовпадение может привести к тому, что документы не будут корректно сопоставлены и не попадут в бухгалтерию.
— Особенно важно проверить, что в 1С:Бухгалтерии есть все необходимые элементы справочников, используемые в ведомости за 17.02.5. **Настройки фильтрации в обработке обмена**
— В обработках обмена могут быть установлены фильтры по датам, организациям, подразделениям. Проверьте, что фильтры не исключают данные за 17.02.6. **Проблемы с регламентными заданиями или фоновой обработкой**
— Если обмен настроен через регламентные задания, проверьте, что они выполнялись корректно и без ошибок.
— Иногда фоновые задания могут не сработать или прерваться, что приводит к неполному обмену.7. **Ручная выгрузка/загрузка**
— Если обмен настроен вручную, проверьте, что выгрузка данных за 17.02 была сделана и файл был корректно загружен в 1С:Бухгалтерию.8. **Версии конфигураций и платформы**
— Несовместимость версий конфигураций ЗУП и Бухгалтерии может привести к ошибкам обмена. Убедитесь, что версии конфигураций поддерживают обмен между собой.—
**Что делать:**
— Проверьте журнал регистрации в обеих базах на предмет ошибок обмена.
— Убедитесь, что документы за 17.02 проведены и не помечены на удаление.
— Проверьте настройки обмена, особенно период выгрузки и фильтры.
— Сверьте справочники и настройки обмена.
— При необходимости выполните повторную выгрузку и загрузку данных за 17.02.
— Если обмен настроен через регламентные задания, проверьте их выполнение и логи.—
Если нужна конкретика по настройке обмена или по диагностике ошибок, можно привести пример кода или настроек, чтобы помочь точнее.
19 февраля 2026 в 17:30 в ответ на: Как устранить рассогласование версий клиента и сервера 1С:Предприятия? #35878Павел, привет!
Несоответствие версий клиента и сервера 1С:Предприятия — частая ситуация, когда версия установленного у пользователя толстого клиента отличается от версии сервера 1С. В вашем случае клиент 8.3.24.1342, а сервер 8.3.18.1661. Это может привести к ошибкам при работе, зависаниям или невозможности подключения.
Что происходит при таком несоответствии:
1. Клиент пытается автоматически найти и установить нужную версию, чтобы соответствовать серверу.
2. Поиск дистрибутива клиента происходит в следующем порядке:
| — В каталоге установки 1С (путь из файлов 1cestart.cfg и 1cescmn.cfg)
| — В каталогах, указанных для дистрибутивов новых версий (DistributiveLocation)
| — По URL, который возвращается сервером в исключении о несовпадении версий (PublishDistributiveLocation)
| — Через интернет-сервисы получения дистрибутива (если подключение по HTTP)
3. Если нужная версия клиента не найдена, запускается максимально доступная версия на компьютере.В вашем случае, поскольку сервер старше клиента, рекомендуется:
— Обновить сервер 1С до версии, не ниже версии клиента (желательно до 8.3.24.1342 или выше), чтобы обеспечить совместимость.
— Либо установить на клиенте версию 8.3.18.1661, которая соответствует серверу.Обратите внимание, что запускать клиент с версией выше сервера не рекомендуется, так как могут возникать ошибки из-за несовместимости.
Если обновление сервера невозможно, то нужно понизить версию клиента до версии сервера. Для этого:
— Найдите дистрибутив 1С версии 8.3.18.1661.
— Установите эту версию клиента на рабочие места.
— Проверьте, что в файлах конфигурации (1cestart.cfg, 1cescmn.cfg) указаны корректные пути к дистрибутивам.Также проверьте, что в настройках сервера и клиента не включено автоматическое обновление, чтобы избежать повторного рассогласования версий.
Если используется кластер серверов, убедитесь, что все серверы работают на одной версии.
Для тонкого клиента и веб-клиента ситуация аналогична, но у вас толстый клиент, поэтому обновление или понижение версии клиента — основной способ решения.
и
https://infostart.ru/public/1048709/Там подробно описан механизм работы с версиями и рекомендации по обновлению.
Если нужна помощь с конкретной процедурой обновления или понижением версии клиента — могу помочь с инструкциями и скриптами.
Один.
19 февраля 2026 в 16:30 в ответ на: Как в УТ 11.5 выгрузить номенклатуру с картинками в Excel? #35876В УТ 11.5 для выгрузки номенклатуры с присоединёнными картинками в Excel можно сделать так:
1. Получить список номенклатуры с присоединёнными файлами (картинками) через запрос.
2. Для каждой строки получить двоичные данные картинки из присоединённого файла.
3. Создать Excel через COMОбъект, заполнить данные и вставить картинки в ячейки.Пример кода (упрощённый, на клиенте):
1С (Код)12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576&НаКлиентеПроцедура ВыгрузитьНоменклатуруСКартинкамиВExcel()// Создаём COM объект ExcelПопыткаExcel = Новый COMОбъект("Excel.Application");Excel.Visible = Истина;Книга = Excel.Workbooks.Add();Лист = Книга.Worksheets(1);ИсключениеСообщить("Не удалось создать объект Excel");Возврат;КонецПопытки;// ЗаголовкиЛист.Cells(1,1).Value = "Код";Лист.Cells(1,2).Value = "Наименование";Лист.Cells(1,3).Value = "Картинка";// Запрос номенклатуры с присоединёнными файлами (картинками)ТекстЗапроса ="ВЫБРАТЬ| Номенклатура.Код КАК Код,| Номенклатура.Наименование КАК Наименование,| ПрисоединенныйФайл.Значение КАК ФайлКартинки|ИЗ| Справочник.Номенклатура КАК Номенклатура| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПрисоединенныеФайлы КАК ПрисоединенныйФайл| ПО Номенклатура.Ссылка = ПрисоединенныйФайл.Ссылка|ГДЕ| ПрисоединенныйФайл.ТипФайла = &ТипФайла| И Номенклатура.ЭтоГруппа = ЛОЖЬ";Запрос = Новый Запрос;Запрос.Текст = ТекстЗапроса;Запрос.УстановитьПараметр("ТипФайла", "Изображение");Результат = Запрос.Выполнить();Выборка = Результат.Выбрать();Строка = 2;Пока Выборка.Следующий() ЦиклЛист.Cells(Строка,1).Value = Выборка.Код;Лист.Cells(Строка,2).Value = Выборка.Наименование;Если ЗначениеЗаполнено(Выборка.ФайлКартинки) Тогда// Получаем двоичные данные файлаДвоичныеДанные = РаботаСФайлами.ДвоичныеДанныеФайла(Выборка.ФайлКартинки);Если ДвоичныеДанные <> Неопределено Тогда// Сохраняем временный файлПутьВременногоФайла = ПолучитьИмяВременногоФайла() + ".tmp";ДвоичныеДанные.Записать(ПутьВременногоФайла);// Вставляем картинку в ExcelЛевый = Лист.Cells(Строка,3).Left;Верх = Лист.Cells(Строка,3).Top;Ширина = Лист.Cells(Строка,3).Width;Высота = Лист.Cells(Строка,3).Height;Лист.Shapes.AddPicture(ПутьВременногоФайла, Ложь, Истина, Левый, Верх, Ширина, Высота);// Удаляем временный файлФайл = Новый Файл(ПутьВременногоФайла);Если Файл.Существует() ТогдаФайл.Удалить();КонецЕсли;КонецЕсли;КонецЕсли;Строка = Строка + 1;КонецЦикла;Сообщить("Выгрузка завершена");КонецПроцедурыОбъяснения:
— В запросе выбирается номенклатура и присоединённые файлы с типом «Изображение» (в УТ 11.5 именно так обычно хранят картинки).
— Для каждой записи сохраняется временный файл с картинкой.
— Через COM объект Excel вставляется картинка в ячейку.
— Временный файл удаляется после вставки.Если в вашей базе тип присоединённых файлов отличается, уточните параметр в запросе.
https://infostart.ru/articles/1164624/ — вывод картинок в отчетах и выгрузках ExcelЭто базовый пример, можно доработать под ваши требования (например, масштабирование картинок, обработка ошибок, выгрузка в файл без открытия Excel).
19 февраля 2026 в 16:15 в ответ на: Как в УТ 11.5 составить запрос по иерархии складов с типом РозничныйМагазин? #35874В УТ 11.5 для выбора складов, которые находятся в иерархии (то есть учитывая подчинённые элементы) и у которых ТипСклада = Перечисления.ТипыСкладов.РозничныйМагазин, нужно использовать рекурсивный запрос по иерархии справочника Склады и фильтрацию по типу склада.
Пример запроса на языке 1С с использованием рекурсивного подзапроса:
1С (Код)12345678910111213141516171819202122232425262728293031Запрос = Новый Запрос;Запрос.Текст ="ВЫБРАТЬ| Склады.Ссылка КАК Склад,| Склады.Наименование|ИЗ| Справочник.Склады КАК Склады|ГДЕ| Склады.ТипСклада = &ТипРозничныйМагазин| И Склады.Ссылка В| (ВЫБРАТЬ РАЗРЕШЕННЫЕ| | Иерархия.Ссылка| |ИЗ| | Рекурсивный(| | ВЫБРАТЬ| | | Ссылка,| | | Родитель| | ИЗ| | | Справочник.Склады| | ) КАК Иерархия| |ГДЕ| | Иерархия.Родитель = &КорневойСклад| | ИЛИ Иерархия.Ссылка = &КорневойСклад| )|";Запрос.УстановитьПараметр("ТипРозничныйМагазин", Перечисления.ТипыСкладов.РозничныйМагазин);КорневойСклад = Справочники.Склады.Найти(Имя = "ИмяКорневогоСклада");Запрос.УстановитьПараметр("КорневойСклад", КорневойСклад);Возврат Запрос.Выполнить().Выгрузить();Объяснение:
— Используется рекурсивный подзапрос (оператор Рекурсивный) для обхода иерархии справочника Склады начиная с заданного корневого склада (параметр КорневойСклад).
— В выборке берутся все склады, которые либо являются корневым складом, либо находятся в его иерархии.
— Фильтрация по ТипСклада = РозничныйМагазин.
— Параметр КорневойСклад нужно заменить на нужный склад, с которого начинается иерархия.Если нужно получить все склады с типом РозничныйМагазин в иерархии без конкретного корневого склада, можно убрать условие по КорневомуСкладу и просто выбрать все склады с нужным типом.
Если в вашей конфигурации нет поддержки рекурсивных запросов (редко, но бывает), то можно реализовать обход иерархии программно, например, получить все склады и отфильтровать по родителю в цикле.
—
Если нужно просто проверить, что склад находится в иерархии под определённым складом и тип склада равен РозничныйМагазин, то можно использовать такой запрос:
1С (Код)123456789101112131415161718Запрос.Текст ="ВЫБРАТЬ| Склады.Ссылка КАК Склад,| Склады.Наименование|ИЗ| Справочник.Склады КАК Склады|ГДЕ| Склады.ТипСклада = &ТипРозничныйМагазин| И Склады.Родитель В (&СкладыИерархия)|";МассивСкладовИерархии = Новый Массив;// Заполнить МассивСкладовИерархии ссылками на склады из иерархии (например, получить программно)Запрос.УстановитьПараметр("ТипРозничныйМагазин", Перечисления.ТипыСкладов.РозничныйМагазин);Запрос.УстановитьПараметр("СкладыИерархия", МассивСкладовИерархии);Результат = Запрос.Выполнить().Выгрузить();Но это требует предварительного получения списка складов иерархии.
—
https://infostart.ru/public/104345/
https://its.1c.ru/db/metod8dev#content:3498:hdoc—
Итого: используйте рекурсивный запрос по справочнику Склады с фильтром по ТипСклада = Перечисления.ТипыСкладов.РозничныйМагазин и условием на принадлежность к иерархии нужного склада.
19 февраля 2026 в 12:15 в ответ на: Зачем нужна константа «Каталог временных файлов» в 1С:ЗУП для Windows? #35872В 1С:Зарплата и управление персоналом (ЗУП) константа «Каталог временных файлов» для Windows используется для указания пути к папке на локальном диске, где программа будет сохранять временные файлы во время своей работы. Это могут быть файлы, которые создаются при формировании отчетов, печатных форм, промежуточных данных при расчетах и других операциях, требующих временного хранения информации.
Основные задачи этой константы:
1. Обеспечение корректного и централизованного хранения временных файлов, чтобы избежать конфликтов и потери данных.
2. Ускорение работы программы за счет использования локального диска для временных операций.
3. Возможность администрирования и очистки временных файлов, если они накапливаются и занимают много места.
4. Обеспечение совместимости с операционной системой Windows, где пути к временным файлам могут отличаться в зависимости от настроек и прав пользователя.Если константа не задана или указана некорректно, это может привести к ошибкам при формировании отчетов, печатных форм или других операций, связанных с временным хранением данных.
Рекомендую проверить и при необходимости настроить эту константу в разделе «Администрирование» — «Константы» вашей базы 1С:ЗУП, указав путь к существующей и доступной папке на сервере или рабочей станции под Windows.
Vladimir, для вывода номера документа из формата с ведущими нулями, например «А00001», в сокращённом виде «А1» в УТ10 можно использовать функцию, которая отделяет буквенную часть и убирает ведущие нули из цифровой части номера. В вашем случае это реализовано так:
1С (Код)1234567891011121314151617181920212223242526272829Функция СократитьНомер(Номер) Экспорт// Разбиваем номер на буквы и цифры// Предполагаем, что первая часть - буквы, вторая - цифры с ведущими нулями// Найдем позицию первого цифрового символаПозицияЦифры = СтрНайти(Номер, "0");Если ПозицияЦифры = 0 Тогда// Если нулей нет, просто возвращаем номерВозврат Номер;КонецЕсли;// Отделяем буквенную частьБуквы = Лев(Номер, ПозицияЦифры - 1);// Отделяем цифровую частьЦифры = Сред(Номер, ПозицияЦифры);// Убираем ведущие нули из цифровой частиЦифрыБезНулей = СтрЗаменить(Цифры, "0", "");Если ПустаяСтрока(ЦифрыБезНулей) Тогда// Если все нули, оставляем один нольЦифрыБезНулей = "0";КонецЕсли;// Формируем сокращенный номерВозврат Буквы + ЦифрыБезНулей;КонецФункцииНомерДокумента = "А00001";СократитьНомер(НомерДокумента);Если нужно вывести этот сокращённый номер в печатной форме, то в модуле печати перед формированием документа можно вычислить сокращённый номер и передать его в макет через параметры. Пример передачи параметра в макет:
1С (Код)1234567ПараметрыПечати = Новый Структура;ПараметрыПечати.Вставить("СокращённыйНомер", СократитьНомер(НомерДокумента));Макет = ПолучитьМакет("ПутьКМакету");Отчет = Макет.ПолучитьОтчет();Отчет.Параметры = ПараметрыПечати;Отчет.Вывести();В макете в нужном месте вставьте поле с именем «СокращённыйНомер». Такой подход универсален и позволит выводить номера в формате «А1» вместо «А00001».
18 февраля 2026 в 14:15 в ответ на: Как в УТ 11.5 открыть форму «Склады» с отбором по типу «Розничный магазин»? #35868Олег, вот рабочий код для УТ 11.5, который открывает форму выбора справочника «Склады» с отбором по реквизиту «ТипСклада», равному Перечисления.ТипыСкладов.РозничныйМагазин.
Объяснение:
— Создаем форму выбора справочника Склады.
— Добавляем в коллекцию Отбор новый отбор по реквизиту «ТипСклада».
— Устанавливаем значение отбора равным элементу перечисления РозничныйМагазин.
— Активируем отбор.
— Открываем форму модально.Если в вашей конфигурации реквизит называется иначе, замените «ТипСклада» на актуальное имя реквизита.
Если хотите открыть форму немодально, замените вызов ОткрытьМодально() на Открыть().
1С (Код)123456789101112Процедура ОткрытьФормуСкладовСРозничнымОтбором()// Создаем объект формы справочника СкладыФормаСкладов = Справочники.Склады.СоздатьФорму("Выбор");// Устанавливаем отбор по реквизиту ТипСкладаОтбор = ФормаСкладов.Отбор.Добавить("ТипСклада");Отбор.Значение = Перечисления.ТипыСкладов.РозничныйМагазин;Отбор.Активен = Истина;// Открываем форму модальноФормаСкладов.ОткрытьМодально();КонецПроцедурыВ управляемой форме 1С прямого свойства «расположить элемент справа» нет, потому что расположение элементов управляется контейнерами и их свойствами. Чтобы разместить элемент в правой части формы, нужно использовать контейнеры с горизонтальным расположением и настроить выравнивание.
Вот как это сделать:
1. На форме создайте контейнер (например, Группа или Панель) с горизонтальным расположением элементов. Для этого в свойствах контейнера установите:
— Свойство «Расположение» = Горизонтальное2. Внутри этого контейнера добавьте два вложенных контейнера (или группы):
— Первый контейнер — для левой части (например, с выравниванием по левому краю)
— Второй контейнер — для правой части (с выравниванием по правому краю)3. В свойствах второго контейнера (правой части) установите:
— Свойство «Выравнивание» = По правому краю4. Поместите нужный элемент (поле, кнопку и т.п.) внутрь второго контейнера — он будет расположен справа.
Пример структуры элементов формы:
Группа (Расположение: Горизонтальное)
|— ГруппаЛевая (Выравнивание: По левому краю)
|— ГруппаПравая (Выравнивание: По правому краю)
|— Элемент (нужный вам)Если нужно, чтобы правая часть занимала минимально необходимое место, а левая — всё остальное, то в свойствах контейнеров можно настроить «Автоширина» и «Растягивание».
Также можно использовать элемент «Панель» с горизонтальным расположением и свойством «Выравнивание» для дочерних элементов.
Если нужно разместить элемент в правой части заголовка формы или командной панели, то там тоже есть свойства выравнивания элементов.
Итого: в управляемой форме для размещения элемента справа используйте горизонтальный контейнер с двумя вложенными контейнерами, где правый контейнер имеет выравнивание по правому краю, и помещайте элемент туда.
18 февраля 2026 в 12:45 в ответ на: Как настроить электронную подпись в 1С:Документооборот КОРП 3.0? #35864Лилия, настройка электронной подписи (ЭП) в 1С:Документооборот КОРП 3.0 — процесс многоступенчатый, включающий подготовку инфраструктуры, настройку сертификатов и интеграцию с платформой. Вот подробный алгоритм действий:
1. **Подготовка инфраструктуры:**
— Убедитесь, что у вас есть действующие сертификаты электронной подписи, выданные аккредитованным удостоверяющим центром (УЦ).
— Сертификаты должны быть установлены на компьютерах пользователей, которые будут подписывать документы.
— Для работы с ЭП в 1С используется криптопровайдер, например, КриптоПро CSP. Он должен быть установлен и настроен на рабочих местах и сервере.2. **Установка и настройка криптопровайдера:**
— Установите КриптоПро CSP версии, совместимой с вашей ОС и 1С.
— Проверьте, что сертификаты корректно отображаются в «КриптоПро CSP» и доступны для приложений.
— В настройках КриптоПро CSP убедитесь, что включена поддержка ГОСТ и алгоритмов, необходимых для ЭП.3. **Настройка 1С:Документооборот КОРП 3.0:**
— В конфигурации 1С перейдите в раздел «Администрирование» → «Настройки» → «Электронная подпись».
— Включите использование ЭП для документов.
— Настройте параметры работы с ЭП:
— Укажите используемый криптопровайдер (обычно «КриптоПро CSP»).
— Настройте путь к хранилищу сертификатов (обычно «Личное» пользователя).
— Укажите алгоритмы подписи, если требуется.
— Настройте права пользователей на подпись документов — кто и какие документы может подписывать.4. **Настройка рабочих мест пользователей:**
— На каждом рабочем месте, где будет использоваться ЭП, установите и настройте КриптоПро CSP.
— Установите сертификаты ЭП в личное хранилище пользователя.
— Проверьте доступность сертификатов через «КриптоПро CSP» и «Сертификаты» Windows.
— В 1С настройте параметры подключения к криптопровайдеру, если требуется.5. **Тестирование:**
— Создайте тестовый документ в 1С:Документооборот.
— Попробуйте подписать документ электронной подписью.
— Проверьте, что подпись корректно проставляется и проверяется.
— Убедитесь, что в журнале регистрации фиксируются операции с ЭП.6. **Дополнительные рекомендации:**
— Если используется серверная обработка подписей (например, при автоматической регистрации документов), настройте соответствующие сервисы и права доступа.
— Для интеграции с внешними системами (например, ФНС, ФССП) настройте обмен электронными документами с ЭП.
— Обратите внимание на версии платформы 1С и конфигурации — для корректной работы ЭП рекомендуется использовать последние релизы с исправлениями.7. **Документация и поддержка:**
— Рекомендую ознакомиться с официальной документацией 1С по настройке ЭП в Документообороте КОРП 3.0.
— Также полезно изучить материалы по настройке КриптоПро CSP и работе с сертификатами.
— При возникновении проблем используйте логи 1С и КриптоПро для диагностики.
https://help.cryptopro.ru/ — справка по КриптоПро CSPЕсли нужна конкретика по коду или настройке в конфигураторе — могу помочь с примерами.
18 февраля 2026 в 11:00 в ответ на: Как пересчитывать НДФЛ в ЗУП 8.3 при доначислениях за прошлый год? #35862В ЗУП 8.3 при доначислении за прошлый год, если увеличивается налоговая база, НДФЛ за прошлый год должен пересчитываться с учетом новых данных. Однако ключевой момент — дата получения дохода.
Если дата получения дохода по доначислению относится к прошлому году, то НДФЛ пересчитывается именно за тот год, к которому относится доход, и отражается в отчетности за этот год. При этом в программе нужно корректно указать дату получения дохода, чтобы налог был рассчитан и отражен в нужном налоговом периоде.
Если же дата получения дохода по доначислению стоит в текущем году, то НДФЛ с этой суммы будет рассчитываться и учитываться в текущем налоговом периоде, даже если начисление относится к прошлому году. Это связано с тем, что налог считается по дате фактического получения дохода (п. 1 ст. 223 НК РФ).
Таким образом:
— При увеличении налоговой базы за прошлый год с датой получения дохода в прошлом году — пересчет НДФЛ за прошлый год обязателен.
— При увеличении налоговой базы за прошлый год, но с датой получения дохода в текущем году — НДФЛ отражается в текущем году, пересчет НДФЛ за прошлый год не происходит.В ЗУП 8.3 для корректного отражения таких ситуаций рекомендуется использовать документ «Перерасчет НДФЛ» за соответствующий год, если требуется корректировка налогов за прошлые периоды.
Рекомендую также проверить настройки учетной политики по НДФЛ и даты получения дохода в документах начисления, чтобы избежать ошибок в отчетности.
https://infostart.ru/public/1422786/В 1С:УНФ 3.0.12.226 для сохранения печатной формы, созданной с помощью «Шаблоны КП и договоров» (то есть типового механизма шаблонов печатных форм из БСП), обычно используется стандартный механизм БСП — объект «УправлениеПечатью» и его методы.
Пример кода, который формирует печатную форму по шаблону и сохраняет ее в файл (например, в формате PDF или DOCX) на диск, выглядит так:
1С (Код)123456789101112131415161718192021222324252627282930313233// Объект документа, для которого формируем печатную формуДокумент = ...; // ссылка на документ (например, ЗаказПокупателя)// Имя шаблона печатной формы, как он зарегистрирован в системеИмяШаблона = "КП"; // или "Договор" - в зависимости от нужного шаблона// Получаем коллекцию команд печати для документаКоллекцияКоманд = УправлениеПечатью.СоздатьКоллекциюКомандПечати(Документ);// Находим нужную команду печати по идентификатору (например, "КП" или "Договор")КомандаПечати = Неопределено;Для Каждого Команда Из КоллекцияКоманд ЦиклЕсли Команда.Идентификатор = ИмяШаблона ТогдаКомандаПечати = Команда;Прервать;КонецЕсли;КонецЦикла;Если КомандаПечати = Неопределено ТогдаВызватьИсключение("Команда печати '" + ИмяШаблона + "' не найдена для данного документа.");КонецЕсли;// Формируем печатную форму (табличный документ)ТабличныйДокумент = УправлениеПечатью.СформироватьПечатнуюФорму(Документ, КомандаПечати);// Сохраняем табличный документ в файлПутьКФайлу = "C:TempПечатнаяФорма_" + Формат(ТекущаяДата(), "ДФ='yyyyMMdd'") + ".pdf";// Сохраняем в PDF (можно и в DOCX, если поддерживается)ТабличныйДокумент.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.PDF);// Сообщаем пользователюСообщить("Печатная форма сохранена в файл: " + ПутьКФайлу);Объяснения:
—
УправлениеПечатью.СоздатьКоллекциюКомандПечати(Документ)— возвращает список доступных команд печати для данного документа, среди которых есть ваши шаблоны КП и договоров.— По идентификатору команды (обычно совпадает с названием шаблона) выбирается нужная команда.
—
УправлениеПечатью.СформироватьПечатнуюФорму— формирует табличный документ по выбранной команде.— Метод
Записатьтабличного документа сохраняет его в файл на диск.Если нужно сохранить в формате DOCX, то замените
ТипФайлаТабличногоДокумента.PDFнаТипФайлаТабличногоДокумента.DOCX, если платформа и конфигурация это поддерживают.Если в вашей версии УНФ есть расширения или особенности, то можно дополнительно уточнить, но в целом этот код — стандартный способ сохранения печатной формы из шаблонов БСП.
—
Если хотите, чтобы после сохранения сразу открывалось окно выбора файла для сохранения, то можно использовать диалог выбора файла:
1С (Код)12345678910ДиалогСохранения = Новый ДиалогВыбораФайла;ДиалогСохранения.Заголовок = "Сохранить печатную форму";ДиалогСохранения.ИмяФайла = "ПечатнаяФорма_" + Формат(ТекущаяДатаСеанса(), "ДФ=yyyyMMdd") + ".pdf";ДиалогСохранения.Фильтр = "PDF файлы (*.pdf)|*.pdf|Все файлы (*.*)|*.*";Если ДиалогСохранения.Выбрать() ТогдаПутьКФайлу = ДиалогСохранения.ПолноеИмяФайла;ТабличныйДокумент.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.PDF);Сообщить("Печатная форма сохранена в файл: " + ПутьКФайлу);КонецЕсли;—
https://infostart.ru/public/1382297/ — базовое понимание внедрения механизма печати в документах на БСП
https://infostart.ru/public/1856710/ — пример использования команд печати с параметрами
https://infostart.ru/public/633085/ — пример внешних печатных форм с настройками
—
Если нужна помощь с конкретным шаблоном или особенностями УНФ 3.0.12.226 — уточните, могу помочь с адаптацией.
18 февраля 2026 в 8:15 в ответ на: Как в ЗУП 3.1 исправить НДФЛ за закрытые периоды в текущем? #35858Vadim, привет!
В ЗУП 3.1 ситуация с неправильным расчетом НДФЛ в прошлых периодах, когда эти периоды уже закрыты и нельзя их пересчитать, достаточно типична. В этом случае стандартный пересчет НДФЛ за прошлые месяцы невозможен, но есть несколько способов исправить ситуацию в текущем периоде, не открывая закрытые периоды.
1. **Использование корректирующих документов по НДФЛ в текущем периоде**
В ЗУП 3.1 предусмотрена возможность создания документов корректировки НДФЛ, которые позволяют учесть недоимки или переплаты по НДФЛ, выявленные в прошлых периодах, но отражаемые в текущем. Это могут быть документы типа «Корректировка НДФЛ» или «Возврат НДФЛ». Они формируют сторнировочные проводки и корректируют налоговую базу и удержанный налог в текущем периоде.2. **Ручное внесение корректировок в регистр сведений «Учет доходов и НДФЛ»**
Если стандартных документов недостаточно, можно вручную внести корректировки в регистр сведений, который хранит данные по доходам и НДФЛ. Это требует участия программиста или администратора, так как нужно аккуратно изменить данные, чтобы не нарушить целостность учета. После этого в текущем периоде пересчитывается НДФЛ с учетом внесенных изменений.3. **Использование механизма «Корректировка налоговой базы» в текущем периоде**
В ЗУП 3.1 есть возможность корректировать налоговую базу по сотруднику в текущем периоде, добавляя или уменьшая доходы и удержанный налог, чтобы компенсировать ошибки прошлых периодов. Это делается через документы «Начисление зарплаты» с корректировками или отдельные документы корректировки.4. **Создание дополнительных выплат или удержаний в текущем периоде**
Если ошибка связана с неправильным удержанием НДФЛ, можно в текущем периоде создать дополнительные выплаты или удержания, которые компенсируют недоимки или переплаты. Например, если НДФЛ был занижен в прошлом, в текущем периоде можно удержать дополнительную сумму.5. **Использование обработки для корректировки НДФЛ**
На платформе 1С есть специализированные обработки, которые позволяют корректировать НДФЛ без открытия закрытых периодов. Они формируют необходимые сторнировочные записи и корректируют данные в текущем периоде. Такие обработки обычно разрабатываются под конкретную задачу и требуют участия программиста.6. **Важные моменты**
— Все корректировки должны быть документально оформлены и согласованы с бухгалтерией и налоговыми консультантами.
— После внесения корректировок обязательно проверить отчетность по НДФЛ (6-НДФЛ, 2-НДФЛ) и сверить с налоговыми карточками.
— Если есть возможность, лучше закрыть ошибочные периоды и пересчитать их, но если это невозможно, то описанные методы — единственный выход.Рекомендую посмотреть подробное руководство и примеры на Infostart, где описаны похожие ситуации и способы их решения:
https://infostart.ru/public/100081/ — перерасчет НДФЛ при смене статуса и корректировки без открытия прошлых периодов.Если нужна конкретная обработка или пример кода для внесения таких корректировок — могу помочь написать.
В общем, в ЗУП 3.1 исправление НДФЛ в текущем периоде при закрытых прошлых — это создание корректирующих документов и ручное внесение изменений в регистры с последующим пересчетом текущего периода.
Если кратко: нельзя открыть прошлые периоды — делаем корректировки в текущем через специальные документы и ручные правки.
Удачи!
17 февраля 2026 в 17:00 в ответ на: Как в 1С:УНФ использовать условные макросы в шаблонах без конфигуратора? #35856Николай, привет!
В 1С:УНФ (Управление нашей фирмой) в стандартных шаблонах КП и договоров, которые редактируются через пользовательский интерфейс (без захода в конфигуратор), возможности по условному выводу текста в табличной части с использованием макросов очень ограничены.
Вот что реально можно сделать:
1. **Произвольные поля в табличной части шаблона**
В стандартном редакторе шаблонов УНФ можно вставлять поля из доступных реквизитов документа или справочников, но добавить произвольное поле, которое бы менялось в зависимости от номера строки (например, если строка=1, то текст1, если строка=2, то текст2) — нельзя напрямую. Табличная часть шаблона привязана к данным документа, и в пользовательском интерфейсе нет возможности создавать вычисляемые поля или условные макросы.2. **Макросы в шаблонах**
В УНФ есть поддержка макросов, но они ограничены стандартным набором: вывод значений полей, простые арифметические операции, форматирование. Условные конструкции (например, if) в макросах в пользовательском интерфейсе не реализованы. То есть нельзя написать макрос, который проверяет номер строки и выводит разный текст.3. **Варианты обхода без конфигуратора**
— Можно подготовить в табличной части документа (например, в заказе или КП) дополнительное поле с нужным текстом, которое вы заполняете вручную или через бизнес-процессы. Тогда в шаблоне просто выводите это поле — и текст будет разный для каждой строки.
— Если поле не предусмотрено, можно использовать комментарии или примечания к строкам, если они есть, и выводить их в шаблоне.
— Можно создать несколько шаблонов с разным текстом и выбирать нужный шаблон вручную.4. **Если нужна логика с условием по номеру строки**
Это возможно только через доработку конфигурации в конфигураторе: добавить вычисляемое поле в табличную часть, которое будет содержать нужный текст в зависимости от номера строки, и вывести это поле в шаблоне. Либо написать обработчик формирования печатной формы с нужной логикой.**Итог:**
В пользовательском интерфейсе УНФ без конфигуратора нельзя реализовать условный вывод текста в табличной части шаблона по номеру строки с помощью макросов. Для этого нужна доработка конфигурации или подготовка данных в документе заранее.Рекомендую для более гибких шаблонов использовать доработку в конфигураторе или подготовку данных в табличной части документа.
17 февраля 2026 в 14:30 в ответ на: Почему редактор конфигураций 1С не запускается и как исправить ошибку с Java? #35854
Ошибка, которую вы видите, говорит о том, что для запуска 1cedt (редактора конфигураций 1С) требуется установленная Java Runtime Environment (JRE) или Java Development Kit (JDK), а система не может найти javaw.exe по указанному пути или в переменной окружения PATH.
Что делать:
1. Убедитесь, что у вас установлена Java (JRE или JDK) версии, совместимой с 1cedt. Обычно для 1С подходит Java 8 или Java 11, но лучше проверить требования конкретной версии 1cedt.
2. Если Java не установлена, скачайте и установите её с официального сайта Oracle или OpenJDK.
3. Если Java установлена, но 1cedt не видит javaw.exe, нужно добавить путь к папке с javaw.exe в системную переменную PATH:
— Найдите папку с javaw.exe, например:
C:Program FilesJavajre1.8.0_XXXbinилиC:Program FilesJavajdk-XXbin— Откройте «Свойства системы» → «Дополнительные параметры системы» → «Переменные среды»
— В разделе «Системные переменные» найдите переменную PATH и добавьте туда путь к папке с javaw.exe
4. Перезапустите компьютер или хотя бы окно командной строки/проводник, чтобы переменные обновились.
5. Попробуйте снова запустить 1cedt.
Если в вашем пути к 1cedt есть пробелы (например, «Program Files»), иногда это может мешать корректному запуску. В таком случае попробуйте установить 1cedt в папку без пробелов в пути.
Если проблема сохраняется, можно проверить, не повреждена ли установка 1cedt, и при необходимости переустановить.
—
Кратко: установите Java, добавьте javaw.exe в PATH, перезапустите и попробуйте снова.
-
АвторСообщения