|
Склад не выбран | ☑ | ||
---|---|---|---|---|
0
KonstantinK90
21.05.14
✎
07:31
|
здравствуйте! помогите с вопросом. сделал запрос все работает если параметр склад выбран, а если не выбран отчет не работает нужно сделать что бы если склад не выбран то отчет формировал по всем складам
вот код Процедура Сформировать(ТабличныйДокумент,НомерСтр) // Вставить содержимое обработчика. Запрос = Новый запрос; Запрос.Текст = "ВЫБРАТЬ | ПоступлениеТоваровУслуг.Контрагент КАК ГрузоОтправитель, | ПоступлениеТоваровУслуг.Получатель КАК ГрузоПолучатель, | Контрагенты.ИдентификационныйКодЛичности КАК ИИН_БИН, | ПоступлениеТоваровУслугТовары.Номенклатура КАК Вид_груза, | ПоступлениеТоваровУслугТовары.Количество КАК Кол_во, | ПоступлениеТоваровУслугТовары.Цена КАК Вес_груза, | ПоступлениеТоваровУслуг.Дата КАК Датаполучения, | ПоступлениеТоваровУслуг.Склад КАК Направ_е_рейса |ИЗ | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты | ПО ПоступлениеТоваровУслуг.Контрагент = Контрагенты.Ссылка | ПО ПоступлениеТоваровУслугТовары.Ссылка = ПоступлениеТоваровУслуг.Ссылка |ГДЕ | ПоступлениеТоваровУслуг.Дата МЕЖДУ &ДатаНач И &ДатаКон | И ПоступлениеТоваровУслуг.Склад = &Склад"; Запрос.УстановитьПараметр("ДатаНач",ДатаНач); Запрос.УстановитьПараметр("ДатаКон",ДатаКон); Запрос.УстановитьПараметр("Склад",Склад); Результат = Запрос.Выполнить().Выбрать(); СкладПустаяСсылка = Склад = Справочники.Склады.ПустаяСсылка(); ТабличныйДокумент = Новый ТабличныйДокумент; ТабличныйДокумент.Очистить(); ТабличныйДокумент.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт; ТабличныйДокумент.АвтоМасштаб = Истина; Макет = ПолучитьМакет("Макет"); //Заголовок Область = Макет.ПолучитьОбласть("Шапка"); ТабличныйДокумент.Вывести(Область); //СкладПрокурору НомерСтр = 1; Пока Результат.Следующий() Цикл //Шапка ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); ОбластьСтрока.Параметры.НомерСтр = НомерСтр; ОбластьСтрока.Параметры.ГрузоОтправитель = Результат.ГрузоОтправитель; ОбластьСтрока.Параметры.ГрузоОтправитель = Результат.ГрузоОтправитель; ОбластьСтрока.Параметры.ГрузоПолучатель = Результат.ГрузоПолучатель; ОбластьСтрока.Параметры.ИИН_БИН = Результат.ИИН_БИН; ОбластьСтрока.Параметры.Вид_груза = Результат.Вид_груза; ОбластьСтрока.Параметры.Кол_во = Результат.Кол_во; ОбластьСтрока.Параметры.Датаполучения = Результат.Датаполучения; ОбластьСтрока.Параметры.Направ_е_рейса = Результат.Направ_е_рейса; НомерСтр = НомерСтр + 1; Если Результат.Направ_е_рейса = Справочники.Склады.НайтиПоКоду("000000002") Тогда ОбластьСтрока.Параметры.Номер_Рейса = "2365"; Иначе КонецЕсли; ТабличныйДокумент.Вывести(ОбластьСтрока); КонецЦикла; //Область = Макет.ПолучитьОбласть("Подвал"); //Область.Параметры.Итого = ; //ТабДок.Вывести(Область); ТабличныйДокумент.ОтображатьСетку = Ложь; ТабличныйДокумент.Защита = Ложь; ТабличныйДокумент.ТолькоПросмотр = Ложь; ТабличныйДокумент.ОтображатьЗаголовки = Ложь; ТабличныйДокумент.Показать(); КонецПроцедуры |
8 |
||
1
BuHu
21.05.14
✎
07:40
|
Если ЗначениеЗаполнено(Склад) Тогда
Запрос.Текст=Запрос.Текст+" И ПоступлениеТоваровУслуг.Склад = &Склад"; КонецЕсли; или Склад.Выбран() |
|||
2
KonstantinK90
21.05.14
✎
07:43
|
а если не заполнено
|
3 4 |
||
3
BuHu
21.05.14
✎
07:44
|
(2) тогда это условие не нужно в запросе
|
|||
4
User_Agronom
21.05.14
✎
08:04
|
(2) Ты точно программист?
|
|||
5
Wobland
21.05.14
✎
08:12
|
а не воззвать ли к СКД?
|
6 |
||
6
Wobland
21.05.14
✎
08:16
|
+(5) и не проклясть ли получение данных из документов?
|
7 |
||
7
BuHu
21.05.14
✎
08:22
|
+(6) кстати да , если уж тяните данные из документов , то хоть условие ставьте на Проведенность документа
|
|||
8
el7cartel
21.05.14
✎
08:28
|
(0) а если сделать отбор, а не параметр? не попрет?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |