Имя: Пароль:
1C
 
ДиректБанк Альфа - Включить автовыписку
0 serg999
 
13.05.26
18:49
Добрый день! Может кто сталкивался. Настраиваю Direct-Bank с Альфой. В общем при выполнении задания "Включить автоматическое получению выписок" происходит аварийное завершение операции с ошибкой проверки XML-схемы. Причем "получить настройки" или "проверить" обмен банком проходит абсолютно успешно, авторизация на сервере банка выполняется. Настраиваю на 1С:ERP 2.5.22.180

Ругается на:
Выполнение операции: Формирование ЭД.
Ошибка при вызове метода контекста (Проверить)
{ОбщийМодуль.ОбменСБанкамиСлужебный.Модуль(5118)}:Packet.Проверить();
[ОшибкаВоВремяВыполненияВстроенногоЯзыка]
по причине:
Ошибка проверки данных XDTO:
Структура объекта не соответствует типу: {1c.ru}Packet
Проверка свойства 'Document':
форма: Элемент
имя: {1c.ru}Document
тип: {1c.ru}DocumentType
Отсутствует обязательное свойство


Проверил в XMLSchema directbank  действительно идет проверка на заполнение,  но при этом в документе "Пакет прямого обмена с баком" в ТЧ, где сообщение формируется для ветки "Document" пусто.

ОбменСБанкамиСлужебный.СоздатьЭДПакетаAsync
  
..
    Попытка
    ТекстОшибки = "";

    Packet = ОбъектТипаCML(Фабрика, "Packet", ПространствоИмен);
    
    ЗаполнитьОтправителяИПолучателя(Packet, Фабрика, ПространствоИмен,
      РеквизитыНастройкиОбмена.ИдентификаторОрганизации, РеквизитыНастройкиОбмена.Организация,
      РеквизитыНастройкиОбмена.Банк, ТекстОшибки);


    ////////////////////////////
    // ВОТ ТУТ ПРОПУСК   
    Для каждого Строка Из Конверт.Сообщения Цикл
      
      Если ЗначениеЗаполнено(Строка.Сообщение) Тогда
      
        ДобавитьДокументВПакетXDTO(
          Packet, Фабрика, Строка, ПространствоИмен, РеквизитыНастройкиОбмена, СвойстваСертификатов, ТекстОшибки);
          
      КонецЕсли;
      
    КонецЦикла;

    ЗаполнитьСвойствоXDTO(Packet, "id", Строка(Конверт.Идентификатор), Истина, ТекстОшибки);
    ЗаполнитьСвойствоXDTO(Packet, "formatVersion", РеквизитыНастройкиОбмена.ВерсияФормата, Истина, ТекстОшибки);
    ЗаполнитьСвойствоXDTO(Packet, "creationDate", ТекущаяДатаСеанса(), Истина, ТекстОшибки);
    ВерсияПрограммы = ОбменСБанкамиСлужебныйПовтИсп.ВерсияПрограммыКлиентаДляБанка();
    ЗаполнитьСвойствоXDTO(Packet, "userAgent", ВерсияПрограммы, , ТекстОшибки);

    ДобавитьФродПараметрыВПакет(
      Packet, Фабрика, Фрод, ПространствоИмен, РеквизитыНастройкиОбмена.ВерсияФормата, ТекстОшибки);
    
    Packet.Проверить();
2 + 2 = 3.9999999999999999999999999999999...