|
унф счет покупателю типовой сгиупировать | ☑ | ||
---|---|---|---|---|
0
Raideres
14.12.20
✎
22:29
|
Добрый день не пойму как сделать следующее...
у меня есть типовая печатная форма СЧЕТ на оплату в типовой она не свернутая а сколько срок в тч столько и в результате а у нас получаются что есть партии и в документе может быть 100-200 штук с одинаковой номенклатурой характеристиками но разными партиями подскажите как можно свернуть ТаблицаЗапасы чтоб не было такой кучи строк . вот код из типовой [CODE] Запрос = Новый Запрос(); Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); Запрос.Текст = "ВЫБРАТЬ | ЗаказПокупателя.Ссылка КАК Ссылка, | ЗаказПокупателя.Номер КАК Номер, | ЗаказПокупателя.Дата КАК ДатаДокумента, | ЗаказПокупателя.Организация КАК Организация, | ЗаказПокупателя.Контрагент КАК Контрагент, | ЗаказПокупателя.СуммаВключаетНДС КАК СуммаВключаетНДС, | ЗаказПокупателя.ВалютаДокумента КАК ВалютаДокумента, | ЗаказПокупателя.Ответственный КАК Ответственный, | ЗаказПокупателя.Организация.Префикс КАК Префикс, | ЗаказПокупателя.ОсновнойВариантКП КАК ОсновнойВариантКП, | ЗаказПокупателя.ОжидаетсяВыборВариантаКП КАК ОжидаетсяВыборВариантаКП, | ЗаказПокупателя.СпособДоставки КАК СпособДоставки, | ЗаказПокупателя.Вес КАК Вес, | ВЫБОР | КОГДА ЗаказПокупателя.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЗаказПокупателя.ЗаказНаряд) | ИЛИ ЗаказПокупателя.СпособДоставки В (ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.ПустаяСсылка), ЗНАЧЕНИЕ(Перечисление.СпособыДоставки.Самовывоз)) | ТОГДА ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | ИНАЧЕ ЗаказПокупателя.НоменклатураДоставки | КОНЕЦ КАК НоменклатураДоставки, | ВЫБОР | КОГДА (ВЫРАЗИТЬ(ЗаказПокупателя.НоменклатураДоставки.НаименованиеПолное КАК СТРОКА(1000))) = """" | ТОГДА ЗаказПокупателя.НоменклатураДоставки.Наименование | ИНАЧЕ ВЫРАЗИТЬ(ЗаказПокупателя.НоменклатураДоставки.НаименованиеПолное КАК СТРОКА(1000)) | КОНЕЦ КАК ПредставлениеНоменклатурыДоставки, | ЗаказПокупателя.НоменклатураДоставки.Код КАК КодДоставки, | ЗаказПокупателя.НоменклатураДоставки.Артикул КАК АртикулДоставки, | ЗаказПокупателя.НоменклатураДоставки.ЕдиницаИзмерения КАК ЕдиницаИзмеренияДоставки, | ЗаказПокупателя.СтоимостьДоставки КАК СтоимостьДоставки, | ЗаказПокупателя.СуммаНДСДоставки КАК СуммаНДСДоставки, | ЗаказПокупателя.СтавкаНДСДоставки КАК СтавкаНДСДоставки, | ЗаказПокупателя.Работы.( | НомерСтроки КАК НомерСтроки, | 0 КАК НомерВариантаКП, | ВЫБОР | КОГДА (ВЫРАЗИТЬ(ЗаказПокупателя.Работы.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))) = """" | ТОГДА ЗаказПокупателя.Работы.Номенклатура.Наименование | ИНАЧЕ ВЫРАЗИТЬ(ЗаказПокупателя.Работы.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) | КОНЕЦ КАК ПредставлениеНоменклатуры, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | Номенклатура.ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения, | ЗаказПокупателя.Работы.Количество * ЗаказПокупателя.Работы.Коэффициент * ЗаказПокупателя.Работы.Кратность КАК Количество, | Цена КАК Цена, | Сумма КАК Сумма, | СтавкаНДС КАК СтавкаНДС, | СуммаНДС КАК СуммаНДС, | Всего КАК Всего, | 0 КАК Вес, | Характеристика КАК Характеристика, | ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки, | ВЫБОР | КОГДА ЗаказПокупателя.Работы.ПроцентСкидкиНаценки <> 0 | ИЛИ ЗаказПокупателя.Работы.СуммаАвтоматическойСкидки <> 0 | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ КАК ЕстьСкидка, | Содержание КАК Содержание, | Ссылка.Старт КАК ДатаОтгрузки, | СуммаАвтоматическойСкидки КАК СуммаАвтоматическойСкидки, | ЛОЖЬ КАК ЭтоРазделитель, | ЛОЖЬ КАК ЭтоНабор, | ВЫБОР | КОГДА ЗаказПокупателя.Работы.НоменклатураНабора <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | И ЗаказПокупателя.Работы.НоменклатураНабора.ВариантПечатиНабора = ЗНАЧЕНИЕ(Перечисление.ВариантыПечатиНаборов.НаборИКомплектующие) | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ КАК НеобходимоВыделитьКакСоставНабора, | НоменклатураНабора КАК НоменклатураНабора, | ХарактеристикаНабора КАК ХарактеристикаНабора | ) КАК ТаблицаРаботыУслуги, | ЗаказПокупателя.Запасы.( | НомерСтроки КАК НомерСтроки, | НомерВариантаКП КАК НомерВариантаКП, | ВЫБОР | КОГДА ТИПЗНАЧЕНИЯ(ЗаказПокупателя.Запасы.Номенклатура) = ТИП(СТРОКА) | ТОГДА ЗаказПокупателя.Запасы.Номенклатура | КОГДА (ВЫРАЗИТЬ(ЗаказПокупателя.Запасы.Номенклатура.НаименованиеПолное КАК СТРОКА(1000))) = """" | ТОГДА ЗаказПокупателя.Запасы.Номенклатура.Наименование | ИНАЧЕ ВЫРАЗИТЬ(ЗаказПокупателя.Запасы.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) | КОНЕЦ КАК ПредставлениеНоменклатуры, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, | ЕдиницаИзмерения.Наименование КАК ЕдиницаИзмерения, | Количество КАК Количество, | Цена КАК Цена, | Сумма КАК Сумма, | СтавкаНДС КАК СтавкаНДС, | СуммаНДС КАК СуммаНДС, | Всего КАК Всего, | Вес КАК Вес, | ВЫБОР | КОГДА ЗаказПокупателя.Запасы.Ссылка.ВидОперации = ЗНАЧЕНИЕ(Перечисление.ВидыОперацийЗаказПокупателя.ЗаказНаряд) | ТОГДА ЗаказПокупателя.Запасы.Ссылка.Старт | ИНАЧЕ ЗаказПокупателя.Запасы.ДатаОтгрузки | КОНЕЦ КАК ДатаОтгрузки, | Характеристика КАК Характеристика, | Содержание КАК Содержание, | ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки, | ВЫБОР | КОГДА ЗаказПокупателя.Запасы.ПроцентСкидкиНаценки <> 0 | ИЛИ ЗаказПокупателя.Запасы.СуммаАвтоматическойСкидки <> 0 | ТОГДА 1 | ИНАЧЕ 0 | КОНЕЦ КАК ЕстьСкидка, | СуммаАвтоматическойСкидки КАК СуммаАвтоматическойСкидки, | ЭтоРазделитель КАК ЭтоРазделитель, | ЛОЖЬ КАК ЭтоНабор, | ВЫБОР | КОГДА ЗаказПокупателя.Запасы.НоменклатураНабора <> ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка) | И ЗаказПокупателя.Запасы.НоменклатураНабора.ВариантПечатиНабора = ЗНАЧЕНИЕ(Перечисление.ВариантыПечатиНаборов.НаборИКомплектующие) | ТОГДА ИСТИНА | ИНАЧЕ ЛОЖЬ | КОНЕЦ КАК НеобходимоВыделитьКакСоставНабора, | НоменклатураНабора КАК НоменклатураНабора, | ХарактеристикаНабора КАК ХарактеристикаНабора | ) КАК ТаблицаЗапасы, | ЗаказПокупателя.ДобавленныеНаборы.( | НоменклатураНабора КАК НоменклатураНабора, | ХарактеристикаНабора КАК ХарактеристикаНабора, | НомерВариантаКП КАК НомерВариантаКП, | Количество КАК Количество, | ВЫБОР | КОГДА (ВЫРАЗИТЬ(ЗаказПокупателя.ДобавленныеНаборы.НоменклатураНабора.НаименованиеПолное КАК СТРОКА(1000))) = """" | ТОГДА ЗаказПокупателя.ДобавленныеНаборы.НоменклатураНабора.Наименование | ИНАЧЕ ВЫРАЗИТЬ(ЗаказПокупателя.ДобавленныеНаборы.НоменклатураНабора.НаименованиеПолное КАК СТРОКА(1000)) | КОНЕЦ КАК ЗапасНабора, | НоменклатураНабора.ВариантПечатиНабора КАК ВариантПечатиНабора, | НоменклатураНабора.ТипНоменклатуры КАК ТипНоменклатурыНабора, | НоменклатураНабора.Артикул КАК АртикулНабора, | НоменклатураНабора.Код КАК КодНабора, | НоменклатураНабора.ЕдиницаИзмерения КАК ЕдиницаИзмеренияНабора, | НоменклатураНабора.ЕдиницаИзмерения.Код КАК КодЕдиницыИзмеренияНабора, | ИСТИНА КАК ВыводитьИтоги | ) КАК ТаблицаДобавленныеНаборы |ИЗ | Документ.ЗаказПокупателя КАК ЗаказПокупателя |ГДЕ | ЗаказПокупателя.Ссылка В(&МассивОбъектов) | И (ЗаказПокупателя.ОсновнойВариантКП = 0 | ИЛИ ЗаказПокупателя.Запасы.НомерВариантаКП = ЗаказПокупателя.ОсновнойВариантКП) | |УПОРЯДОЧИТЬ ПО | Ссылка, | ЗаказПокупателя.Работы.НомерСтроки, | ЗаказПокупателя.Запасы.НомерСтроки"; ДанныеДокументов = Запрос.Выполнить().Выгрузить(); ДоставкаСервер.ДобавитьСтрокуДоставкиУниверсальныеДанные(ДанныеДокументов); [/CODE] |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |