Имя: Пароль:
1C
 
Запись не верна! Поле "Временные разницы" должно быть пустым!
0 aptomilov
 
17.03.21
15:14
БП 2
Пытаюсь программно создать документ Операция
и получаю такую вот ошибку


Код простой

    Для каждого Стр Из ДанныеЛиста Цикл
            
        Проводка = ДокОпер.Движения.Хозрасчетный.Добавить();
        Проводка.СчетДт          = Стр.СчетДТ;
        Если Стр.СубконтоДТ1 <> Неопределено Тогда
               Зн = Стр.СубконтоДТ1;
            Проводка.СубконтоДт[Проводка.СчетДТ.ВидыСубконто[0].ВидСубконто] = Зн;
            Выполнить("СубконтоДт1" + " = Зн;");
        КонецЕсли;
        Если Стр.СубконтоДТ2 <> Неопределено Тогда
            Зн = Стр.СубконтоДТ2;
            Проводка.СубконтоДт[Проводка.СчетДТ.ВидыСубконто[1].ВидСубконто] = Зн;
            Выполнить("СубконтоДт2" + " = Зн;");
        Иначе
            
        КонецЕсли;
        Если Стр.СубконтоДТ3 <> Неопределено Тогда
            Зн = Стр.СубконтоДТ3;
            Проводка.СубконтоДт[Проводка.СчетДТ.ВидыСубконто[2].ВидСубконто] = Зн;
            Выполнить("СубконтоДт3" + " = Зн;");
        КонецЕсли;

        Проводка.СчетКт          = Стр.СчетКТ;
        //Зн = Стр.СубконтоКТ1;
        //Проводка.СубконтоКт[Проводка.СчетКТ.ВидыСубконто[0].ВидСубконто] = Зн;
        Выполнить("СубконтоКт1" + " = Зн;");
        Если Стр.СубконтоКТ2 <> Неопределено Тогда
            Зн = Стр.СубконтоКТ2;
            Проводка.СубконтоКт[Проводка.СчетКТ.ВидыСубконто[1].ВидСубконто] = Зн;
            Выполнить("СубконтоКт2" + " = Зн;");
        КонецЕсли;
        Если Стр.СубконтоКТ3 <> Неопределено Тогда
            Зн = Стр.СубконтоКТ3;
            Проводка.СубконтоКт[Проводка.СчетКТ.ВидыСубконто[2].ВидСубконто] = Зн;
            Выполнить("СубконтоКт3" + " = Зн;");
        КонецЕсли;

        Проводка.ВалютаДт            = "";
        Проводка.ВалютаКт            = "";
        Проводка.ВалютнаяСуммаДт    = "";
        Проводка.ВалютнаяСуммаКт    = "";
        Проводка.КоличествоДт        = Стр.КоличествоДт;
        Проводка.КоличествоКт        = Стр.КоличествоКт;
        Проводка.Организация        = ОрганизацияПоУмолчанию;
        Проводка.Содержание            = Стр.Наименование;
        Проводка.ПодразделениеДт    = Стр.ПодразделениеДт;
        Проводка.ПодразделениеКт    = Стр.ПодразделениеКт;
        Проводка.Сумма                = Стр.Сумма;
        Проводка.Период                = ДатаОп;
        Проводка.СуммаНУДт            = Стр.СуммаНУДт;
        Проводка.СуммаВРДт            = Стр.Сумма - Стр.СуммаНУДт - Стр.СуммаПРДт;
        Проводка.СуммаПРДт            = Стр.СуммаПРДт;
        Проводка.СуммаНУКт            = Стр.СуммаНУКт;
        Проводка.СуммаВРКт            = Стр.Сумма - Стр.СуммаНУКт - Стр.СуммаПРКт;
        Проводка.СуммаПРКт            = Стр.СуммаПРКт;
        
    //Стр = Стр+1;
    КонецЦикла;
    ДокОпер.Записать();
    Операция = ДокОпер.Ссылка;
1 aptomilov
 
17.03.21
15:24
про какие временные разницы оно поет я не пойму
2 Йохохо
 
17.03.21
15:28
(1) взял с Гения предоплату то?
3 aptomilov
 
17.03.21
15:34
где то нашел кусок кода
вот пытаюсь его заставить работать
4 Масянька
 
17.03.21
15:35
(1) Вот про эти:
        Проводка.СуммаВРДт            = Стр.Сумма - Стр.СуммаНУДт - Стр.СуммаПРДт;
        Проводка.СуммаПРДт            = Стр.СуммаПРДт;
        Проводка.СуммаВРКт            = Стр.Сумма - Стр.СуммаНУКт - Стр.СуммаПРКт;
        Проводка.СуммаПРКт            = Стр.СуммаПРКт;
5 dka80
 
17.03.21
15:36
Какая проводка должна быть?
6 aptomilov
 
17.03.21
15:37
Проводка дт 19.03
кт 000

остатки закидываю

(4)  ТОЧНО БЛАГОДАРЮ