Заполнить обработкой документ БП "Операции введенные вручную
По теме из базы знаний
- Обработка заполнения ТЧ по регистрам сведений
- Заполнение бухгалтерской операции остатками по счету. Автоматические проводки закрытия счетов
- Запрет доступа к данным по зарплате для БП 3.0 и КА 2.5
- Списание по счету Дт для 1С: Бухгалтерии 3.0
- Исправление ошибок по НДФЛ и взаиморасчетам с сотрудниками в 1С:Бухгалтерия 3.0
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Пример (кусок) рабочего кода создания на основания документа ("ДокИст") создается документ "ОперацияБух" и в нем формируются проводки:
//ДокИст - документ источник
//Создадим ОПЕРАЦИЮ (Документ)
Оп = Документы.ОперацияБух.СоздатьДокумент();
Оп.Дата = ДокИст.Дата;
Оп.Комментарий = "";
//ДанныеЗаполнения = НОВЫЙ СписокЗначений;
//ДанныеЗаполнения.Добавить("Ответственный");
//ЗаполнениеДокументов.Заполнить(Оп,ДанныеЗаполнения);
Оп.Организация = ДокИст.Организация;
//Запишем документ операции
Оп.Записать();
//Ссылка на наш документ операции
ОпСсылка = Оп.Ссылка;
//Создадим набор записей для проводок по созданному документу
РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
РегХозрасчетный.Отбор.Регистратор.Значение = ОпСсылка;
//Новая проводка
нп = РегХозрасчетный.Добавить();
нп.ВалютаДт = ДокИст.Валюта;
нп.СчетКт = ПланыСчетов.Хозрасчетный.ХХХХХ;
нп.СчетДт = ПланыСчетов.Хозрасчетный.НННННН;
нп.ВалютнаяСуммаДт = ДокИст.СуммаВалютная;
нп.Сумма = ДокИст.СуммаДокумента;
Если ЗначениеЗаполнено(ДокИст.Договор) Тогда
текКонтрагент = ДокИст.Договор.Владелец;
текДоговор= ДокИст.Договор;
БухгалтерскийУчет.УстановитьСубконто(нп.СчетДт, нп.СубконтоДт, "Контрагенты", текКонтрагент);
БухгалтерскийУчет.УстановитьСубконто(нп.СчетДт, нп.СубконтоДт, "Договоры", текДоговор);
БухгалтерскийУчет.УстановитьСубконто(нп.СчетКт, нп.СубконтоКт, "Контрагенты", текКонтрагент);
БухгалтерскийУчет.УстановитьСубконто(нп.СчетКт, нп.СубконтоКт, "Договоры", текДоговор);
КонецЕсли;
нп.НомерЖурнала = "";
нп.Организация = Оп.Организация;
нп.Период = Оп.Дата;
нп.Регистратор = ОпСсылка;
нп.Содержание = Оп.Комментарий;
//ЕЩЁ ПРОВОДКА
нп = РегХозрасчетный.Добавить();
///...
//ЗАПИШЕМ ВСЕ СОЗДАННЫЕ ПРОВОДКИ
РегХозрасчетный.Записать();
//Дозаполним документ
Оп.СпособЗаполнения = СокрЛП(ДокИст);
Оп.СуммаОперации = РегХозрасчетный.Итог("Сумма");
Оп.Содержание = Оп.Комментарий;
//Снова запишем документ (Операция)
Оп.Записать();
Сообщение = Новый СообщениеПользователю;
Сообщение.Текст = "Создана операция: "+СокрЛП(ОпСсылка);
Сообщение.УстановитьДанные(Оп); //Ссылка на объект ИБ
Сообщение.Сообщить();
Показать
В БП 3.0 форма документа позволяет заполнить его без записи:
&НаКлиенте
Процедура СоздатьОперацию(Команда)
ЗначенияЗаполнения = Новый Структура;
ЗначенияЗаполнения.Вставить("Хозрасчетный", Проводки);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("ЗначенияЗаполнения", ЗначенияЗаполнения);
ФормаДокумента = ОткрытьФорму("Документ.ОперацияБух.ФормаОбъекта", ПараметрыФормы, ЭтотОбъект);
ФормаДокумента.Модифицированность = Истина;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот