|
Очистить поле табличного документа | ☑ | ||
---|---|---|---|---|
0
Sem0709
24.08.17
✎
02:53
|
Здравствуйте.
В отчёте Поле табличного документа (ЭлементыФормы.Результат) При каждом повторном формировании отображаемая таблица съезжает вниз. ЭлементыФормы.Результат.Очистить(); //стоит Заполняю из дерева значений, колонки/строки перед новым формированием очищаю. Чего ещё не делаю ? |
|||
1
Sem0709
24.08.17
✎
02:55
|
Вывожу так
Если Счетчик < 5 Тогда ЭлементыФормы.Результат.Присоединить(ОбластьТорговыйОбъект); Счетчик = Счетчик + 1; Иначе ЭлементыФормы.Результат.Вывести(ОбластьТорговыйОбъект); Счетчик = 1; КонецЕсли; |
|||
2
1dvd
24.08.17
✎
06:11
|
в каком смысле "съезжает"?
|
|||
3
1dvd
24.08.17
✎
06:12
|
и это, перед выводом Счетчик обнуляешь?
|
|||
4
Sem0709
24.08.17
✎
07:28
|
(2)Каждое новое формирование заполняется дальше места предыдущего формирования.
(3)Обнуляю, даже убираю - не помогает |
|||
5
Sem0709
24.08.17
✎
07:32
|
(2) + то есть "данных" на поле нет - оно очищено, но повторное формирование продолжает к нему присоединять
|
|||
6
Sem0709
24.08.17
✎
07:39
|
Наверное, так проще
ЭлементыФормы.Результат.Очистить(); Макет = ПолучитьМакет("Макет"); ОбластьТорговыйОбъект = Макет.ПолучитьОбласть("Шапка|ТорговыйОбъект"); ТО = Справочники.ТорговыеОбъекты.Выбрать(); Счетчик = 0; Пока ТО.Следующий() Цикл ОбластьТорговыйОбъект.Параметры.НаСкладеПО = ТаблицаБаланса.Строки[0]["ДатаПО" + ТО.Код]; ОбластьТорговыйОбъект.Параметры.НаСкладеС = ТаблицаБаланса.Строки[0]["ДатаС" + ТО.Код]; ОбластьТорговыйОбъект.Параметры.НаСкладеРАЗ = ТаблицаБаланса.Строки[0]["ДатаРАЗ" + ТО.Код]; Если Счетчик < 5 Тогда ЭлементыФормы.Результат.Присоединить(ОбластьТорговыйОбъект); Счетчик = Счетчик + 1; Иначе ЭлементыФормы.Результат.Вывести(ОбластьТорговыйОбъект); Счетчик = 1; КонецЕсли; КонецЦикла; |
|||
7
1dvd
24.08.17
✎
07:45
|
(6) т.е. ты сначала присоединяешь, а потом выводишь? Надо наоборот
|
|||
8
Sem0709
24.08.17
✎
08:30
|
(7) Точняк, спасибо! Я даже не думал в эту сторону.
Условие вывода дурацкое получилось, но работает. Если Счетчик = 1 Тогда ЭлементыФормы.Результат.Вывести(ОбластьТорговыйОбъект); Счетчик = Счетчик + 1; ИначеЕсли Счетчик = 5 Тогда ЭлементыФормы.Результат.Присоединить(ОбластьТорговыйОбъект); Счетчик = 1; Иначе ЭлементыФормы.Результат.Присоединить(ОбластьТорговыйОбъект); Счетчик = Счетчик + 1; КонецЕсли; |
|||
9
1dvd
24.08.17
✎
08:33
|
(8) пойдёт :)
|
|||
10
Zmich
24.08.17
✎
08:34
|
(8). Проще через % - остаток от деления:
Если Счетчик % 5 = 1 Тогда ЭлементыФормы.Результат.Вывести(ОбластьТорговыйОбъект); Иначе ЭлементыФормы.Результат.Присоединить(ОбластьТорговыйОбъект); КонецЕсли; Счетчик = Счетчик + 1; |
|||
11
Sem0709
24.08.17
✎
08:45
|
(10) я подумал про деление, не допетрил как реализовать)
всем спасибо!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |