Имя: Пароль:
1C
1С v8
1с бухгалтерия 3.0 оплата платежной картой
0 Александр111
 
17.09.22
11:39
Пытаюсь написать загрузку оплат из текст файла для 1с бух 3.0
Должен создаваться документ оплата платежной картой.

при исполнении выдает ошибку
Ошибка при вызове метода контекста (Записать)
{ВнешняяОбработка.ЗагрузкаДокументов.Форма.Форма1.Форма(997)}:                ПоступлениеБезнал.Записать(РежимЗаписиДокумента.Проведение);
{ВнешняяОбработка.ЗагрузкаДокументов.Форма.Форма1.Форма(907)}:    обработатьCSV1(ЗагружаемыйФайл);
по причине:
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{ОбщийМодуль.УчетВзаиморасчетов.Модуль(8735)}: Преобразование значения к типу Булево не может быть выполнено
                ПоступлениеБезнал.Записать(РежимЗаписиДокумента.Проведение);

по причине:
Ошибка при выполнении обработчика - 'ОбработкаПроведения'
по причине:
{ОбщийМодуль.УчетВзаиморасчетов.Модуль(8735)}: Преобразование значения к типу Булево не может быть выполнено

Преобразование значения к типу Булево не может быть выполнено
{ОбщийМодуль.УчетВзаиморасчетов.Модуль(8735)}:    Если Параметры.РасчетыВУсловныхЕдиницах Тогда
{ОбщийМодуль.УчетВзаиморасчетов.Модуль(5107)}:        СчетаРасчетов = СчетаРасчетовПоОтгрузке(СтрокаПлатежа);
{ОбщийМодуль.УчетВзаиморасчетов.Модуль(1812)}:    ОстаткиЗадолженности = ПолучитьОстаткиЗадолженности(Параметры.РасшифровкаПлатежа, Реквизиты, Отказ);
{Документ.ОплатаПлатежнойКартой.МодульОбъекта(370)}:    ТаблицаВзаиморасчеты = УчетВзаиморасчетов.ПодготовитьТаблицуВзаиморасчетовПогашениеЗадолженности(
{ВнешняяОбработка.ЗагрузкаДокументов.Форма.Форма1.Форма(997)}:                ПоступлениеБезнал.Записать(РежимЗаписиДокумента.Проведение);



Листинг:
Организация= Справочники.Организации.НайтиПоКоду("00-000001");
    Счет6202=Планысчетов.Хозрасчетный.НайтиПоКоду("62.02");
    Счет6201=Планысчетов.Хозрасчетный.НайтиПоКоду("62.01");
    ВалютаДокумента=справочники.Валюты.НайтиПоНаименованию("Руб");

                                ПоступлениеБезнал=Документы.ОплатаПлатежнойКартой.СоздатьДокумент();
                                ПоступлениеБезнал.ВидОплаты=Справочники.ВидыОплатОрганизаций.НайтиПоКоду("000000015");
                ПоступлениеБезнал.ДоговорКонтрагента=Договор;
                ПоступлениеБезнал.Контрагент=Клиент;
                ПоступлениеБезнал.Дата =Дата(ДатаДок)+1;  
                
                ПоступлениеБезнал.Организация=Организация;
                ПоступлениеБезнал.ВалютаДокумента= ВалютаДокумента;
                ЗаполнениеДокументов.Заполнить(ПоступлениеБезнал);
                Расш=ПоступлениеБезнал.РасшифровкаПлатежа.Добавить();
                Расш.ДоговорКонтрагента=дОГОВОР;
                Расш.СтавкаНДС=Перечисления.СтавкиНДС.БезНДС;
                Расш.СуммаПлатежа=Число(Стр.Сумма);
                Расш.СчетУчетаРасчетовПоАвансам=Счет6202;
                Расш.СчетУчетаРасчетовСКонтрагентом=Счет6201;
                Расш.СпособПогашенияЗадолженности=Перечисления.СпособыПогашенияЗадолженности.Автоматически;
                Расш.СуммаВзаиморасчетов=Число(Стр.Сумма);
                ПоступлениеБезнал.ВидОперации=Перечисления.ВидыОперацийОплатаПлатежнойКартой.ОплатаПокупателя;
                ПоступлениеБезнал.ДоговорЭквайринга=ПоступлениеБезнал.ВидОплаты.ДоговорКонтрагента;  
                ПоступлениеБезнал.Эквайер=ПоступлениеБезнал.ВидОплаты.Контрагент;
                ПоступлениеБезнал.СуммаДокумента=Число(Стр.Сумма);
                ПоступлениеБезнал.Записать(РежимЗаписиДокумента.Проведение);

Что нужно дописать?
1 Михаил Козлов
 
17.09.22
13:44
Можно попробовать просто записать, а потом сравнить реквизиты программно созданного документа и введенного вручную.
2 Kassern
 
17.09.22
13:46
(0) "Параметры.РасчетыВУсловныхЕдиницах" - скорее всего тут либо пусто, либо неопределено, а должно быть Истина, либо Ложь
3 Фрэнки
 
17.09.22
13:54
отладчиком на место ошибки встать и посмотреть по типу Параметры. Заодно по стеку посмотреть в каком именно месте в них нужное значение устанавливается.
2 + 2 = 3.9999999999999999999999999999999...