|
УФ Отчеты Проблема с изменением варианта отчета | ☑ | ||
---|---|---|---|---|
0
Krolik Bezobraznik
15.06.20
✎
15:01
|
Добрый день, есть отчет. В СКД в качестве набора данных используется объект, в который в обработчике ПриКомпоновкеРезультата в модуле объекта отчета я передаю некую ТЗ. В СКД я задаю параметры сортировки. Сортировка работает, но если я изменяю вариант отчета, а именно укажу иное поле сортировки, то сортируется все равно по тому полю, которое указано через конфигуратор, кто сталкивался, подскажите где искать проблему.
|
|||
1
Franchiser
гуру
15.06.20
✎
15:19
|
Какой код?
ПолучитьНастройки() в коде используешь? |
|||
2
Krolik Bezobraznik
15.06.20
✎
15:29
|
(1) СтандартнаяОбработка = Ложь;
СхемаСКД = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); КомпановщикМакетаКД = Новый КомпоновщикМакетаКомпоновкиДанных; МакетКД = КомпановщикМакетаКД.Выполнить(СхемаСКД, СхемаСКД.НастройкиПоУмолчанию); Если Склад.Пустая() Тогда ВызватьИсключение("Необходимо выбрать склад ГП"); КонецЕсли; Если ДатаФормирования = Дата(1,1,1,1,1,1) Тогда ВызватьИсключение("Укажите дату остатков"); КонецЕсли; Если НачалоДня(ДатаФормирования) = НачалоДня(ТекущаяДата()) Тогда ДатаДляСреза = ТекущаяДата(); СтокНаСкладе = ТекущийСтокСклада(); Иначе ДатаДляСреза = КонецДня(ДатаФормирования) - 299; СтокНаСкладе = СтокСклада(); КонецЕсли; Запрос=новый Запрос; Запрос.Текст="ВЫБРАТЬ | ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура, | ТоварыНаСкладахОстатки.КоличествоОстаток, | ТоварыНаСкладахОстатки.КоличествоОстаток * ТоварыНаСкладахОстатки.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоличествоМинимальноеПо1С |ПОМЕСТИТЬ Врем1С |ИЗ | РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаОстатков, ) КАК ТоварыНаСкладахОстатки |ГДЕ | ТоварыНаСкладахОстатки.Склад = &Склад |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВЫРАЗИТЬ(ОстаткиПоWMS.КоличествоВМинЕдиницахИзмерения КАК ЧИСЛО(10, 0)) КАК КоличествоПоWMS, | ОстаткиПоWMS.Номенклатура |ПОМЕСТИТЬ ВремWMS |ИЗ | &ОстаткиПоWMS КАК ОстаткиПоWMS |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЕСТЬNULL(ВремWMS.КоличествоПоWMS, 0) КАК КоличествоПоWMS, | ЕСТЬNULL(Врем1С.Номенклатура, ВремWMS.Номенклатура) КАК Номенклатура, | ЕСТЬNULL(Врем1С.КоличествоМинимальноеПо1С, 0) КАК КоличествоПо1С |ИЗ | Врем1С КАК Врем1С | ПОЛНОЕ СОЕДИНЕНИЕ ВремWMS КАК ВремWMS | ПО Врем1С.Номенклатура = ВремWMS.Номенклатура"; Запрос.УстановитьПараметр("ОстаткиПоWMS",СтокНаСкладе); Запрос.УстановитьПараметр("ДатаОстатков", КонецДня(ДатаФормирования)); Запрос.УстановитьПараметр("Склад", Склад); ТТТ = Запрос.Выполнить().Выгрузить(); ВнешниеНаборыДанных = новый Структура("СводныеДанные", ТТТ); ПроцессорКД = новый ПроцессорКомпоновкиДанных; ПроцессорКД.Инициализировать(МакетКД, ВнешниеНаборыДанных ); ПроцессорВывода = новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКД, истина); |
|||
3
Franchiser
гуру
15.06.20
✎
15:33
|
(2) Все неправильно.
Есть уже объект компоновщик настроек, зачем его переопределять? Нужно выполнить ПолучитьНастройки(), в этом случае пользовательские настройки наложаться на настройки из схемы и эти объединенные настройки уже можешь применять. |
|||
4
Krolik Bezobraznik
15.06.20
✎
15:38
|
(3) Вы имеете ввиду конструктор новый КомпоновщикМакетаКомпоновкиДанных?
|
|||
5
Franchiser
гуру
15.06.20
✎
15:38
|
МакетКД = КомпановщикМакетаКД.Выполнить(СхемаСКД, КомпоновщикНастроек.ПолучитьНастройки());
|
|||
6
Franchiser
гуру
15.06.20
✎
15:42
|
(4) имею в виду в твоем коде нигде пользовательские настройки не учитываются никак
|
|||
7
Krolik Bezobraznik
15.06.20
✎
15:44
|
(6) Я тебя понял, спасибо добрый человек. Сейчас поправлю код.
|
|||
8
Krolik Bezobraznik
15.06.20
✎
15:49
|
(6) Твоя правда. Плюс тебе в карму. Спасибо.
|
|||
9
Krolik Bezobraznik
15.06.20
✎
15:49
|
Закройте пожалуйста
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |