Odin | База знаний 1С

Как программно созд...
 

Как программно создать и записать операцию в 1С?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

Как создать операцию программно



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Для программного создания документа "Операция" в 1С (например, "ОперацияБух") используется следующий алгоритм:

1C
// Создаем новый документ
ДокОперация = Документы.ОперацияБух.СоздатьДокумент();

// Заполняем основные реквизиты
ДокОперация.Дата = ТекущаяДата(); // или нужная дата
ДокОперация.Организация = Справочники.Организации.НайтиПоНаименованию("Название организации");
ДокОперация.Ответственный = Справочники.Пользователи.ТекущийПользователь();
ДокОперация.Содержание = "Описание операции";
ДокОперация.Комментарий = "Комментарий к операции";

// Записываем документ
ДокОперация.Записать();

// Получаем ссылку на созданный документ
ДокОперацияСсылка = ДокОперация.Ссылка;

// Создаем набор записей регистра бухгалтерии (пример для регистра "Хозрасчетный")
РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
РегХозрасчетный.Отбор.Регистратор.Значение = ДокОперацияСсылка;

// Добавляем записи в регистр
РегЗапись = РегХозрасчетный.Добавить();
РегЗапись.Период = ДокОперация.Дата;
РегЗапись.Регистратор = ДокОперацияСсылка;
РегЗапись.Организация = ДокОперация.Организация;
РегЗапись.Содержание = ДокОперация.Содержание;
РегЗапись.СчетДт = "10.01"; // пример счета дебета
РегЗапись.СчетКт = "60.01"; // пример счета кредита
РегЗапись.Сумма = 1000;

// Устанавливаем субконто, если необходимо
БухгалтерскийУчет.УстановитьСубконто(РегЗапись.СчетДт, РегЗапись.СубконтоДт, "Контрагенты", Справочники.Контрагенты.НайтиПоНаименованию("Поставщик"));
БухгалтерскийУчет.УстановитьСубконто(РегЗапись.СчетКт, РегЗапись.СубконтоКт, "Подразделения", Справочники.Подразделения.НайтиПоНаименованию("Основное подразделение"));

// Записываем набор записей регистра
РегХозрасчетный.Записать();

Обратите внимание:

- Названия документов и регистров могут отличаться в вашей конфигурации.
- Для заполнения субконто используйте функцию `БухгалтерскийУчет.УстановитьСубконто`.
- Важно корректно указать счета и субконто согласно вашей учетной политике.
- Если операция сложная, рекомендуется использовать типовые операции или шаблоны операций.

Рекомендую посмотреть здесь:
https://helpf.pro/faq/view/813.html
https://infostart.ru/1c/articles/137072/



   
ОтветитьЦитата