![]() |
|
Как отключить объединение одинаковых позиций в обработке табличной части? 🠗 (Волшебник 09.02.2017 15:55) |
☑ | ||
---|---|---|---|---|
0
BayJay
09.02.17
✎
15:55
|
Всем привет! Возникла такая проблема, обьясню все по порядку.
Создаем новый отчет о розничных продажах, нажимаем "Изменить" -> "Добавить из документа" -> "Отчеты о розничных продажах", выбираем нужный отчет и нажимаем "Выполнить".. Обработка автоматически складывает одинаковые позиции в одну, хотя нам нужно чтобы они были отдельно. Что нужно закомментить и где?) |
|||
1
Волшебник
модератор
09.02.17
✎
15:55
|
мдя...
|
|||
2
Волшебник
модератор
09.02.17
✎
15:55
|
||||
3
1Снеговик
гуру
09.02.17
✎
15:56
|
Группировку закомментить в запросе)
|
|||
4
BayJay
10.02.17
✎
07:43
|
В конфигураторе нашел вот это. Что нужно закомментировать?
[quote] Если СтрокаТабличнойЧасти <> Неопределено Тогда Если СтрокаТабличнойЧасти.Пометка Тогда // Нашли, увеличиваем количество в первой найденной строке. СтрокаТабличнойЧасти.Количество = СтрокаТабличнойЧасти.Количество + Количество; // Рассчитать реквизиты табличной части. ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ЭлементыФормы.Товары.Колонки.СуммаНДС.Видимость Тогда ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("КоличествоМест", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; КонецЕсли; Иначе // Не нашли - добавляем новую строку. СтрокаТабличнойЧасти = ТабличнаяЧасть.Добавить(); СтрокаТабличнойЧасти.Пометка = Истина; СтрокаТабличнойЧасти.Номенклатура = Номенклатура; СтрокаТабличнойЧасти.Количество = Количество; СтрокаТабличнойЧасти.ЕдиницаИзмерения = ЕдиницаИзмерения; СтрокаТабличнойЧасти.ЕдиницаИзмеренияМест = ЕдиницаИзмеренияМест; СтрокаТабличнойЧасти.Коэффициент = СтрокаТабличнойЧасти.ЕдиницаИзмерения.Коэффициент; СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры = Характеристика; СтрокаТабличнойЧасти.СерияНоменклатуры = Серия; СтрокаТабличнойЧасти.Качество = Качество; СтрокаТабличнойЧасти.Цена = ЦенаВВалютеДокумента; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ПроцентСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.ПроцентСкидкиНаценки= СтрокаТаблицы.ПроцентСкидкиНаценки; КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ОграничениеСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.ОграничениеСкидкиНаценки = ОграничениеСкидкиНаценки; КонецЕсли; Если мЕстьСклад И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Склад", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.Склад = Склад; КонецЕсли; ОбработкаТабличныхЧастей.ЗаполнитьСтавкуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); // Рассчитываем реквизиты табличной части. ОбработкаТабличныхЧастей.ЗаполнитьПроцентРозничнойНаценкиТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ОбщегоНазначения.ЕстьРеквизитДокумента("ПроцентРозничнойНаценки", мМетаданныеДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьРозничнуюЦенуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, мВалютаРегламентированногоУчета); КонецЕсли; ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ЭлементыФормы.Товары.Колонки.СуммаНДС.Видимость Тогда ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("КоличествоМест", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; КонецЕсли; // СтрокаТабличнойЧасти <> Неопределено КонецЦикла; ПересчитатьАвтоматическиеСкидки(); [/quote] |
|||
5
BayJay
10.02.17
✎
07:47
|
чуть больше скопировал с конфигуратора
[quote] // Ищем выбранную позицию в таблице подобранной номенклатуры. // Если найдем - увеличим количество; не найдем - добавим новую строку. СтруктураОтбора = Новый Структура(); СтруктураОтбора.Вставить("Номенклатура", Номенклатура); Если Характеристика <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ХарактеристикаНоменклатуры", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("ХарактеристикаНоменклатуры", Характеристика); КонецЕсли; Если Серия <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("СерияНоменклатуры", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("СерияНоменклатуры", Серия); КонецЕсли; Если ЕдиницаИзмерения <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ЕдиницаИзмерения", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("ЕдиницаИзмерения", ЕдиницаИзмерения); КонецЕсли; Если ЕдиницаИзмеренияМест <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ЕдиницаИзмеренияМест", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("ЕдиницаИзмеренияМест", СтрокаТаблицы.ЕдиницаИзмеренияМест); КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Цена", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("Цена", Окр(ЦенаВВалютеДокумента, 2)); КонецЕсли; Если ПроцентСкидкиНаценки <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ПроцентСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("ПроцентСкидкиНаценки", ПроцентСкидкиНаценки); КонецЕсли; Если ОграничениеСкидкиНаценки <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ОграничениеСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("ОграничениеСкидкиНаценки", ОграничениеСкидкиНаценки); КонецЕсли; Если мЕстьСклад И Склад <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Склад", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("Склад", Склад); КонецЕсли; Если Качество <> Неопределено И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Качество", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтруктураОтбора.Вставить("Качество", Качество); КонецЕсли; СтрокаТабличнойЧасти = ОбработкаТабличныхЧастей.НайтиСтрокуТабЧасти(ТабличнаяЧасть, СтруктураОтбора); Если СтрокаТабличнойЧасти <> Неопределено Тогда Если СтрокаТабличнойЧасти.Пометка Тогда // Нашли, увеличиваем количество в первой найденной строке. СтрокаТабличнойЧасти.Количество = СтрокаТабличнойЧасти.Количество + Количество; // Рассчитать реквизиты табличной части. ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ЭлементыФормы.Товары.Колонки.СуммаНДС.Видимость Тогда ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("КоличествоМест", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; КонецЕсли; Иначе // Не нашли - добавляем новую строку. СтрокаТабличнойЧасти = ТабличнаяЧасть.Добавить(); СтрокаТабличнойЧасти.Пометка = Истина; СтрокаТабличнойЧасти.Номенклатура = Номенклатура; СтрокаТабличнойЧасти.Количество = Количество; СтрокаТабличнойЧасти.ЕдиницаИзмерения = ЕдиницаИзмерения; СтрокаТабличнойЧасти.ЕдиницаИзмеренияМест = ЕдиницаИзмеренияМест; СтрокаТабличнойЧасти.Коэффициент = СтрокаТабличнойЧасти.ЕдиницаИзмерения.Коэффициент; СтрокаТабличнойЧасти.ХарактеристикаНоменклатуры = Характеристика; СтрокаТабличнойЧасти.СерияНоменклатуры = Серия; СтрокаТабличнойЧасти.Качество = Качество; СтрокаТабличнойЧасти.Цена = ЦенаВВалютеДокумента; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ПроцентСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.ПроцентСкидкиНаценки= СтрокаТаблицы.ПроцентСкидкиНаценки; КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("ОграничениеСкидкиНаценки", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.ОграничениеСкидкиНаценки = ОграничениеСкидкиНаценки; КонецЕсли; Если мЕстьСклад И ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("Склад", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда СтрокаТабличнойЧасти.Склад = Склад; КонецЕсли; ОбработкаТабличныхЧастей.ЗаполнитьСтавкуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); // Рассчитываем реквизиты табличной части. ОбработкаТабличныхЧастей.ЗаполнитьПроцентРозничнойНаценкиТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ОбщегоНазначения.ЕстьРеквизитДокумента("ПроцентРозничнойНаценки", мМетаданныеДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьРозничнуюЦенуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект, мВалютаРегламентированногоУчета); КонецЕсли; ОбработкаТабличныхЧастей.РассчитатьСуммуТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); Если ЭлементыФормы.Товары.Колонки.СуммаНДС.Видимость Тогда ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; Если ОбщегоНазначения.ЕстьРеквизитТабЧастиДокумента("КоличествоМест", мМетаданныеДокумента, мИмяТабличнойЧастиДокумента) Тогда ОбработкаТабличныхЧастей.РассчитатьКоличествоМестТабЧасти(СтрокаТабличнойЧасти, ДокументОбъект); КонецЕсли; КонецЕсли; // СтрокаТабличнойЧасти <> Неопределено КонецЦикла; [/quote] |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |