|
Как подтянуть в печатную форму данные из табличной части документа? | ☑ | ||
---|---|---|---|---|
0
Natali15
13.02.22
✎
18:19
|
Бухгалтерия 3.0. В документ "Реализация товаров и услуг" с помощью расширения добавила две колонки в табличную часть "Товары" . Теперь нужно, чтобы эти колонки также отражались в печатной форме "Универсальный передаточный документ". в расширение добавила макет этой печатной формы, добавила колонки, задала параметры, а как теперь в коде это написать не понимаю, объясните, пожалуйста
|
|||
1
hhhh
13.02.22
✎
18:23
|
(0) посмотри как другие колонки подтягиваются, и сделай свои колонки точно также.
|
|||
2
Natali15
13.02.22
✎
18:25
|
(1) как можно найти, где заполняются эти данные?
|
|||
3
Natali15
13.02.22
✎
18:34
|
(1) ОбластьМакета = Макет.ПолучитьОбласть("Строка");
Если ВерсияПостановления1137 >= 5 Тогда ОбластьЗапись = ОбластьМакета.Область("ОбластьЗапись"); КонецЕсли; КоличествоСтраниц = 1; СчетФактураБезНДС = Истина; НДСНеВыставляетя = Истина; НомерСтроки = 0; НомерЛиста = 1; КоличествоСтрок = ТаблицаДокумента.Количество(); Для каждого СтрокаДокумента Из ТаблицаДокумента Цикл НомерСтроки = НомерСтроки + 1; СтрокаДокумента.НомерСтроки = НомерСтроки; Если ВерсияПостановления1137 >= 4 Тогда Если ЭтоУниверсальныйПередаточныйДокумент Тогда СтрокаДокумента.Акциз = "без |акциза"; КонецЕсли; Если ЗначениеЗаполнено(СтрокаДокумента.РегистрационныйНомерТД) Тогда СтрокаДокумента.ПредставлениеГТД = СтрокаДокумента.РегистрационныйНомерТД; Иначе СтрокаДокумента.ПредставлениеГТД = ""; Если Не ВыводитьРНПТ ИЛИ ВыводитьРНПТ И Не ЗначениеЗаполнено(СтрокаДокумента.СведенияОПрослеживаемости) Тогда СтрокаДокумента.ПредставлениеСтраны = ""; КонецЕсли; КонецЕсли; КонецЕсли; ОбластьМакета.Параметры.Заполнить(СтрокаДокумента); Если НЕ ЗначениеЗаполнено(СтрокаДокумента.СтавкаНДС) Тогда ОбластьМакета.Параметры.СтавкаНДС = "--"; Если СтрокаДокумента.СуммаНДС = 0 Тогда ОбластьМакета.Параметры.СуммаНДС = "--"; КонецЕсли; КонецЕсли; ДозаполнитьСтрокуСчетаФактуры1137(ОбластьМакета, ВыборкаСФ.ВидСчетаФактуры); Если ДанныеШапки.НДСИсчисляетсяНалоговымАгентом Тогда ДозаполнитьПараметрыНДСИсчисляетНалоговыйАгент(ОбластьМакета); ОбластьМакета.Параметры.Стоимость = СтрокаДокумента.Стоимость; КонецЕсли; Если ВыводитьРНПТ И ЗначениеЗаполнено(СтрокаДокумента.СведенияОПрослеживаемости) Тогда ТаблицаРНПТ = СтрокаДокумента.СведенияОПрослеживаемости; ПерваяСтрока = Истина; ОбластьЗапись.ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии); ОбластьЗапись.ГраницаСверху = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии); Для ИндексСтроки = 0 По ТаблицаРНПТ.Количество() - 1 Цикл Если Не ПерваяСтрока Тогда // Получаем область для последующих строк для очистки параметров. ОбластьМакета = Макет.ПолучитьОбласть("Строка"); ОбластьЗапись = ОбластьМакета.Область("ОбластьЗапись"); ОбластьЗапись.ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии); ОбластьЗапись.ГраницаСверху = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии); КонецЕсли; ОбластьМакета.Параметры.ПредставлениеГТД = ТаблицаРНПТ[ИндексСтроки].НомерТовара; ОбластьМакета.Параметры.ЕдиницаИзмеренияПрослежКод = ТаблицаРНПТ[ИндексСтроки].ЕдиницаИзмеренияКод; ОбластьМакета.Параметры.ЕдиницаИзмеренияПрослеж = ТаблицаРНПТ[ИндексСтроки].ЕдиницаИзмеренияНаименование; ОбластьМакета.Параметры.КоличествоПрослеж = ТаблицаРНПТ[ИндексСтроки].Количество; ПоследняяПодстрока = Ложь; Если ИндексСтроки = ТаблицаРНПТ.Количество() - 1 Тогда ОбластьЗапись.ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1); ПоследняяПодстрока = Истина; КонецЕсли; ПоследняяСтрока = (НомерСтроки = КоличествоСтрок) И ПоследняяПодстрока; Если НЕ ПроверитьВыводСчетаФактурыНаСтраницу(ТабДокумент, ОбластьМакета, ПоследняяСтрока, Макет, НомерЛиста, НомерСчетаФактуры, ЭтоУниверсальныйПередаточныйДокумент) Тогда КоличествоСтраниц = КоличествоСтраниц + 1; КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); ПерваяСтрока = Ложь; КонецЦикла; Иначе Если ВерсияПостановления1137 >= 5 Тогда ОбластьЗапись.ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1); ОбластьЗапись.ГраницаСверху = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1); Если ВыводитьРНПТ Тогда ОбластьМакета.Параметры.ЕдиницаИзмеренияПрослежКод = "--"; ОбластьМакета.Параметры.ЕдиницаИзмеренияПрослеж = "--"; ОбластьМакета.Параметры.КоличествоПрослеж = "--" КонецЕсли; КонецЕсли; Если НЕ ПроверитьВыводСчетаФактурыНаСтраницу(ТабДокумент, ОбластьМакета, (НомерСтроки = КоличествоСтрок), Макет, НомерЛиста, НомерСчетаФактуры, ЭтоУниверсальныйПередаточныйДокумент) Тогда КоличествоСтраниц = КоличествоСтраниц + 1; КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); КонецЕсли; СчетФактураБезНДС = СчетФактураБезНДС И СтрокаДокумента.СуммаНДС = 0 И СтрокаДокумента.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС; НДСНеВыставляетя = НДСНеВыставляетя И СтрокаДокумента.СуммаНДС = 0 И НЕ ЗначениеЗаполнено(СтрокаДокумента.СтавкаНДС); КонецЦикла; ТабДокумент.Область(ТабДокумент.ВысотаТаблицы,,ТабДокумент.ВысотаТаблицы,).ВместеСоСледующим = Истина; вот в этой области подтягиваются параметры из документа. Куда прописать нужно? |
|||
4
Natali15
13.02.22
✎
18:34
|
вот в этой области подтягиваются параметры из документа. Куда прописать нужно? (1)
|
|||
5
Михаил Козлов
13.02.22
✎
19:15
|
Обычно, перед формированием печатной формы формируют данные для нее. Поищите в модуле менеджера что-нибудь типа ПолучитьДанныеДляСчетаФактуры.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |