[РЕШЕНО] Счёт фактура внешняя

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Peroman, 4 фев 2016.

  1. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Всем доброго времени суток!
    Конфигурация: Управление торговлей, редакция 11.2 (11.2.2.106)

    С ИТС скачал, обработку "СчетФактураВыданный1137.EPF"

    При проверке модуля, сразу выскочила ошибка:
    Код:
    еЛица)
            ОбластьПодвала.Параметры.ФИОРуководителя = <<?>>ФизическиеЛица.ФамилияИнициалыФизЛица(ДанныеПечати.Руководитель); (Проверка: Сервер)
    {ВнешняяОбработка.СчетФактураВыданный1137.МодульОбъекта(600,52)}: Переменная не определена (ФизическиеЛица)
            ОбластьПодвала.Параметры.ФИОГлавногоБухгалтера = <<?>>ФизическиеЛица.ФамилияИнициалыФизЛица(ДанныеПечати.ГлавныйБухгалтер); (Проверка: Сервер)
    {ВнешняяОбработка.СчетФактураВыданный1137.МодульОбъекта(602,39)}: Переменная не определена (ФизическиеЛица)
            ОбластьПодвала.Параметры.ФИОПБОЮЛ = <<?>>ФизическиеЛица.ФамилияИнициалыФизЛица(ДанныеПечати.Руководитель); (Проверка: Сервер)
    
    Ну да бог с ним. Временно, на период отладки, закоментировал строки, потом при необходимости добавим, вытягивание данных (думаю из спр. ФизЛица), сейчас это просто не очень важно.
    Регистрируем нашу внешнюю счёт факту в "Дополнительные отчёты и обработки".
    Открываем документ "Возврат товаров поставщику" выбираем "нашу форму" и получаем:
    Код:
    ВнешняяОбработка.СчетФактураВыданный1137.МодульОбъекта(160)}: Метод объекта не обнаружен (ПолучитьДанныеДляПечатнойФормыСчетФактура)
                ДанныеДляПечати = Документы[СтруктураОбъектов.Ключ].ПолучитьДанныеДляПечатнойФормыСчетФактура(ПараметрыПечати, СтруктураОбъектов.Значение)
  2. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Как можно пройтись отладчиком, по внешним (зарегистрированным) обработкам?
  3. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Код:
    Документы[СтруктураОбъектов.Ключ]
    заменил на
    Код:
    Документы.СчетФактураВыданный
    В итоге теперь на другое ругается:
    Код:
    {Документ.СчетФактураВыданный.МодульМенеджера(3786)}: Ошибка при вызове метода контекста (Выполнить)
        Запрос.Выполнить();
    по причине:
    {(3, 1)}: Ожидается выражение "ВЫБРАТЬ"
    <<?>>ИНДЕКСИРОВАТЬ ПО
    Ну здесь хоть отладчиком пошукать можно. Будем посмотреть.
  4. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    И так, отладчик, дал следующий результат:
    1.В МасивОбъектов
    Код:
    ПолучитьДанныеДляПечатнойФормыСчетФактура(ПараметрыПечати, МассивОбъектов)
    Попадает мой документ, вроде бы то что нужно.Но!
    Результат запроса пустой:
    Вот листинг:
    Код:
        Запрос = Новый Запрос(
        "ВЫБРАТЬ РАЗЛИЧНЫЕ
        |    ТаблицаОснований.Ссылка                  КАК Ссылка,
        |    ТаблицаОснований.ДокументОснование       КАК ДокументОснование,
        |    ТаблицаОснований.Ссылка.Корректировочный КАК Корректировочный,
        |    ТаблицаОснований.Ссылка.Дата             КАК Дата
        |ПОМЕСТИТЬ СчетаФактурыОснования
        |ИЗ
        |    Документ.СчетФактураВыданный.ДокументыОснования КАК ТаблицаОснований
        |ГДЕ
        |    ТаблицаОснований.Ссылка В(&МассивОбъектов)
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ РАЗЛИЧНЫЕ
        |    СчетаФактурыОснования.ДокументОснование КАК ДокументОснование
        |ИЗ
        |    СчетаФактурыОснования КАК СчетаФактурыОснования");
       
        МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
        Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
       
        Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов);
        РезультатЗапроса  = Запрос.Выполнить();
       
        МассивОснований = РезультатЗапроса.Выгрузить().ВыгрузитьКолонку("ДокументОснование");
       
        ПоместитьВременнуюТаблицуДанныхОснований(МенеджерВременныхТаблиц, МассивОснований);
    
  5. Svb
    Online

    Svb Опытный в 1С Команда форума

    Регистрация:
    12 янв 2011
    Сообщения:
    980
    Симпатии:
    19
    Баллы:
    29
    Когда запускается обработка из "дополнительных", она сначала из ИБ помещается во временный файл, а затем открывается. Я когда надо такую шляпу отладить, делаю на форме обработки кнопку, в модуле функции кнопки пишу что-то типо А=3/0; Тогда при нажатии кнопки этой программа выдает критическую ошибку из которой можно перейти в конфигуратор и отладить дальше.
  6. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Я пошёл кривым методом :). Взял и там где нужно было посмотреть, какими данными заполняется переменная, просто вывел инфу через "сообщить" - мне этого хватило.
    А из последнего моего сообщения, процедура и запрос уже из самого МодуляМенеджера документа, так что тут можно и отладчиком, штатно пробежаться.
  7. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Нашёл в чём дело. При вызове:
    Код:
    ПолучитьДанныеДляПечатнойФормыСчетФактура(ПараметрыПечати, МассивОбъектов)
    из документа ВозвратТоваровпоставщику, в МассивОбъектов попадает ссылка на документ возврата, а в эту Функцию, в МассивОбъектов, надо передать ссылку на счёт фактуру.
    Как мне вытянуть ссылку на счёт фактуру из документа возврата?
  8. TopicStarter Overlay
    Peroman
    Offline

    Peroman Опытный в 1С

    Регистрация:
    26 май 2009
    Сообщения:
    879
    Симпатии:
    13
    Баллы:
    29
    Плюнул. Взял за основу типовую из конфы

    Вложения:

  9. ElenaSin
    Offline

    ElenaSin

    Регистрация:
    22 июл 2009
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Добрый день!Взяла Ваш внешний отчет и он прекрасно шел на ранних версиях УТ.Но после обновления платформы и конфигурации ,вместо отчета выдается сообщение "Слишком много фактических параметров".Вы не столкнулись с этим?
  10. alexburn
    Online

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Так после обновления конфы, весьма вероятно поменялась структура, отсюда и ошибки
  11. ElenaSin
    Offline

    ElenaSin

    Регистрация:
    22 июл 2009
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    А как можно найти, где ошибка.Ведь кроме сообщения "Слишком много фактических параметров" нет ссылки на код программы
  12. alexburn
    Online

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Можно запустить из-под отладчика с остановкой по ошибке, тогда можно узнать откуда ноги растут.
  13. ElenaSin
    Offline

    ElenaSin

    Регистрация:
    22 июл 2009
    Сообщения:
    4
    Симпатии:
    0
    Баллы:
    1
    Cпасибо, все получилось!

Поделиться этой страницей