|
Не отрабатывает код из общего модуля во ВПФ. УТ10.3 | ☑ | ||
---|---|---|---|---|
0
Shecurok
17.01.20
✎
13:53
|
Делаю ВПФ УПД (там форму надо было одну прикрутить) для УТ10.3
Не появляется платежно-расчетный документ. Код взял из общего модуля УчетНДС. Выглядит он так: Процедура ВывестиСчетФактуруВТабличныйДокумент(ТабДокумент, Макет, ДанныеДляПечати) Экспорт (...) СтрокаПоДокументу = ""; Если ДанныеДляПечати.Свойство("ТаблицаДатОплат") Тогда Для каждого ПараметрыДокументаОплаты Из ДанныеДляПечати.ТаблицаДатОплат Цикл Если НЕ ЗначениеЗаполнено(ПараметрыДокументаОплаты.НомерПлатежноРасчетногоДокумента) И НЕ ЗначениеЗаполнено(ПараметрыДокументаОплаты.ДатаПлатежноРасчетногоДокумента) Тогда Продолжить; КонецЕсли; СтрокаПоДокументу = СтрокаПоДокументу + ?(ПустаяСтрока(СтрокаПоДокументу), ?(ЭтоПечатьУПД, "", "К платежно-расчетному документу № "),", ") + ПараметрыДокументаОплаты.НомерПлатежноРасчетногоДокумента + " от " + Формат(ПараметрыДокументаОплаты.ДатаПлатежноРасчетногоДокумента, "ДФ=dd.MM.yyyy") + " г."; КонецЦикла; КонецЕсли; Если ПустаяСтрока(СтрокаПоДокументу) Тогда Если ДанныеДляПечати.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАванс ИЛИ ДанныеДляПечати.ВидСчетаФактуры = Перечисления.ВидСчетаФактурыВыставленного.НаАвансКомитента Тогда СтрокаПоДокументу = ?(ЭтоПечатьУПД, "", "К платежно-расчетному документу № ") + "-- от --"; Иначе СтрокаПоДокументу = ?(ЭтоПечатьУПД, "", "К платежно-расчетному документу № ") + " от"; КонецЕсли; КонецЕсли; Если ЭтоПечатьУПД И ДанныеДляПечати.СтатусУПД = 2 Тогда // В УПД в статусе 2 ставятся прочерки показатели, установленные в качестве обязательных исключительно для счета-фактуры: // - «К платежно-расчетному документу» (строка 7); СтрокаПоДокументу = "--"; КонецЕсли; ОбластьМакета.Параметры.ПоДокументу = СтрокаПоДокументу; Код точно этот, проверял (комментировал - данные перестали выводится). В типовой пф выводится номер документа + дата. В моей ПФ отрабатываются посл. строки, т.е. выводит на макете --. Если их комментировать будет так: (пробел) от (пробел). Что я мог упустить? Обработки для тестирования ВПФ нет у меня (если кто поделится, буду рад и благодарен). |
|||
1
shuhard
17.01.20
✎
13:54
|
(0)[Обработки для тестирования ВПФ нет у меня]
сделай морду у отчета выведи документ и кнопку для УТ 10.3 не нужны ни какие обработки |
|||
2
Shecurok
17.01.20
✎
14:02
|
(1) сейчас я Вас не понял)
|
|||
3
Михаил Козлов
17.01.20
✎
14:06
|
(2) У обработки создаете форму, на которой поле - ссылка на документ, который нужно печатать и кнопка, в которой вызывается Печать() из модуля обработки и отлаживайте.
|
|||
4
shuhard
17.01.20
✎
14:18
|
(3) =)
|
|||
5
Shecurok
17.01.20
✎
14:21
|
(3) спасибо, понял, буду пробовать
|
|||
6
Shecurok
17.01.20
✎
14:56
|
ну смог я наконец отладить эту впф. Но не сильно мне это помогло.
Я узнал, что ни номер, ни дата, которые мне необходимы, не попадают в структуру данных (вроде верно назвал). И точка останова на ВПФ в одном месте не срабатывает, хотя в общем модуле срабатывает. Буду разбираться. |
|||
7
Shecurok
17.01.20
✎
15:03
|
в общем модуле ставлю точку останова на строке
Если ДанныеДляПечати.Свойство("ТаблицаДатОплат") Тогда и далее отладка идет по циклу. На впф ставлю на этой строчке точку и отладка перескакивает (жму кнопку "Шагнуть в") через цикл. Следовательно данное свойство не устанвлено. Я так понимаю. И надо искать где устанавливается. |
|||
8
Shecurok
17.01.20
✎
15:04
|
Если вдруг знает кто возможную причину скажите пожалуйста.
|
|||
9
Shecurok
17.01.20
✎
15:26
|
Разобрался, что необходимо добавить.
Вот этот код: ТаблицаДатОплат = ДатаНомерДокументовОплаты.Выгрузить(); ТаблицаДатОплат.Свернуть("ДатаПлатежноРасчетногоДокумента, НомерПлатежноРасчетногоДокумента"); СтрокиКУдалению = Новый массив(); Для каждого СтрокаОплат Из ТаблицаДатОплат Цикл Если не ЗначениеЗаполнено(СтрокаОплат.ДатаПлатежноРасчетногоДокумента) и ПустаяСтрока(СтрокаОплат.НомерПлатежноРасчетногоДокумента) Тогда СтрокиКУдалению.Добавить(СтрокаОплат); КонецЕсли; КонецЦикла; Для каждого СтрокаКУдалению Из СтрокиКУдалению Цикл ТаблицаДатОплат.Удалить(СтрокаКУдалению); КонецЦикла; ДанныеДляПечати.Вставить("ТаблицаДатОплат", ТаблицаДатОплат); НО! Как сделать ссылку на Счет фактуру не понял ещё. У меня есть реквизит СсылкаНаОбъект. Пробовал ТаблицаДатОплат = СсылкаНаОбъект.ДатаНомерДокументовОплаты.Выгрузить(); Но у меня ссылка на объект это реализация, и само собой ничего не прошло. Есть мысли как реализовать? |
|||
10
shuhard
17.01.20
✎
16:37
|
(9)[ и само собой ничего не прошло.]
офигеть |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |