Имя: Пароль:
1C
 
С результата запроса изобразить в ТЗ на форме данные
0 Casper21
 
02.12.15
16:24
у меня есть внешняя обробка, там форма. На форме я создал 2 Таблицни части и и реквизиты.
И нужно с результата запроса изобразить туда некоторые данные. Как это сделать?

http://s42.radikal.ru/i097/1512/1c/a8c2b959924a.png


Процедура Печать()Экспорт
    ТабДокумент = Новый ТабличныйДокумент;
    ТабДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
    Макет = ПолучитьМакет("Макет");
    ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
    ОбластьСтрока = Макет.ПолучитьОбласть("СтрокаТаблицы");
    
    Запрос = Новый Запрос;      
    Запрос.Текст =
     "ВЫБРАТЬ
     |    РегСклад.Номенклатура КАК Наименование,
     |    РегСклад.КоличествоОстаток КАК Количество,
     |    РТУ.ЕдиницаИзмерения КАК ЕдиницыИзмерения,
     |    РТУ.Сумма КАК Сума,
     |    Доставка.Перевозчик КАК Перевозчик,
     |    Доставка.Отделение КАК НомерОтделения,
     |    ВЫБОР
     |        КОГДА Доставка.ВидОплаты = ЗНАЧЕНИЕ(Перечисление.ВидыОплаты.Наложенный)
     |            ТОГДА ""H""
     |        ИНАЧЕ NULL
     |    КОНЕЦ КАК НалПлатеж,
     |    Доставка.ТелефонПолучателя КАК Телефон,
     |    Доставка.АдресДоставки КАК АдресДоставки,
     |    Доставка.КонтактноеЛицоПолучателя КАК Получатель,
     |    РТУ.Номер КАК Номер,
     |    РТУ.Дата КАК Дата
     |ИЗ
     |    (ВЫБРАТЬ
     |        ТоварыКПередачеСоСкладовОстатки.Номенклатура КАК Номенклатура,
     |        ТоварыКПередачеСоСкладовОстатки.Склад КАК Склад,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи КАК ДокументПередачи,
     |        ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток КАК КоличествоОстаток,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи.Ссылка КАК ДокументПередачиСсылка,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи.Номер КАК ДокументПередачиНомер,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи.Дата КАК ДокументПередачиДата,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументРезерва.Ссылка КАК ДокументРезерваСсылка,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи.Грузоотправитель КАК ДокументПередачиГрузоотправитель,
     |        ТоварыКПередачеСоСкладовОстатки.ДокументПередачи.Грузополучатель КАК ДокументПередачиГрузополучатель
     |    ИЗ
     |        РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&ДатаВибору, ) КАК ТоварыКПередачеСоСкладовОстатки
     |    ГДЕ
     |        ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток > 0) КАК РегСклад
     |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
     |            РеализацияТоваровУслугТовары.Ссылка.Ссылка КАК Ссылка,
     |            РеализацияТоваровУслугТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
     |            РеализацияТоваровУслугТовары.Количество КАК Количество,
     |            РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
     |            РеализацияТоваровУслугТовары.Сумма КАК Сумма,
     |            РеализацияТоваровУслугТовары.ЗаказПокупателя.Ссылка КАК ЗаказПокупателяСсылка,
     |            РеализацияТоваровУслугТовары.Ссылка.Номер КАК Номер,
     |            РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата
     |        ИЗ
     |            Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары) КАК РТУ
     |            ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
     |                Доставка.ЗаказПокупателя КАК ЗаказПокупателя,
     |                Доставка.Перевозчик КАК Перевозчик,
     |                Доставка.Отделение КАК Отделение,
     |                Доставка.ВидОплаты КАК ВидОплаты,
     |                Доставка.ТелефонПолучателя КАК ТелефонПолучателя,
     |                Доставка.АдресДоставки КАК АдресДоставки,
     |                Доставка.КонтактноеЛицоПолучателя КАК КонтактноеЛицоПолучателя
     |            ИЗ
     |                РегистрСведений.Доставка КАК Доставка) КАК Доставка
     |            ПО РТУ.ЗаказПокупателяСсылка = Доставка.ЗаказПокупателя
     |        ПО РегСклад.ДокументПередачи.Ссылка = РТУ.Ссылка.Ссылка
     |            И РегСклад.Номенклатура = РТУ.Номенклатура
     |
     |УПОРЯДОЧИТЬ ПО
     |    Номер,
     |    Дата";
    
    //Запрос.УстановитьПараметр("ДатаВибору", );    
    ТабДокумент.Вывести(ОбластьШапка);
    Строка = Запрос.Выполнить().Выбрать();
    Пока Строка.Следующий() Цикл          
        ОбластьСтрока.Параметры.НомерДата = Строка.Номер+" "+ Формат(Строка.Дата,"ДФ=dd.MM.yyyy");
        ОбластьСтрока.Параметры.Заполнить(Строка);
        ТабДокумент.Вывести(ОбластьСтрока);
        Если ОбластьСтрока.Параметры.НалПлатеж = "H"
            Тогда ТабДокумент.Область(ТабДокумент.ВысотаТаблицы,12,ТабДокумент.ВысотаТаблицы,12).ЦветФона = Новый Цвет(0,0,0);        
        КонецЕсли;    
    КонецЦикла;        
    ВысотаШапки   = ТабДокумент.ВысотаТаблицы;
    ШиринаТаблицы = ТабДокумент.ШиринаТаблицы;                                                   
    ТабДокумент.Показать();                                      
