|
Лишние строки в печатной форме | ☑ | ||
---|---|---|---|---|
0
Su60ta_SunRise
14.08.13
✎
15:18
|
Ребят, дубль просьбы, реально встал с проблемой.
Я вытащил из БП печатную форма Акта сверки, сделал ее внешней. Добавил отражение номенклатуры и количества товара. Но теперь макет отображает лишние строки Код: //Для упрощения вывода, сравним списки по количеству элементов, добавив пустые МаксИндекс = Макс(СписокДокументов.Количество(), СписокДокументовК.Количество())-1; МинИндекс = Мин(СписокДокументов.Количество(), СписокДокументовК.Количество())-1; Если СписокДокументов.Количество()<СписокДокументовК.Количество() Тогда Для инд = МинИндекс По МаксИндекс-1 Цикл СписокДокументов.Добавить(новый структура("ДатаДокумента,РегистраторПредставление,Регистратор,СуммаОборотДт,СуммаОборотКт","","","","","")); КонецЦикла; ИначеЕсли СписокДокументов.Количество()>СписокДокументовК.Количество() Тогда Для инд = МинИндекс По МаксИндекс-1 Цикл СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр","","","","")); КонецЦикла; КонецЕсли; Для Инд = 0 По МаксИндекс Цикл ОбластьОбороты.Параметры.Заполнить(СписокДокументов[Инд]); ОбластьОбороты.Параметры.Заполнить(СписокДокументовК[Инд]); //как тут ему сказать, чтоб не выводил строки? ТабДок.Вывести(ОбластьОбороты); ///ДОБАВЛЯЕМ НОМЕНКЛАТУРУ И КОЛИЧЕСТВО Если ТипЗнч(СписокДокументов[Инд].Регистратор) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда ТаблицаТоваров = СписокДокументов[Инд].Регистратор.Товары; Для каждого СтрДок Из ТаблицаТоваров Цикл ОблНом = Макет.ПолучитьОбласть("Обороты"); ОблНом.Параметры.РегистраторПредставление = СтрДок.Номенклатура; ОблНом.Параметры.КоличествоТовара = СтрДок.Количество; ТабДок.Вывести(ОблНом); КонецЦикла; КонецЕсли; КонецЦикла; Скрин: http://yadi.sk/d/0QeCkIG77uQXE |
|||
1
Su60ta_SunRise
14.08.13
✎
15:19
|
http://yadi.sk/d/0QeCkIG77uQXE
Скрин макета |
|||
2
RomaH
naïve
14.08.13
✎
15:28
|
///ДОБАВЛЯЕМ НОМЕНКЛАТУРУ И КОЛИЧЕСТВО
Если ТипЗнч(СписокДокументов[Инд].Регистратор) = Тип("ДокументСсылка.РеализацияТоваровУслуг") Тогда ТаблицаТоваров = СписокДокументов[Инд].Регистратор.Товары; Для каждого СтрДок Из ТаблицаТоваров Цикл ОблНом = Макет.ПолучитьОбласть("Обороты"); ОблНом.Параметры.РегистраторПредставление = СтрДок.Номенклатура; ОблНом.Параметры.КоличествоТовара = СтрДок.Количество; ТабДок.Вывести(ОблНом); КонецЦикла; ну как бы - это оно? |
|||
3
Su60ta_SunRise
14.08.13
✎
15:30
|
да, то, что добавляет номенклатуру и количество.
|
|||
4
Su60ta_SunRise
14.08.13
✎
15:34
|
Суть тут:
МаксИндекс = Макс(СписокДокументов.Количество(), СписокДокументовК.Количество())-1; МинИндекс = Мин(СписокДокументов.Количество(), СписокДокументовК.Количество())-1; Если СписокДокументов.Количество()<СписокДокументовК.Количество() Тогда Для инд = МинИндекс По МаксИндекс-1 Цикл СписокДокументов.Добавить(новый структура("ДатаДокумента,РегистраторПредставление,Регистратор,СуммаОборотДт,СуммаОборотКт","","","","","")); КонецЦикла; ИначеЕсли СписокДокументов.Количество()>СписокДокументовК.Количество() Тогда Для инд = МинИндекс По МаксИндекс-1 Цикл СписокДокументовК.Добавить(новый структура("ДатаДокументаКонтр,РегистраторПредставлениеКонтр,СуммаОборотДтКонтр,СуммаОборотКтКонтр","","","","")); КонецЦикла; КонецЕсли; Для Инд = 0 По МаксИндекс Цикл ОбластьОбороты.Параметры.Заполнить(СписокДокументов[Инд]); ОбластьОбороты.Параметры.Заполнить(СписокДокументовК[Инд]); // Тут нужно задать условие для СписокДокументовК[Инд], что бы он не выводил пустые строки, только я даже логически не могу сформилировать условие ( Стажер еще |
|||
5
RomaH
naïve
14.08.13
✎
15:51
|
что значит пустые строки?
|
|||
6
RomaH
naïve
14.08.13
✎
15:51
|
последние две что ли на скрине? - нафига тогда цветом выделял?
|
|||
7
Su60ta_SunRise
14.08.13
✎
15:54
|
http://yadi.sk/d/0QeCkIG77uQXE
На скрине выделил желтым. Лезут потому, что есть теперь в области строки номенклатуры. Они создают пустые строки в правой части документа СписокДокументовК[Инд] |
|||
8
RomaH
naïve
15.08.13
✎
14:36
|
это надо алгоритм формирования ПФ переделывать
... например формировать по отдельности ТД свой и чужой а потом Присоеденить |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |