|
Заполнение СтрокаТЧ макета. | ☑ | ||
---|---|---|---|---|
0
Сергей333
20.09.17
✎
09:21
|
Здравствуйте. Подскажите пожалуйста что не так?
Пока ВыборкаНоменклатура.Следующий() Цикл //СтрокаТЧ ОбластьСтрока = Макет.ПолучитьОбласть("СтрокаТЧ|Наименование"); ОбластьСтрока.Параметры.Номенклатура = ВыборкаНоменклатура.Номенклатура; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Номенклатура.КодИгма |ИЗ | Справочник.Номенклатура КАК Номенклатура"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); СтруктураОтбора = Новый Структура(); Пока Выборка.Следующий() Цикл ОбластьСтрока.Параметры.Код = Выборка.КодИгма; ТабДок.Вывести(ОбластьСтрока); КонецЦикла; ТабДок.Вывести(ОбластьСтрока); ВыборкаХарактеристика = ВыборкаНоменклатура.Выбрать(); ТаблицаХарактеристик.ЗаполнитьЗначения(0, "Количество"); Пока ВыборкаХарактеристика.Следующий() Цикл Для каждого СтрокаТаблицы Из ТаблицаХарактеристик Цикл Если ВыборкаХарактеристика.ХарактеристикаНоменклатурыНаименование = СтрокаТаблицы.ХарактеристикаНоменклатурыНаименование Тогда СтрокаТаблицы.Количество = ВыборкаХарактеристика.КоличествоЗаказано; КонецЕсли; КонецЦикла; КонецЦикла; ОбластьСтрокаУпаковка = Макет.ПолучитьОбласть("СтрокаТЧ|Упаковка"); Для каждого СтрокаТаблицы Из ТаблицаХарактеристик Цикл ОбластьСтрокаУпаковка.Параметры.КоличествоЗаказано = СтрокаТаблицы.Количество; ТабДок.Присоединить(ОбластьСтрокаУпаковка); КонецЦикла; КонецЦикла; В запросе нужно вытащить "КодИгма" и соответственно заполнить в макете Параметр "Код". Этим кодом чего то не выходит, задваивает номенклатуру. |
|||
1
Lexey_
20.09.17
✎
09:33
|
(0) так "не выходит" или "задваивает"?
|
|||
2
catena
20.09.17
✎
09:35
|
А запрос принципиально по всему справочнику делать?
|
|||
3
Сергей333
20.09.17
✎
09:43
|
(2) Мне просто и спр. Номенклатура нужно вытащить в макет КодИгма и все.
|
|||
4
Ёпрст
20.09.17
✎
09:44
|
(0) всё в топку
|
|||
5
Ёпрст
20.09.17
✎
09:45
|
запрос в цикле, да еще и по всему справочнику.
Тут просится стальная линейка по пальчикам. ЗЫ: Показывай, откуда ВыборкаНоменклатура взялась |
|||
6
Сергей333
20.09.17
✎
09:50
|
(5) Функция ПечатьПогрузочныйЛист(ИмяМакета)
ТабДок = новый ТабличныйДокумент; //Макет = ПолучитьМакет("Печать"); Макет = ПолучитьМакет("ПогрузочныйЛист"); ОбластьШапки = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрокаТЧ = Макет.ПолучитьОбласть("СтрокаТЧ"); ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); ОбластьЗаголовокТаблицы = Макет.ПолучитьОбласть("ЗаголовокТаблицы|Наименование"); ОбластьУпаковка = Макет.ПолучитьОбласть("ЗаголовокТаблицы|Упаковка"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗаказПокупателяСводныйТовары.Маршрут КАК Маршрут, | ЗаказПокупателяСводныйТовары.Номенклатура КАК Номенклатура, | ЗаказПокупателяСводныйТовары.ХарактеристикаНоменклатуры, | ЗаказПокупателяСводныйТовары.КоличествоЗаказано, | ЗаказПокупателяСводныйТовары.ХарактеристикаНоменклатуры.Наименование КАК ХарактеристикаНоменклатурыНаименование |ИЗ | Документ.ЗаказПокупателяСводный.Товары КАК ЗаказПокупателяСводныйТовары |ГДЕ | ЗаказПокупателяСводныйТовары.Ссылка = &Ссылка | |СГРУППИРОВАТЬ ПО | ЗаказПокупателяСводныйТовары.Маршрут, | ЗаказПокупателяСводныйТовары.Номенклатура, | ЗаказПокупателяСводныйТовары.ХарактеристикаНоменклатуры, | ЗаказПокупателяСводныйТовары.КоличествоЗаказано, | ЗаказПокупателяСводныйТовары.ХарактеристикаНоменклатуры.Наименование |ИТОГИ ПО | Маршрут, | Номенклатура"; Запрос.УстановитьПараметр("Ссылка", Ссылка); РезультатЗапроса = Запрос.Выполнить(); ТаблицаХарактеристик = РезультатЗапроса.Выгрузить(); ТаблицаХарактеристик.Свернуть("ХарактеристикаНоменклатурыНаименование",); ТаблицаХарактеристик.Колонки.Добавить("Количество"); ВыборкаМаршрут = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаМаршрут.Следующий() Цикл //Шапка Шапка = Макет.ПолучитьОбласть("Шапка"); Шапка.Параметры.Дата = Формат(Дата, "ДЛФ=DD"); Шапка.Параметры.ДатаВремя = ТекущаяДата(); Шапка.Параметры.Маршрут = ВыборкаМаршрут.Маршрут; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ТранспортныеСредства.Водитель, | ТранспортныеСредства.ГосНомерТранспортногоСредства |ИЗ | Справочник.ТранспортныеСредства КАК ТранспортныеСредства"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); СтруктураОтбора = Новый Структура(); Пока Выборка.Следующий() Цикл Шапка.Параметры.Имя = Выборка.Водитель; Шапка.Параметры.ГосНомер = Выборка.ГосНомерТранспортногоСредства; КонецЦикла; ТабДок.Вывести(Шапка); ТабДок.Вывести(ОбластьЗаголовокТаблицы); Для каждого СтрокаТаблицы Из ТаблицаХарактеристик Цикл Если ПустаяСтрока(СтрокаТаблицы.ХарактеристикаНоменклатурыНаименование) Тогда ОбластьУпаковка.Параметры.ИмяКолонка = "Без упаковки"; Иначе ОбластьУпаковка.Параметры.ИмяКолонка = СтрокаТаблицы.ХарактеристикаНоменклатурыНаименование; КонецЕсли; ТабДок.Присоединить(ОбластьУпаковка); КонецЦикла; ВыборкаНоменклатура = ВыборкаМаршрут.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаНоменклатура.Следующий() Цикл //СтрокаТЧ ОбластьСтрока = Макет.ПолучитьОбласть("СтрокаТЧ|Наименование"); ОбластьСтрока.Параметры.Номенклатура = ВыборкаНоменклатура.Номенклатура; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Номенклатура.КодИгма |ИЗ | Справочник.Номенклатура КАК Номенклатура"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); СтруктураОтбора = Новый Структура(); Пока Выборка.Следующий() Цикл ОбластьСтрока.Параметры.Код = Выборка.КодИгма; ТабДок.Вывести(ОбластьСтрока); КонецЦикла; ТабДок.Вывести(ОбластьСтрока); ВыборкаХарактеристика = ВыборкаНоменклатура.Выбрать(); ТаблицаХарактеристик.ЗаполнитьЗначения(0, "Количество"); Пока ВыборкаХарактеристика.Следующий() Цикл Для каждого СтрокаТаблицы Из ТаблицаХарактеристик Цикл Если ВыборкаХарактеристика.ХарактеристикаНоменклатурыНаименование = СтрокаТаблицы.ХарактеристикаНоменклатурыНаименование Тогда СтрокаТаблицы.Количество = ВыборкаХарактеристика.КоличествоЗаказано; КонецЕсли; КонецЦикла; КонецЦикла; ОбластьСтрокаУпаковка = Макет.ПолучитьОбласть("СтрокаТЧ|Упаковка"); Для каждого СтрокаТаблицы Из ТаблицаХарактеристик Цикл ОбластьСтрокаУпаковка.Параметры.КоличествоЗаказано = СтрокаТаблицы.Количество; ТабДок.Присоединить(ОбластьСтрокаУпаковка); КонецЦикла; КонецЦикла; //Подвал Подвал = Макет.ПолучитьОбласть("Подвал"); Подвал.Параметры.Заполнить(ЭтотОбъект); Подвал.Параметры.Кладовщик = Ответственный; ТабДок.Вывести(Подвал); ТабДок.ВывестиГоризонтальныйРазделительСтраниц(); КонецЦикла; ТабДок.Показать(); Возврат 0; КонецФункции |
|||
7
Ёпрст
20.09.17
✎
09:52
|
(6) вот туда добавь
| ЗаказПокупателяСводныйТовары.Номенклатура.КодИгма КАК КодИгма , и выкинь свой нелепый запрос по номенклатуре из кода. |
|||
8
Сергей333
20.09.17
✎
10:06
|
(7) Спасибо большое) Извини за такие глупые темы. Просто начинаю осваивать 1С.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |