PDA

Просмотр полной версии : Не попадают в таблицу данные из запроса



zlodei909
15.07.2013, 19:58
Добрый день, подскажите где нужно поправить. Не попадают данные в табличную часть


ВЫБРАТЬ
РеализацияТоваровУслугТов ары.Номенклатура,
РеализацияТоваровУслугТов ары.Номенклатура.Наименова ниеПолное,
РеализацияТоваровУслугТов ары.Номенклатура.Наименова ние,
РеализацияТоваровУслугТов ары.Цена,
РеализацияТоваровУслугТов ары.Сумма,
РеализацияТоваровУслугТов ары.СтавкаНДС,
РеализацияТоваровУслугТов ары.СуммаНДС
ИЗ
Документ.РеализацияТоваро� �Услуг.Товары КАК РеализацияТоваровУслугТов ары
ГДЕ
РеализацияТоваровУслугТов ары.Ссылка = &ТекущийДокумент

Сергей Я
16.07.2013, 13:41
Можно больше кода

zlodei909
16.07.2013, 14:16
Можно больше кода

Конфигурация БП 2.0. Не получается вывести данные из второго запроса


Функция ПечатьРеализацияТоваровУс луг()

ЗапросШапка = Новый Запрос;
ЗапросШапка.УстановитьПар� �метр("ТекущийДокумент", СсылкаНаОбъект);
ЗапросШапка.Текст =
"ВЫБРАТЬ
| РеализацияТоваровУслуг.Но� �ер,
| РеализацияТоваровУслуг.Да� �а,
| РеализацияТоваровУслуг.До� �оворКонтрагента,
| РеализацияТоваровУслуг.Ко� �трагент,
| РеализацияТоваровУслуг.Ру� �оводитель КАК Руководитель,
| РеализацияТоваровУслуг.Су� �маДокумента,
| РеализацияТоваровУслуг.Ко� �трагент.НаименованиеПолно е КАК Контрагент,
| РеализацияТоваровУслуг.Ко� �трагент.ОсновноеКонтактно еЛицо.Должность КАК Должность,
| РеализацияТоваровУслуг.Ко� �трагент.ОсновноеКонтактно еЛицо.Представление КАК КонтактноеЛицо,
| РеализацияТоваровУслуг.Ор� �анизация.НаименованиеПолн ое КАК Организация,
| РеализацияТоваровУслуг.За� �уководителяПоПриказу
|ИЗ
| Документ.РеализацияТоваро� �Услуг КАК РеализацияТоваровУслуг
|ГДЕ
| РеализацияТоваровУслуг.Сс� �лка = &ТекущийДокумент";

Шапка = ЗапросШапка.Выполнить().Выб рать();
Шапка.Следующий();

Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);
Запрос.Текст ="ВЫБРАТЬ
| РеализацияТоваровУслугТов ары.Номенклатура КАК Номенклатура,
| РеализацияТоваровУслугТов ары.Номенклатура.Наименова ниеПолное КАК Товар,
| РеализацияТоваровУслугТов ары.Количество КАК Количество,
| РеализацияТоваровУслугТов ары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| РеализацияТоваровУслугТов ары.Цена КАК Цена,
| РеализацияТоваровУслугТов ары.Сумма КАК Сумма,
| РеализацияТоваровУслугТов ары.СтавкаНДС КАК СтавкаНДС,
| РеализацияТоваровУслугТов ары.СуммаНДС КАК СуммаНДС
|ИЗ
| Документ.РеализацияТоваро� �Услуг.Товары КАК РеализацияТоваровУслугТов ары
|ГДЕ
| РеализацияТоваровУслугТов ары.Ссылка = &ТекущийДокумент";

ТаблицаУслуги = Запрос.Выполнить().Выгрузит ь();


ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.ИмяПараметров� �ечати = "ПАРАМЕТРЫ_ПЕЧАТИ_Реализаци яТоваровУслугТовары";
Макет = ПолучитьМакет("Акт");

ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
НомерАкт = Шапка.Номер;
НомерАкт = ОбщегоНазначения.Получить� �омерНаПечать(СсылкаНаОбъе кт);
ОбластьМакета.Параметры.Но мер = "Акт № " + НомерАкт;
ТабДокумент.Вывести(Област ьМакета);

ОбластьМакета = Макет.ПолучитьОбласть("Дата");
ОбластьМакета.Параметры.Да та = Формат (Шапка.Дата, "ДФ=dd.MM.yyyy") + "г.";
ТабДокумент.Вывести(Област ьМакета);

ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
ТабДокумент.Вывести(Област ьМакета);


ОбластьСтроки = Макет.ПолучитьОбласть("Строка");
НомерСтроки = 0;

Для Каждого СтрокаТабличнойЧасти Из ТаблицаУслуги Цикл

НомерСтроки = НомерСтроки + 1;

ОбластьСтроки.Параметры.За полнить(СтрокаТабличнойЧа� �ти);
ОбластьСтроки.Параметры.Но мерСтроки = НомерСтроки;


ТабДокумент.Вывести(Област ьСтроки);

КонецЦикла;

Номенклатура = ОбластьСтроки.Параметры.То вар;

ОбластьМакета = Макет.ПолучитьОбласть("Тело");
РуководительР = Шапка.КонтактноеЛицо;
ОбластьМакета.Параметры.Те кст = Шапка.Контрагент + " в лице, " + ПадежП(Шапка.Должность, 2) + " " + Падеж(РуководительР)
+ ", действующего на основании Устава с одной стороны, и " + Шапка.Организация + " ";



ТабДокумент.Вывести(Област ьМакета);


Возврат ТабДокумент;

КонецФункции

Сергей Я
16.07.2013, 14:23
После цикла что это и зачем
Номенклатура = ОбластьСтроки.Параметры.То вар;
это обработка или просто из документа печать?

zlodei909
16.07.2013, 14:25
После цикла что это и зачем
Номенклатура = ОбластьСтроки.Параметры.То вар;
это обработка или просто из документа печать?

Это можно удалить, остался кусок от тестирования

Сергей Я
16.07.2013, 14:32
ошибок нет? в цикл добавь сообщение типа Сообщить(номерстроки); проверь цикл вообще есть?

zlodei909
16.07.2013, 14:43
ошибок нет? в цикл добавь сообщение типа Сообщить(номерстроки); проверь цикл вообще есть?

Ошибок нет, но цикл похоже не работает. Номер строки не выводит.

---------- Post added at 13:43 ---------- Previous post was at 13:38 ----------

Мне кажется что не правильно написан запрос который указан в вверху поста, т.к. пытался через консоль запросов вывести данные и их нет

Сергей Я
16.07.2013, 14:49
| РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент";

---------- Post added at 13:49 ---------- Previous post was at 13:43 ----------

так должно работать не на то ссылку указывал надо так
| РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент";

zlodei909
16.07.2013, 14:53
| РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент";

---------- Post added at 13:49 ---------- Previous post was at 13:43 ----------

так должно работать не на то ссылку указывал надо так
| РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент";

Пусто, нет данных

Сергей Я
16.07.2013, 15:23
сообщение выходит заменил еще строку установить параметр работал в форме объекта
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ТекущийДокумент", Ссылка);
Запрос.Текст ="ВЫБРАТЬ
| РеализацияТоваровУслугТов ары.Номенклатура КАК Номенклатура,
| РеализацияТоваровУслугТов ары.Номенклатура.Наименова ниеПолное КАК Товар,
| РеализацияТоваровУслугТов ары.Количество КАК Количество,
| РеализацияТоваровУслугТов ары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
| РеализацияТоваровУслугТов ары.Цена КАК Цена,
| РеализацияТоваровУслугТов ары.Сумма КАК Сумма,
| РеализацияТоваровУслугТов ары.СтавкаНДС КАК СтавкаНДС,
| РеализацияТоваровУслугТов ары.СуммаНДС КАК СуммаНДС
|ИЗ
| Документ.РеализацияТоваро� �Услуг.Товары КАК РеализацияТоваровУслугТов ары
|ГДЕ
| РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент";

ТаблицаУслуги = Запрос.Выполнить().Выгрузит ь();


НомерСтроки = 0;

Для Каждого СтрокаТабличнойЧасти Из ТаблицаУслуги Цикл

НомерСтроки = НомерСтроки + 1;
сообщить(НомерСтроки);

КонецЦикла;

zlodei909
16.07.2013, 15:49
Все равно не работает, может связано с тем что это внешняя печатная форма?

Bolzen
16.07.2013, 16:29
Может тупо документы без заполненной табличной части? Я повторил запрос в консоли, все работает. И предыдущий запрос не пустой.
1016

Тут файлик с запросом https://docs.google.com/file/d/0B-eUVAnrEVCkcGJVMEtOWXJXS2M/edit?usp=sharing
Можно открыть консолью и посмотреть, будет работать или нет.

ВЫБРАТЬ
РеализацияТоваровУслугТов ары.Номенклатура,
РеализацияТоваровУслугТов ары.Номенклатура.Наименова ниеПолное,
РеализацияТоваровУслугТов ары.Номенклатура.Наименова ние,
РеализацияТоваровУслугТов ары.Цена,
РеализацияТоваровУслугТов ары.Сумма,
РеализацияТоваровУслугТов ары.СтавкаНДС,
РеализацияТоваровУслугТов ары.СуммаНДС
ИЗ
Документ.РеализацияТоваро� �Услуг.Товары КАК РеализацияТоваровУслугТов ары
ГДЕ
РеализацияТоваровУслугТов ары.Ссылка.Ссылка = &ТекущийДокумент

Может как раз проблема с передачей параметра &ТекущийДокумент, не ссылка передается на документ.

zlodei909
16.07.2013, 16:42
Очень странно, все тоже самое, выводит заголовки столбцов, но данных нет, документы все с табличной частью, пробовал разные. Я так понимаю что он не видит сам &ТекущийДокумент, хотя параметр есть и выбираю разные документы из Реализации Товаров и Услуг. Прям загадка какая то.

P.S. Спасибо за помощь.

---------- Post added at 15:42 ---------- Previous post was at 15:42 ----------

Конфигурация БП 2.0.49.6

Bolzen
16.07.2013, 16:51
Проверь чтобы условие в запросе было "РеализацияТоваровУслугТов ары.Ссылка.Ссылка", а то ссылка на табличную часть получается, и работать не будет.

zlodei909
16.07.2013, 17:05
ДружиЩЩЩе спасибо тебе огромное, банальная невнимательность, все время делал обработки для Номенклатуры, а в этой компании продают услуги, следовательно я выбирал табличную часть Товары, а не Услуги.
Спасибо за помощь! :)

---------- Post added at 16:05 ---------- Previous post was at 15:51 ----------

Тема закрыта.