Имя: Пароль:
1C
 
Обработка по Созданию ОперацииБух в БП 3.0
0 Lily_1C
 
08.02.19
11:58
Добрый день!
Подскажите в ошибке в коде обработки. Хочу сформировать ОперациюБух с проводками Дт91.02 Кт 10.01(данные берутся из запроса). У меня сейчас формируется пустой документ. Что нужно поправить в коде? Подскажите, пожалуйста!

Дата='20181231235959';
    Запрос = Новый Запрос;
    Запрос.Текст =
         "ВЫБРАТЬ
         |    ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
         |    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
         |    ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Склад,
         |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК Сумма,
         |    ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток КАК Количество
         |ИЗ
         |    РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&Дата1, &Дата2, , , Счет.Родитель = &Счет, , ) КАК ХозрасчетныйОстаткиИОбороты
         |ГДЕ
         |    ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток < &Сумма
         |    И ХозрасчетныйОстаткиИОбороты.Субконто2 = &Склад
         |
         |УПОРЯДОЧИТЬ ПО
         |    Склад
         |АВТОУПОРЯДОЧИВАНИЕ";
    Запрос.УстановитьПараметр("Дата1", Дата);
    Запрос.УстановитьПараметр("Дата2", КонецДня(Дата));
    Запрос.УстановитьПараметр("Склад", Справочники.Склады.НайтиПоКоду("00-000014"));
    Запрос.УстановитьПараметр("Сумма", "50");
    Запрос.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.Материалы);


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

    БухСпр.Дата = Дата;
    БухСпр.Организация=Справочники.Организации.НайтиПоКоду("00-000001");
    БухСпр.Ответственный=Пользователи.ТекущийПользователь();
    
    БухСпрСсылка = БухСпр.Ссылка;
    РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    РегХозрасчетный.Отбор.Регистратор.Значение = БухСпрСсылка;

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

        РегЗапись.КоличествоКт=Выборка.Количество;
        РегЗапись.Сумма=Выборка.Сумма;

    КонецЦикла;

    БухСпр.Записать(РежимЗаписиДокумента.Запись);
1 Dmitry1c
 
08.02.19
11:59
НаборЗаписей записать забыл

а вообще надо сначала записать документ, а потом набор