КонецПроцедуры
1 Горогуля
 
02.12.15
16:26
ну выгрузи в реквизит и создай колонки
2 Casper21
 
02.12.15
16:31
это нужно еще программно создать ТЗ?
3 Горогуля
 
02.12.15
16:33
нет
4 Nuobu
 
02.12.15
16:37
(2) Из предприятия. Кто создаёт ТЗ в конфигураторе?
5 Casper21
 
02.12.15
16:42
Блин, что-то я в тупике. Ничего не понимаю что делаю.
Тогда я неверно сделал, что создал в обработке 2 ТЗ и в них создал реквизиты (колонки)???
6 Горогуля
 
02.12.15
16:52
да
7 aleks_default
 
02.12.15
16:54
ТЗ оставь, а колонки создавать не надо.
8 Casper21
 
02.12.15
16:55
ЭлементыФормы.ТабличноеПоле.Значение=Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();
ЭлементыФормы.ТабличноеПоле.ОбновитьСтроки();

Что-то такое нашел. это не подойдет к моему варианту ???
у меня табличное поле и туда нужно результат. .
Но где этот код написать в модуле формы ??? не видит запрос
9 Горогуля
 
02.12.15
16:59
предлагаю этот код написать в том месте модуля формы, где запрос видит
10 Casper21
 
02.12.15
17:28
а так не будет?


Для Каждого Строка Из ТЗЗакази Цикл            
        Строка.Замовлення.Добавить(Результат.Номер);
        Строка.Контрагент.Добавить(Результат.Получатель);
        Строка.Сума.Добавить(Результат.Сума);
    КонецЦикла;
    
    Для Каждого Строка Из ТЗТовари Цикл            
        Строка.Товар.Добавить(Результат.Наименование);
        Строка.Кількість.Добавить(Результат.Количество);
        Строка.Сума.Добавить(Результат.Сума);
    КонецЦикла;
11 aleks_default
 
02.12.15
17:28
(9)+ Или запрос перенести туда где видит табличное поле.
12 Горогуля
 
02.12.15
17:29
(10) от этого волосы на ладонях растут
13 aleks_default
 
02.12.15
17:30
(10) нет
14 Casper21
 
02.12.15
17:30
а потом ТЗТовари.Выгрузить(?)
15 Горогуля
 
02.12.15
17:31
(14) это называется стохастическое программирование
16 Nuobu
 
02.12.15
18:55
(14) Ты попробуй, а резльтат сообщи.