Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
14 июн 2024, 03:10

1с Бухгалтерия 8,3 / Банковские выписки. поступление на расчетный счет..

Автор Алексей Соболев, 21 мар 2024, 14:32

0 Пользователей и 1 гость просматривают эту тему.

Алексей Соболев

День добрый.. помогите..

в общем такая ситуация.. грузим с сбербанка платежки и если не находим контрагента, то деньги кидаем на условный "контрагент население"...

так вот пишу внешнюю обработку которая обходит документы без контрагента и присваивает им "контрагента население" и договор.. с контрагентом проблем нет. а договор не тянет...

что может быть ?


   
Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ПоступлениеНаРасчетныйСчет.Ссылка КАК Ссылка
        |ИЗ
        |    Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет
        |ГДЕ
        |    ПоступлениеНаРасчетныйСчет.Комментарий ПОДОБНО &Комент
        |    И ПоступлениеНаРасчетныйСчет.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
        |    И ПоступлениеНаРасчетныйСчет.ВидОперации = &ВидОперации";
   
    Запрос.УстановитьПараметр("Комент", "Загружен из Клиент-Банка");
    Запрос.УстановитьПараметр("ДатаНачала", Объект.Период.ДатаНачала);
    Запрос.УстановитьПараметр("ДатаОкончания", Объект.Период.ДатаОкончания);
    Запрос.УстановитьПараметр("ВидОперации", Перечисления.ВидыОперацийПоступлениеДенежныхСредств.ОплатаПокупателя);
   
    РезультатЗапроса = Запрос.Выполнить().Выбрать();
   
       
    Пока РезультатЗапроса.Следующий() Цикл
       
         Докк  = РезультатЗапроса.Ссылка; 
         Док = докк.ПолучитьОбъект();

    Если не ЗначениеЗаполнено(Док.Контрагент) тогда 
             
         Док.Контрагент = Справочники.Контрагенты.НайтиПоКоду("00-000026");         
         Док.Записать();
         
         Док.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоКоду("00-000002");
         
         Док.Комментарий = "Загружен из Клиент-Банка/Население";
             
                 
        Док.Записать();
   
    КонецЕсли;
    КонецЦикла; 
 



Сильно не пинайте опыта еще с гулькин нос......

LexaK

Алексей Соболев, как вариант
Нет такого договора, (или его владелец не контрагент выше)
запустите с отладкой, сразу станет понятно почему не работает (за одно и отладчик освоите)

(и не надо два раза подряд записыть документ Док.Записать() - у вас два раза)
если помогло нажмите: Спасибо!

Алексей Соболев

Отладчиком я пользуюсь... нашел.. оказывается этот реквизит лежал в табличной части документа.... нахрена тогда еще один реквизит в самой форме договор контрагента я не понял...

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск