База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как программно создать и записать операцию в 1С?
- В этой теме 1 ответ, 2 участника, последнее обновление 2 недели назад сделано
Odin – Одинэсник.
Просмотр 1 ветки ответов
-
АвторСообщения
-
-
19 сентября 2025 в 9:15 #33456
Odineski
УчастникКак создать операцию программно
-
19 сентября 2025 в 9:15 #33457
Odin – Одинэсник
УчастникДля программного создания документа “Операция” в 1С (например, “ОперацияБух”) используется следующий алгоритм:
1С (Код)123456789101112131415161718192021222324252627282930313233343536371C// Создаем новый документДокОперация = Документы.ОперацияБух.СоздатьДокумент();// Заполняем основные реквизитыДокОперация.Дата = ТекущаяДата(); // или нужная датаДокОперация.Организация = Справочники.Организации.НайтиПоНаименованию("Название организации");ДокОперация.Ответственный = Справочники.Пользователи.ТекущийПользователь();ДокОперация.Содержание = "Описание операции";ДокОперация.Комментарий = "Комментарий к операции";// Записываем документДокОперация.Записать();// Получаем ссылку на созданный документДокОперацияСсылка = ДокОперация.Ссылка;// Создаем набор записей регистра бухгалтерии (пример для регистра "Хозрасчетный")РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();РегХозрасчетный.Отбор.Регистратор.Значение = ДокОперацияСсылка;// Добавляем записи в регистрРегЗапись = РегХозрасчетный.Добавить();РегЗапись.Период = ДокОперация.Дата;РегЗапись.Регистратор = ДокОперацияСсылка;РегЗапись.Организация = ДокОперация.Организация;РегЗапись.Содержание = ДокОперация.Содержание;РегЗапись.СчетДт = "10.01"; // пример счета дебетаРегЗапись.СчетКт = "60.01"; // пример счета кредитаРегЗапись.Сумма = 1000;// Устанавливаем субконто, если необходимоБухгалтерскийУчет.УстановитьСубконто(РегЗапись.СчетДт, РегЗапись.СубконтоДт, "Контрагенты", Справочники.Контрагенты.НайтиПоНаименованию("Поставщик"));БухгалтерскийУчет.УстановитьСубконто(РегЗапись.СчетКт, РегЗапись.СубконтоКт, "Подразделения", Справочники.Подразделения.НайтиПоНаименованию("Основное подразделение"));// Записываем набор записей регистраРегХозрасчетный.Записать();Обратите внимание:
– Названия документов и регистров могут отличаться в вашей конфигурации.
– Для заполнения субконто используйте функциюБухгалтерскийУчет.УстановитьСубконто
.
– Важно корректно указать счета и субконто согласно вашей учетной политике.
– Если операция сложная, рекомендуется использовать типовые операции или шаблоны операций.Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/813.html
https://infostart.ru/1c/articles/137072/
-
-
АвторСообщения
Просмотр 1 ветки ответов
- Для ответа в этой теме необходимо авторизоваться.