|
Автоупорядочивание в запросе. | ☑ | ||
---|---|---|---|---|
0
john_ddd
30.01.15
✎
12:53
|
Как можно сформировать этот запрос без АВТОУПОРЯДОЧИВАНИЕ, чтобы результат получился как с АВТОУПОРЯДОЧИВАНИЕм?
ВЫБРАТЬ ПодразделенияОрганизаций.Ссылка КАК Ссылка, ПодразделенияОрганизаций.Владелец КАК Владелец ИЗ Справочник.ПодразделенияОрганизаций КАК ПодразделенияОрганизаций УПОРЯДОЧИТЬ ПО Владелец, Ссылка ИЕРАРХИЯ АВТОУПОРЯДОЧИВАНИЕ |
|||
1
Cube
30.01.15
✎
12:54
|
(0) А что, религия запрещает?
|
|||
2
Cube
30.01.15
✎
12:55
|
А вообще, чтобы сортировалось так, как хочешь ты - сортируй по полям примитивных типов (строка, дата, булево), а не по ссылкам. И наступит у тебя счастье.
|
|||
3
john_ddd
30.01.15
✎
12:56
|
(1)нужно для скд (там нет в запросе автоупорядочивание), но скд не выводит на форму. Там потом циклами разбирается результат и выводиться в макет
|
|||
4
Cube
30.01.15
✎
12:57
|
(3) Сортировку делай в СКД и не надо лохматить бабушку.
|
|||
5
john_ddd
30.01.15
✎
12:58
|
(2) а как с простым типом данных сделать так?
Ссылка ИЕРАРХИЯ |
|||
6
Cube
30.01.15
✎
13:00
|
(5) Никак. Поэтому читай (4).
|
|||
7
john_ddd
30.01.15
✎
13:01
|
(4) не получается.
ДеревоДанных = Новый ДеревоЗначений; ПроцессорВывода.УстановитьОбъект(ДеревоДанных); ПроцессорВывода.Вывести(ПроцессорКомпоновки); дерево потом циклами разбирается и в макет выводится. |
|||
8
Cube
30.01.15
✎
13:03
|
(7) Если ты всё равно выводишь в макет, зачем это делаешь вручную?
|
|||
9
john_ddd
30.01.15
✎
13:08
|
(8)это типовая форма упп Т-3.
УнифицированнаяФормаТ3 мне ее надо доработать. |
|||
10
john_ddd
30.01.15
✎
13:10
|
(0)получается никак нельзя?
|
|||
11
Cube
30.01.15
✎
13:21
|
(10) Погодь, я на память не помню. То есть, ты утверждаешь, что если выводить результат СКД в дерево, то сортировка, заданная в СКД не применяется?
|
|||
12
john_ddd
30.01.15
✎
13:31
|
(11)да
|
|||
13
Cube
30.01.15
✎
13:34
|
(12) Не верю... (с)
|
|||
14
john_ddd
30.01.15
✎
14:46
|
(13)протестируй сам, если не лень...
(0)по теме...походу нельзя? |
|||
15
Cube
02.02.15
✎
07:40
|
(14) "протестируй сам, если не лень... "
Ну протестил - сортировка, указанная в СКД применяется и при выводе в табличный документ и при выводе в коллекцию значений. Скрин: http://storage1.static.itmages.ru/i/15/0202/h_1422851893_3866868_f4187feb7d.png Код: Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ДокументРезультат.Очистить(); Макет = ПолучитьМакет("Макет"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьСтрока = Макет.ПолучитьОбласть("Строка"); МояТЗ = Новый ТаблицаЗначений; МояТЗ.Колонки.Добавить("Поле1", Новый ОписаниеТипов("Строка")); Для Сч = 1 По 15 Цикл МояТЗ.Добавить().Поле1 = "Строка " + Сч; КонецЦикла; ВнешниеНаборыДанных = Новый Структура; ВнешниеНаборыДанных.Вставить("МояТЗ", МояТЗ); КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; Настройки = КомпоновщикНастроек.ПолучитьНастройки(); ОбластьЗаголовок.Параметры.Текст = "В табличный документ"; ДокументРезультат.Вывести(ОбластьЗаголовок); МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки); ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; ПроцессорВывода.УстановитьДокумент(ДокументРезультат); ПроцессорВывода.Вывести(ПроцессорКомпоновки); ОбластьЗаголовок.Параметры.Текст = "В коллекцию значений"; ДокументРезультат.Вывести(ОбластьЗаголовок); МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, ДанныеРасшифровки, , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений")); ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных; ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки); ДеревоЗначений = Новый ДеревоЗначений; ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений; ПроцессорВывода.УстановитьОбъект(ДеревоЗначений); ПроцессорВывода.Вывести(ПроцессорКомпоновки); Для Каждого СтрокаДерева Из ДеревоЗначений.Строки Цикл ОбластьСтрока.Параметры.Текст = СтрокаДерева.Поле1; ДокументРезультат.Вывести(ОбластьСтрока); КонецЦикла; КонецПроцедуры //ПриКомпоновкеРезультата() |
|||
16
john_ddd
02.02.15
✎
11:37
|
||||
17
Cube
02.02.15
✎
11:41
|
(16) Читай (1).
Я уже доказал, что настройки СКД учитываются при построении коллекции значений. И иерархия будет такой же, как в табличном документе. За тебя отчет написать? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |