не получается в печатной форме нормально вывести данные

  • Автор темы Nastyusha
  • Дата начала
N

Nastyusha

#1
Доброго времени суток
в диапазоне R31C1:R31C4 нужно вывести данные из справочника (или из табличной части документа)
а в диапазоне- R31C9:R34C10 вывести постоянные данные.

У меня есть такие секции:
Горизонтальные:
ЦенаКраски=R31
Химия=R31:R34
Вертикальные:
ВертКраска=C1:C4
Труд=C5:C8
ВертХимия=C9:C11

т.е. нужно в той же строке вывести данные

Пробовала:
в цикле вывожу справочник
ТабТехКарт.ВывестиСекцию("ЦенаКраски|ВертКраска"); (R31C1:R31C4 )

Далее вывожу постоянные данные

ТабТехКарт.ПрисоединитьСекцию("Химия>|ВертКраска"); (R31C9:R34C10)
//ТабТехКарт.ПрисоединитьСекцию("Химия>|Труд");
ТабТехКарт.ПрисоединитьСекцию("Химия>|ВертХимия"); (R32C9:R34C10)

Но получается, что Постоянные данные начинаются в последней строчке справочника


Добавлено: дополнение конфигурация 7.7
 
T

TimeDontWait

#2
Код:
Область()
Замечание:
Метод может использоваться при работе с таблицей в режиме ввода данных.


Или же можеш в своем цикле присоединять секции, в зависимости от условий. Допусти ставиш счетчик в цикле(сч=31), и проверяеш входит ли счетчик в нужный диапазон(34<сч>31)
 
N

Nastyusha

#4
получилось так:
добавила данные в ТЗ (колонки -1 из справочника, далее постоянные данные)
( в цикле данные справочника , а постоянные данные добавляю в нужную строку)
 
T

TimeDontWait

#5
На простом примере:

Код:
спр=создатьобъект("Справочник.Такойто");
таб=создатьобъект("Таблица");
сч=0;
спр.выбратьэлементы()
Пока спр.получитьэлемент()=1 цикл
сч=сч+1;
таб.ВывестиСекцию("НашаСекция");
Если (сч>31) И (сч<34) тогда //тут настраиваем вывод пост.данных в нужных строках
таб.присоединитьсекцию("Нашавтораясекция");
КонецЕсли;
КонецЦикла;
 
N

Nastyusha

#6
может вопрос немного не по теме, а можно ли вывести в таблице данные, которые рассчитываться в др. процедуре
есть 3 процедуры, в которых рассчитывается: краска, химия , труд и прочие коэффициенты. и есть 3 таблицы..
как сделать ссылку на процедуру для расчета, а выводить данные в 3-х разных таблицах..
На данный момент код дублируется
 

puh14

Well-known member
11.07.2008
1 412
0
#7
как сделать ссылку на процедуру для расчета, а выводить данные в 3-х разных таблицах..
Сделать процедуру глобальной. Если неоходимо вытаскивать значения уже в самой таблице - тогда сделать её как глобальную функцию.
 
N

Nastyusha

#8
а из-за чего идет смещение на колво упаковки? (т.е. на 5)
т.е. работа начинает выводиться на колво строк упаковки ниже

Как сделать так, чтобы выводилось в той же строчке?

ВремТруд=СоздатьОбъект("ТаблицаЗначений") ;

Труд.Выгрузить(ВремТруд, ,, "Работа, Норма, Расчет"); //чтобы не портить ТЗ труд

ВремТруд.НоваяКолонка("Материал");
ВремТруд.НоваяКолонка("длина");
ВремТруд.НоваяКолонка("высота");
ВремТруд.НоваяКолонка("ширина");
ВремТруд.НоваяКолонка("диаметр");
ВремТруд.НоваяКолонка("РасходМатер");


СпрУпаковка=СоздатьОбъект("Справочник.Упаковки") ;
СпрУпаковка.ИспользоватьВладельца(наименованиеэтикетки);

УпаковкаПродукции(); //для добавления новых данных, если справочник пустой

//СпрУпаковка.Порядокнаименований();
СпрУпаковка.ВыбратьЭлементы();

Пока СпрУпаковка.ПолучитьЭлемент() > 0 Цикл
ВремТруд.НоваяСтрока(1);
ВремТруд.Материал=СпрУпаковка.наименование;

ВремТруд.длина=СпрУпаковка.длина;
//ВремТруд.установитьЗначение(1, "Длина", ВремТруд.длина);

....
заполнение всех колонок времТруд, которые из справочника упаковка

КонецЦикла; //Спр.Упаковка.ПолучитьЭлемент() > 0 Цикл

ВремТруд.ВыбратьСтроки();
Пока ВремТруд.ПолучитьСтроку() >0 Цикл

ТабТехКарт.ВывестиСекцию("РасчетТруда");
КонецЦикла; // ВремТруд.ПолучитьСтроку() >0 Цикл
 
N

Nastyusha

#10
ВремТруд.НоваяСтрока()
тогда упаковка- выводиться в самом низу...
а нужно в этой же строчке, что и ВремТруд.Работа