Внешняя обработка 1С 8.3. На макете перенос из левой области в правую при переполнении.
Все доброго времени суток. Такой вопрос. Имеется внешняя печатная форма в ней есть несколько областей, в том числе и области "Левая часть" и "Правая часть", в левой и в правой части имеются одинаковые таблицы с одинаковыми переменными. Подскажите пожалуйста что написать что бы Количество строк более половины уже писались в правую часть. Прикладываю макет "НДФЛ 2" именно с ним проблема. Но хочу изучить и понять как это делается...
Прикрепленные файлы:

Найденные решения
Доброго времени суток.
Думаю, что нужно заранее подготовить две коллекции (массива) для левой и правой стороны, короче говоря исходя из количества строк, нужно его поделить на два целочисленно и получится число итоговых строк с двумя колонками, например K.
Потом нужно выводить сразу данные 1-ого элемента в левую область и K+1 в правую,
2ого элемента в левую и K+2 ого в правую
и т.п.
То есть как мне кажется, волшебной таблетки нет, нужно заранее структуры данных подготовить перед выводом табдока.
Думаю, что нужно заранее подготовить две коллекции (массива) для левой и правой стороны, короче говоря исходя из количества строк, нужно его поделить на два целочисленно и получится число итоговых строк с двумя колонками, например K.
Потом нужно выводить сразу данные 1-ого элемента в левую область и K+1 в правую,
2ого элемента в левую и K+2 ого в правую
и т.п.
То есть как мне кажется, волшебной таблетки нет, нужно заранее структуры данных подготовить перед выводом табдока.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Доброго времени суток.
Думаю, что нужно заранее подготовить две коллекции (массива) для левой и правой стороны, короче говоря исходя из количества строк, нужно его поделить на два целочисленно и получится число итоговых строк с двумя колонками, например K.
Потом нужно выводить сразу данные 1-ого элемента в левую область и K+1 в правую,
2ого элемента в левую и K+2 ого в правую
и т.п.
То есть как мне кажется, волшебной таблетки нет, нужно заранее структуры данных подготовить перед выводом табдока.
Думаю, что нужно заранее подготовить две коллекции (массива) для левой и правой стороны, короче говоря исходя из количества строк, нужно его поделить на два целочисленно и получится число итоговых строк с двумя колонками, например K.
Потом нужно выводить сразу данные 1-ого элемента в левую область и K+1 в правую,
2ого элемента в левую и K+2 ого в правую
и т.п.
То есть как мне кажется, волшебной таблетки нет, нужно заранее структуры данных подготовить перед выводом табдока.
(2)
Выбираю - у меня из запроса получаю)
//Лево.Параметры.МесяцНалоговогоПериода = Выбираю.МесяцНалоговогоПериода;
//Лево.Параметры.КодДоходаСтрокой = Выбираю.КодДоходаКод;
//Лево.Параметры.СуммаДохода = Выбираю.СуммаДохода;
//Лево.Параметры.КодВычетаСтрокой = Выбираю.КодВычетаКод;
//Лево.Параметры.СуммаВычета = Выбираю.СуммаВычета;
правой
Тоже вот об этом подумал. А вот вопрос я получу массив уже сразу после запроса, где данные получаю? ну то есть вот этйо части кода сделать массивом?
Выбираю - у меня из запроса получаю)
//Лево.Параметры.МесяцНалоговогоПериода = Выбираю.МесяцНалоговогоПериода;
//Лево.Параметры.КодДоходаСтрокой = Выбираю.КодДоходаКод;
//Лево.Параметры.СуммаДохода = Выбираю.СуммаДохода;
//Лево.Параметры.КодВычетаСтрокой = Выбираю.КодВычетаКод;
//Лево.Параметры.СуммаВычета = Выбираю.СуммаВычета;
Там лучше попробовать, если позволяет всё остальное, сделать не выборку, а таблицу значений из запроса.
То есть не
Получаю = Запрос.Выполнить().Выбрать()
а
МояТаблица = Запрос.Выполнить().Выгрузить()
тогда у МояТаблица будет метод Количество(): МояТаблица.Количество()
и возможности обращаться по номеру строки, например, МояТаблица[ии-1] - обращение к ии-ой строке таблицы (нужен сдвиг на одну позицию, т.к. пронумерованы строки в таблице значений с нуля)
То есть не
Получаю = Запрос.Выполнить().Выбрать()
а
МояТаблица = Запрос.Выполнить().Выгрузить()
тогда у МояТаблица будет метод Количество(): МояТаблица.Количество()
и возможности обращаться по номеру строки, например, МояТаблица[ии-1] - обращение к ии-ой строке таблицы (нужен сдвиг на одну позицию, т.к. пронумерованы строки в таблице значений с нуля)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот