Имя: Пароль:
1C
 
Отбор СКД в запросе (Маньяк, заходи)
0 Defender aka LINN
 
06.04.11
21:22
Т.к. тупнякая Мани не выдержал даже сервер и самоубил ветку v8: 8.2 Убрали построитель в отчетах но ПОЧЕМУ в запросах конструктора он есть, выкладываю тут: http://ifolder.ru/22819989
Маня, можешь начинать биться головой.
1 Новиков
 
06.04.11
21:23
=) надо качать пока ифолдер не лег
2 Reaper_1c
 
06.04.11
21:24
Ага, Маня счас будет вот эту карту разыгрывать:
http://ru.fishki.net/picsw/042011/06/post/demos/demos_014.jpg
3 artik2
 
06.04.11
21:32
По-моему уже лег
4 Варвар
 
06.04.11
21:39
и не лениво же было. И ради ково, ради чево?
5 Defender aka LINN
 
06.04.11
21:42
(4) Ради справедливости. А то он уже начал теории строить разные, вместо того, чтобы сделать то, что ему говорят :)
6 zak555
 
06.04.11
21:45
(0) что там ?
7 luns
 
06.04.11
21:46
(6) отчет по прибыли профсоюза вестимо
8 Варвар
 
06.04.11
21:50
(5) никто не оценит. Но молодец :)
9 bazvan
 
06.04.11
22:03
(0) Респект и уважуха.
10 zak555
 
06.04.11
22:04
11 Варвар
 
06.04.11
22:05
(10) маня починил? :))
12 unknown181538
 
06.04.11
22:07
"Мне эта тема интересна...", или как там надо...
13 Лефмихалыч
 
06.04.11
22:10
(0) нашел кому объяснять. У Мани резистенс против аргументов и правильных ответов за девять тысяч зашкаливает...
14 trdm
 
06.04.11
22:11
(0) >> Маня, можешь начинать биться головой.
Он дошел до своего уровня некомпетентности? :)
15 luns
 
06.04.11
22:13
блин. его уровень еще ниже чем я предполагал
"полная программная управляемость. скд чота не дает такой возможности." бугага
16 zak555
 
06.04.11
22:17
17 Варвар
 
06.04.11
22:18
(15) ты тока заметил ту ветку?
18 also
 
06.04.11
22:25
(0) красава :)
19 luns
 
06.04.11
22:55
(17) ага. как тока такой шедевр мимо прошел. я видать работал (((
кстати стиль его общения в той ветке, почти на 100% с г1с схож.
все тупые. платформа шлак (ну в тех частях что он не знает)
20 el-gamberro
 
06.04.11
22:57
Ничего вы не понимаете. Маня есмъ настоящий 1с-ник: Тупой, Ленивый и Жадный.
21 Варвар
 
06.04.11
23:25
(19) не, маня немного иначе общается. Шедевр еще тот.
Ростовская аномалия, хуле :)
22 Варвар
 
06.04.11
23:26
(20) нет, он не ленивый, и не жадный. Работает задешево. Но зарабатывает от 300 000 евро/мес
23 Злобный Фей
 
06.04.11
23:29
Где тут в манины фанаты записывают?
24 Варвар
 
06.04.11
23:34
(23) на сабсистемс
25 Immortal
 
07.04.11
00:16
жесть..
26 Eugeneer
 
17.04.11
17:55
(0) РЕШЕНИЕ НЕ РАБОЧЕЕ.
27 Eugeneer
 
17.04.11
17:56
(0) потратил день на эту хрень? и в чем её смысл?
Я не увидел программной выбоки результата запроса и вывода макета. ГДЕ ЭТО?
28 Eugeneer
 
17.04.11
18:01
И где отборы ???

"Запрос = Новый ЗАпрос;
   Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;
   Для Каждого ПараметрЗапроса Из Макет.ЗначенияПараметров Цикл
       Запрос.УстановитьПараметр(ПараметрЗапроса.Имя, ПараметрЗапроса.Значение);
   КонецЦикла;
"

1) где отбдор? у не вижу?!?! нафига мне ПАРМАЕТР. я просил запрос с отборами {}
а конкретно - если на форме расположен отбор компоновщика то в запрос ти отборы должны передаваться не параметрами, а конструкицей {} - Которая позволяет обрабатывать запрос только в случае если отбор был задан!
2) Конструкции отбора должны учитывать ВСЁ условия (виды сравнения) - в списке, в группе, в иерархии. не в писке и т.д. и т.п. ГДЕ ЭТО?
3) ГДЕ ВЫБОРКА ЗАПРОСА? в виде выборки по группировкам с иерархией и т.д. и т.п. УЧИТЫВАЯ что в любой группировке некоторого уровня может быть использовано обращение в другому запросу. или Конструкции ВСЕ записи (даже нулевые)

ГДЕ ТО ВСЁ?! (0) ты реально ступил со своим решением. которое не решает задачу которую я задал.
29 Immortal
 
17.04.11
18:05
(28)не тупи
30 Immortal
 
17.04.11
18:05
возьми типовую..УТ 11.0.6 и посмотри там обработку Печать этикеток и ценников
31 Eugeneer
 
17.04.11
18:05
4) хорош тупить. и конкретно сам глянь что получится с
Запрос = Новый ЗАпрос;
Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;

А) Запрос СКД не перенесется полным текстом в обычный запрос! А именно не перенусутся конструкции типа {}, которые исползуются в любом случае в обычном запрос. т.к. там есть участки запросов которые зависят от этих конструкций.
Б) В СКД - НЕТ ИТОГОВ. А это значит что в запросе не будет конструкции ИТОГИ ПО.
Ты не сможешь сделать выборку !!!
32 Eugeneer
 
17.04.11
18:06
(30) более детально что смотреть?
33 Immortal
 
17.04.11
18:07
блаблабла
можно получить запрос из компоновки, если что
34 Immortal
 
17.04.11
18:08
я просто кода не вижу, там откуда запрос, из СКД или из компоновки?
35 Immortal
 
17.04.11
18:08
тьфу, из схемы или из компоновки?
36 Eugeneer
 
17.04.11
18:10
Посмотрел печать тикеток. Там тоже самое что в (0)
там параметры а не отборы. а мне не нужны параметры!
37 Eugeneer
 
17.04.11
18:10
(34) в СКД нету конструкция типа ИТОГИ ПО а это очень важно!
38 Eugeneer
 
17.04.11
18:11
и я так и не увидел решения с отборами. я увидел только параметры. а это вообще не в ту степь.
39 Immortal
 
17.04.11
18:18
(38)нах те отборы, они уже все заданы, тебе только параметры задать и все
40 Eugeneer
 
17.04.11
18:18
Решения не существует. вы никак не передадите из СКД в обычный запрос ОТБОРЫ (в консутркциях {} - учитывая виды сравнения) компоновщика.
И никак не построите запрос с конструкцией ИТОГИ ПО
т.к. в СКД этого нет и не может быть.
Также не передадите весь текст запроса
Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;
Т.к. текст запроса в СКД передает обрезанный текст который учавствовал.
41 Immortal
 
17.04.11
18:20
(37) в СКД есть расчет итогов, все зависит от того, куда выводить
42 kumena
 
17.04.11
18:20
(40) прошу прощения, вам хрусталеву почитать предлагали?
43 Immortal
 
17.04.11
18:21
(42)окстись, Маня велик настолько что даже автора такого не знает
44 Alexandr Puzakov
 
17.04.11
18:21
Поясните уже чуваку, что в наше время принято пользоваться не ручной пилой, а электропилой. Но даже если захочется попилить по-старинке, то электропила для этих целей малопригодна...
45 Eugeneer
 
17.04.11
18:21
(39) ПОТОМУ ЧТО в заданных отборах юзер может задать ЛЮБОЙ ВИД сравнения. А параметр - фиксированное значение которое может быть установлено в запросе только одним конкретным условием!
Например юзер поставит в итнтерфейсе НЕ В ИЕРАРХИИ. А запрос ты какитм куем передашь параметр с этим условием? у тебя в запросе будет конкретно параметр с фиксированным условием сидеть.

Отборы могут быть универсальными. Т.е. реквизит реквизита измерения. как ты его передашь в текст запроса? ти все вещи в запросе могут быть заюзаны только при наличии {}
46 Immortal
 
17.04.11
18:23
(45)те не нужен вид сравнения
и параметры он уже задал
тебе только их перекинуть(установить)
47 Eugeneer
 
17.04.11
18:23
(41) я уже сто раз повтороил куда.
48 Eugeneer
 
17.04.11
18:23
(46) ипать ты недогоняешь.
49 Eugeneer
 
17.04.11
18:24
(46) я говорю НАДО и привожу аргументы, ты говоришь не надо не понимая вообще о чем речь идет.
50 Immortal
 
17.04.11
18:25
(48)это ты недогоняешь
51 Immortal
 
17.04.11
18:25
того что не надо этого делать, все уже сделано за тебя
52 Immortal
 
17.04.11
18:26
в общем, в сад
53 Eugeneer
 
17.04.11
18:26
(50) ты вообще не вникаешь в суть проблемы. то я тебе конкретно говорю.
54 Eugeneer
 
17.04.11
18:26
(52) вот именно. иди учись запросам
55 Immortal
 
17.04.11
18:26
(53)проблема только в твоей голове
56 IronDemon
 
17.04.11
18:27
Чего ты прицепился к посторителю в 8.2? Он умеет что-то особенное?
57 Immortal
 
17.04.11
18:27
(54)Маня, не зли меня
я тебе не по зубам)
58 Eugeneer
 
17.04.11
18:27
(55) в садике всегда дети пытаются передразнить. как раз ты это и делаешь.
59 Eugeneer
 
17.04.11
18:29
(56) да. он умеет обрабатывать конструкции {} которые уникальный в том что если отбор был задан - то он учавствует в отборе, не был задан - не учавствует.
Также {} - позволяют делать отбор любой вложенности реквизитов переменных и обработки люыбх видов сравнения между левым и правм значением.

А тут идиоты какие то сидят советующие параметр без условий впихнуть в запрос. жесть просто.
60 NcSteel
 
17.04.11
18:32
На УФ есть возможность вытащить реквизит с типом КомпановщикНастроек СКД. КОторый позволяет любые настройки забацать , а код почти совпадает с построителем.
61 NcSteel
 
17.04.11
18:32
(60) + Только настроить можно более гибко чем построитель , ну да ладно.
62 Eugeneer
 
17.04.11
18:33
Построитель уникален также тем что получает результата запроса, который может быть программно выбран вмеми методами объекта Запрос. Выбрать() с иерархией, без, условие ВСЕ и т.д.
Обратится в любом момент к любой группировке и т.д.
Т.е. полное программное управление выборкой и вставкой каких то специфичных процедур, функций, расчетов, формирование конкретного макета как захочешь.

Пример:
Выборка = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ВидЦены", "Все");
   Пока Выборка.Следующий() Цикл
   КонецЦикла;

Предложенный вариант (0) - не сделает ни одной ваыборки и сразу выдаст ошибку - нема итогов. до свидос!
63 PR
 
17.04.11
18:35
А я все не въеду никак, а что Маньяку нужно от СКД, что есть у построителя, но нет у СКД?
Можно резюме в двух словах? :))
Невозможность получить текст запроса, который выполняет СКД с учетом настроек пользователя?
Если да, то а зачем это нужно?
64 Defender aka LINN
 
модератор
17.04.11
18:36
(62) Скажи, что не осилил к запросу итоги приклеить, да и все.
65 NcSteel
 
17.04.11
18:36
(62) Так вроде СКд еще гибче. Создаешь новую группировку и получаешь таблицу.
66 Eugeneer
 
17.04.11
18:36
(60) думаешь я дурак? уже все пробовал.
ПРоблема выявилась в том что если в СКД условие было через конструкцию {} - она не переносится в тест запроса построителя.
Если условие было задано по реквизиту измерения (вложенному) то в тексте запроса это не отразится.

Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;

не переносит ни условий - ни остального.

Виды условий ты никак не запешнешь в запрос. т.к. запрос просто их не увидит.

я уже вариант описанное в (0) вариантов 10 создал попыток с отчетами. вже все что только можно испробовал. везде какой то затык.
67 NcSteel
 
17.04.11
18:37
(63) Никто не знает .
68 Defender aka LINN
 
модератор
17.04.11
18:37
(63) Возможность есть. Но по причине неумения смотреть глазами, он ее не видит
69 Eugeneer
 
17.04.11
18:37
Вид условия СКД - в вид условия построитель не назначается.
70 NcSteel
 
17.04.11
18:38
Что то я не вдуплил . Нахрена конструкция {} для СКД. У него другая механика.
71 Eugeneer
 
17.04.11
18:39
(63) нужно одно. Чтобы СКД выполнял рузельтат запроса который можно потом программно выбирать всеми методами синтакс-помощник объекта РезультатЗапроса.
72 PR
 
17.04.11
18:39
(68) Возможность получить текст запроса СКД с учетом настроек пользователя? :))
73 NcSteel
 
17.04.11
18:41
(71) Для какой задачи ? У СКД другая структура. Настройки отдельно хранятся . Если тебе надо использовать результат в другой структуре , то там создай СКд и передай настрйки.
74 PR
 
17.04.11
18:41
(71) 1. Выгрузи в дерево и юзай.
2. Перебирай результаты компоновки вручную.

Дело в том, что результат СКД шире, чем результат запроса, поэтому впихнуть результат СКД в результат запроса невозможно в принципе :))
75 Defender aka LINN
 
модератор
17.04.11
18:42
(72) А о чем, блин, эта тема?
76 Eugeneer
 
17.04.11
18:43
(72) см (71)
СКД сейчас умеет только три вещи -
1) результат запроса - в ТЗ
2) в дерево
3) в табличное поле

Нет возможности обработся к результату запроса СКД чтобы программно самостоятельно выбрать его по группировкам и самостоятельно вывести в любой нарисованный самостоятельно макет с учетом своей выборки группировок и т.д.

Вся эта выборкаа нужна:
1) для специфически построенных макетов
2) в выборке самостоятельно крутить вертеть данными полученными запросом. И не только с тими данными..

Например:
есть отчет которые строится на базе нескольких запросов (вообще не связанных ничем) ни одним измерением и т.д.

Все эти запросы выбираются потом программно и выводится макет специально постронным по техническому заданию.

Где данные должны выводится как сам черт голову словит. Одни данные из одного запроса, другие из другого и т.д. и т.п.
77 NcSteel
 
17.04.11
18:44
(74) Дерево не нужно , для этого есть спец тип .
78 Eugeneer
 
17.04.11
18:46
(74) дерево не подходит и ТЗ тоже. По ним нельзя сделать выборку группировки которая может быть третьей. А выбираем мы её первой.

Есть запрос в котором идет выборка по первым двум группировкам, а на третьей идет обращение к другому запросу вообще не со связанными данными этого запроса.

И т.д.

Или может быть такое что при формировании макета мы получаем значения 4 группировки, а после этого идет рисование макета начиная с первой.
79 PR
 
17.04.11
18:50
А что за ерунда в (0) стесняюсь спросить? :))
Тут Маня прав, это вообще не в кассу :))
80 Eugeneer
 
17.04.11
18:51
У меня есть отчет могу ссылку дать.
Примитивный пример где СКД в обломе - прайс лист с картинками и остатками
Вот живой пример который (0) не решит своим методом.
http://www.subsystems.ru/store/item/65-subsys-прайс-лист-с-остатками-и-картинками-для-ут11-управление-торговлей-11.html

Вот пример того отчета который я хочу программно обработать. В нем 12 запросов которые ничем не связаны - совершенно разные регистры.
Все выводится в один отчет и макет. перечесния тих запросов итоги - которые по желанию заказчика должны быть в любом месте которое он захочет. ПРомежуточные итоги по каким то запросам и т.д. и т.п.

Вплоть до того что при выборке какой то подсчитанный итог должен быть посчитан по сложному алгоритму. который в СКД вообще не запихнуть.

Я в том году был в проекте по написанию упр бланса и бюджетирования, где мы командой - 5 человек писали отчетность специфичную под заказчика. был конкретный макет и его описание - как и что должно считаться. Вплоть тдо того что есть группировка например определенная из которой при выборке надо получить подсчет по конкртеным элементам и т.д.

все это прекрасно построителем обрабатывалось.

В УТ11 постронном на СКД - сложных отчетов нет.
81 Eugeneer
 
17.04.11
18:53
Вот такой отчет - куй построишь СКД
http://www.subsystems.ru/store/item/20-торговый-управленческий-баланс-динамика-активов-валовая-и-чистая-прибыль-движение-денег-1с-ут-ка-упп.html

а если еще добавить специфику которое может задать конкртеное предприятие то вообще...
82 Defender aka LINN
 
модератор
17.04.11
18:55
(79) Маня просил отбор - я дал ему отбор. Это потом он начал рассказывать, что у него лысина вспотеет добавить к тексту запроса итоги.
83 PR
 
17.04.11
18:56
Преобразование отбора СКД в текст отбора для объекта запрос - это не самая тривиальная задача.
1. Могут быть группы отборов И, ИЛИ, НЕ, причем неограниченной вложенности.
2. Могут быть сравнения полей компоновки с полями же компоновки.
3. Нужно вручную в объект запрос добавить все параметры, используемые в СКД, учитывая то, что он может в отборе использовать параметры.
И т. д. и т. п. :))
84 Defender aka LINN
 
17.04.11
18:57
Пля, вот я не знаю уже - плакать, или смеяться...
85 Лефмихалыч
 
17.04.11
18:58
(83) ну, если делать через ж0пу, то задача действительно сильно не простая. А если получить текст запроса из СКД, то это в общем-то строк 15 незамысловатого кода
86 PR
 
17.04.11
18:58
(82) Ну, ты ему вообще ничего не дал, если честно :))
Там даже распарсивания отбора СКД нет :))
Не говоря уже про отборы по итоговым записям, где вообще все не очень ясно :))
87 PR
 
17.04.11
18:58
(85) Как? :))
88 Eugeneer
 
17.04.11
18:58
(82) ты и отбора не дал. параметры даже студенты бы передал.
89 Лефмихалыч
 
17.04.11
18:58
(76) (80) закрой конфигуратор и отойди от компьютера. Пожалуйста.
Умоляю.
90 Eugeneer
 
17.04.11
19:00
(83) вот именно! Видимо нашелсся все таки понимающий человек!
ти гадальщики тут меня уже затрахали непонимаем проблем которые связаны между СКД и построителем.
Щаз начнут заднюю включать что я ничего не пояснял. А я все это писал уже раз 25.
91 Лефмихалыч
 
17.04.11
19:00
92 PR
 
17.04.11
19:02
(90) Мань, ты не прав в том, что свой простенький прайс не можешь вывести через СКД. Вот тут ты вообще слажал :))
Я даже картинки смог бы сразу вывести выводя результат СКД вручную поэлементно думаю 8))
93 Eugeneer
 
17.04.11
19:03
(92) все говорят и языками только чешут.
94 Eugeneer
 
17.04.11
19:04
Картинки то еще фигня. на само деле. в (80) там где большой проблем я ссылку не вставил из (81) имелся ввиду тот отчет.
95 Eugeneer
 
17.04.11
19:05
(91) ну и чо это? консоль тут каждый второй может сделать. и вывести в макет.
причем тут консоль и выборка результата?
96 PR
 
17.04.11
19:06
(94) Не вижу проблемы :))
98 Eugeneer
 
17.04.11
19:07
(96) я тоже умею чесать языком поверь мне. а потом сидеть неделю мосх трахать.
100 PR
 
17.04.11
19:08
(98) Мань, ни о чем :))
Будет описание конкретного затыка, где хрен знает как делать?
101 Defender aka LINN
 
модератор
17.04.11
19:09
(86) А если глаза открыть? Там нет никаких "распарсивателей" по одной простой причине: текст запроса, блять, получается, блять, из, блять, СКД. Отбор которой, блять, находится на, блять, форме.
102 Eugeneer
 
17.04.11
19:09
(100) для начала сделай прайс с картинками и остатками. для теста адекватности. потом поговорим.
103 PR
 
17.04.11
19:10
(101) О, сколько экспрессии!
А что, у нас на форуме уже можно материться? :))
104 Defender aka LINN
 
17.04.11
19:11
(103) Ситауция этого требовала.
105 Eugeneer
 
17.04.11
19:11
(101) .ь ты что дал. ...ь - там даже отборов нет ...ь..там параметр..ь а ... это не отбор .....
106 Defender aka LINN
 
17.04.11
19:13
(105) Маня, ты реально идиот.
107 wraithik
 
17.04.11
19:14
(103)
покажи пример как с СКД можно сделать отчет, чтобы была группировка строк "товар", и у сперва группировка колонок "категории цен", а потом группировка колонок "остаток товара".
я не представляю как такое сделать в СКД или в построителе отчета, без ручного формирования макета.

(101)
Все таки параметр это ни разу не отбор.
108 PR
 
17.04.11
19:14
(104) А, понятно.
Ну тогда пойми что пользователь может навыбирать кучу отборов с кучей разных вручную выбранных значений самых различных типов, которые нужно будет запихнуть в запрос вручную.
Как минимум.
Извиню что не матернулся, матофильтр не пропускает :))
109 PR
 
17.04.11
19:15
(102) Мань, P&L и управленческий баланс пойдет? IMHO это "чуть" посложнее прайса :))
110 Eugeneer
 
17.04.11
19:16
(107) тут одни практики, которые на СКД еще ничего путевого не делали и сложного.
Щаз тебя просто пошлют и скажут иди учись. хотя сами не знают как сделать.
111 Defender aka LINN
 
17.04.11
19:17
(107) "Все таки параметр это ни разу не отбор." - пля... Посмотри, плять, в код!
(108) Код, плять, смотри!
Я фигею. Вот прямо сейчас, лежу и фигею.
112 PR
 
17.04.11
19:20
(107) Если я правильно понял тебя, то это возможно.
В СКД можно выбрать несколько группировок на одном уровне, тогда сначала будут выводиться колонки первой группировки, а потом присоединяться колонки второй группировки.
113 Eugeneer
 
17.04.11
19:21
ладно короче уважаемый  Defender aka LINN, многоуважаемый автор множества статей в базу знаний, сейчас облажался но делает вид и пытается опять настаивать на том что он имеет единственное правильное мнение, и решение. Самоуверенность трудно побороть в человеке. уперся как баран и продолжает изображать гения.
114 Eugeneer
 
17.04.11
19:22
(112) ага. только ты забыл добавить что показатели отчета начнут выводится под каждой группировкой, хотя в действительности под одной группировкой должны быть только определенные параметры, а под другое - другие и т.д.
115 PR
 
17.04.11
19:23
(111) Твой код
Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;
Для Каждого ПараметрЗапроса Из Макет.ЗначенияПараметров Цикл
   Запрос.УстановитьПараметр(ПараметрЗапроса.Имя, ПараметрЗапроса.Значение);
КонецЦикла;
совершенно не означает, что в запросе вдруг волшебным образом появятся элементы отбора.
116 wraithik
 
17.04.11
19:23
(112)
чета у меня не получилось несколько на одном уровне
а то бы щас в ладоши хлопал,а а не трахался с кодом, аля 7.7

(111)
какой код мне глянуть?
по твоему совету кому-то в какой-то теме я начал в отладчике смотреть потроха СКД, и как бы ничего полезного не обнаружил.

(114)
У меня не получилось просто две группировки на одном уровне поместить.
117 wraithik
 
17.04.11
19:24
(115)
+ много.
118 Defender aka LINN
 
17.04.11
19:24
(113) Маня, я облажался, когда допустил, что у тебя промеж ушей кроме кости что-то есть.
З.Ы. Кстати, насчет статей. Чьи еще статьи ты похерил, кроме моей?
119 PR
 
17.04.11
19:25
(114) Мань, не тупим, это тоже решается, для группировки можно назначить свой набор показателей :))
Да и в конце концов можно выводить результат вручную.
В построителе отчета это вообще никак не возможно, кроме ручного вывода :))
120 Defender aka LINN
 
17.04.11
19:26
(115) Докажи. Давай, смелее.
121 Eugeneer
 
17.04.11
19:26
(118) ты с дуба рухнул? я не имею прав херить чьи то статьи кроме своих. в которые каким то образом лезут все кто не попадя.
122 Eugeneer
 
17.04.11
19:26
(12) упертому барану ничего не докажешь.
123 Defender aka LINN
 
17.04.11
19:27
(121) Там был написан бред. Который, замечу, я не тронул, ибо не мое. А вот один лысый гениталий не постеснялся похерить статью целиком.
124 wraithik
 
17.04.11
19:27
(119)
можешь пример набросать
товар - цена (по типам цен) - остаток (по складам)
125 PR
 
17.04.11
19:29
(116) Что именно не получилось?
Сделать так?
Отчет
____Таблица
________Строки
____________Номенклатура
________Колонки
____________Номенклатура.Родитель
____________Номенклатура.Родитель
Ну тогда извините, не знаю, чем помочь.
126 Immortal
 
17.04.11
19:30
ыыыы
ну, послушаем Маньяка..который экстренно высасывает из пальца суперпуперотчет
127 Eugeneer
 
17.04.11
19:30
(125) нет. он хочет отчет по номенклатуре - и по колонкам цены, после цен остатки. и еще чего то там хочет.
128 Eugeneer
 
17.04.11
19:32
(126) я на примере прайса с картинкаи уже давно нашел ответы на сови вопросы. у меня получилось все сделать как надо. и этот отчет как шаблон для остальных будет. если потребуется.
Все красиво и удобно. Могу сделать любой сложности отчет. Как два пальца. без всяких СКД.
129 nbIx
 
17.04.11
19:33
(128) Не гони.

А по делу, СКД хорошая штука, но не панацея. Иногда легче сделать отчет по-другому, проще и удобней.
130 Eugeneer
 
17.04.11
19:34
СКД для меня - примитивный инструмент для примитивных отчетов. не более. типа из регистров там что то получить. элементарщина короче. Ни одного не видел еще достойного отчета в типовых построенного на СКД.
131 Immortal
 
17.04.11
19:35
(128)я тоже могу, речь то о другом.
о том, можно или нельзя что то сделать на СКД.
(130)ну эт твои проблемы, я видел отчеты по бюджетированию на СКД и сам их делал.
если они примитивные,хе-хе, то что тогда сложно?
132 Immortal
 
17.04.11
19:36
в (107)вот ещё один с титановым клювом
133 Immortal
 
17.04.11
19:37
ладна, всем мир (_)
сегодня ж все таки прощенное воскресенье, вроде
134 wraithik
 
17.04.11
19:37
(125)
одноуровневые группировки сделать получилось
щас буду дальше копать
135 Eugeneer
 
17.04.11
19:37
Итог.
Универсальность - это супер! Имеет и плюсы и минусы. Не все задачи решаются универсальными инструментами. и не могут все они решится.
136 nbIx
 
17.04.11
19:38
(130) Примитивный это ты зря, любой в принципе аналитический отчет удобней сделать с помощью СКД, где не нужно какой то свой макет и т.д.
137 Дарлок
 
17.04.11
19:38
вспомнился анекдот про мышей и кактус
138 Eugeneer
 
17.04.11
19:38
(136) ну это я и называю примитивностью..в общем то.
139 Eugeneer
 
17.04.11
19:40
Если бы СКД позволял все - почему тогда все печатные формы сделаны через обычные запоросы - с кучей кода и выборок.
ГДЕ ЖЕ этот СКД тут?))) он же супермегапупер, позволяющий сделать все по мнению многих в той ветке!
140 PR
 
17.04.11
19:41
(120) О, вот ответ на мой вопрос в (72) :))
Макет = КомпоновщикМакета.Выполнить(Схема, КомпоновщикНастроек.Настройки);
Запрос = Новый ЗАпрос;
Запрос.Текст = Макет.НаборыДанных.Запрос.Запрос;

Конечный текст запроса содержит в себе сгенерированный текст запроса с учетом настроек пользователя.
Следовало бы сказать спасибо Defender aka LINN, но не буду. Во-первых за несдержанность во-вторых за то, что человек не может по-нормальному донести то, что знает :))
141 Immortal
 
17.04.11
19:43
(140)так я об это ещё в (35) спросил..
но намеки то как всегда, тем кто пробивает лбом стены ни к чему=)
142 Defender aka LINN
 
17.04.11
19:44
(140) Пипец. Я ж готовый отчет выложил, достаточно было только посмотреть.
143 Eugeneer
 
17.04.11
19:45
Я ваще не понимаю глубокого замысла 1С в 8.2 все под одну гребенку перевести убрав то что дто этого было вполне офигенным инструментом. причем этот инструмент отлично просто для клиент-серверной версии работал.
тупо урезали функционал прекрасно работающий. Что мешало его оставить? хотя его же и оставили. но теперь надо галку включать чтобы он был. я куею.
Вот нвапример в УНФ - которая на двух интерфейсах построитель в УФ ЕСТЬ! отлично работает! а в УТ11 его нет!

Он из 8.2 никуда не ушел, но нафига его именно отключать в определенном режиме. я ваще в шоке.
Это очень удобный инструмент и для заполнений всяких и т.д.
и т.п.
144 kumena
 
17.04.11
19:45
вечер удался, однозначно!
145 PR
 
17.04.11
19:46
(142) Это было совершенно не очевидно.
146 Immortal
 
17.04.11
19:49
(145)стареете, господин директор
147 PR
 
17.04.11
19:51
(142) Кроме того, ты запутал лишними деталями.
Код СКД должен был быть не
ВЫБРАТЬ
   Номенклатура.Ссылка КАК Ссылка
{ВЫБРАТЬ
   Ссылка.*}
ИЗ
   Справочник.Номенклатура КАК Номенклатура
{ГДЕ
   Номенклатура.Ссылка.*}
а
ВЫБРАТЬ
   Номенклатура.Ссылка КАК Ссылка
ИЗ
   Справочник.Номенклатура КАК Номенклатура
148 PR
 
17.04.11
19:52
(146) Взрослею :))
149 IamAlexy
 
17.04.11
19:59
(143) все же идет какой-то то сферический ср#чь в вакууме - непонятно чего такого можно сделать построителем чего невозможно сделать посредством СКД...
150 Eugeneer
 
17.04.11
20:05
(149) начнем с того что СКД это комплексный инструмент - от начала до конца (до вывода макета). СКД это инструмент чисто запросный. т.е. работа с запросом.
СКД полностьбю все содержит в раках работы с текстом запроса, чтои построитель. В первую очередь это работа с {}
СКД полностью покурывает функционал  простроителя. Никаких претензий к СКД в этом плане нет.

Права есть все таки отличие...построитель может использовать ИТОГИ ПО, чего не использует СКД (т.к. эта конструкций у него определяется путем утсновки конкретного варианта отчета)

Главное отличие как я считаю - это то что СКД являясь комплексными решением не позволяет получаить 4 вариант (которого нет у него) - это программная выборка результата запроса. Т.е. мы сами кодом выбираем группировки и прочие дела как хотим и русем сами как хотим макет.
151 PR
 
17.04.11
20:05
(149) Наложить условие на итоговую запись :))
То есть получить условия не нулевого уровня.
152 Eugeneer
 
17.04.11
20:05
"СКД это инструмент чисто запросный. т.е. работа с запросом."

блин тут ПОСТРОИТЕЛЬ имелось ввиду.
153 IamAlexy
 
17.04.11
20:07
(151) в новой платформе можно будет..
(151) что ты называешь "программной выборкой результата запроса" ?
154 PR
 
17.04.11
20:07
(150) >>Права есть все таки отличие...построитель может использовать ИТОГИ ПО, чего не использует СКД (т.к. эта конструкций у него определяется путем утсновки конкретного варианта отчета)
Не так. Отбор наложить можно.
Но в результирующий текст запроса (смотри (140)) оно не попадет.
155 IamAlexy
 
17.04.11
20:07
+(153) про программную выборку это к (150)
156 Eugeneer
 
17.04.11
20:07
Есть большие потребности в рисовании специфичных макетов и выборок и прочих дел. Сами понимаете что мы работаем на бизнес и у него есть свои потребности и желания. И конечнеому юзеру глубоко начхать чем вы там пользуетесь. есть конкретная задача и эта задача может сверх-налогову все перевернуть в процессе решения. И чем больше инструментов тем лучше.

Универсальность круто! но иногда до добра она не доводит.
157 Eugeneer
 
17.04.11
20:09
(153) на

// Обойдем в цикле переданную выборку.
   Пока Выборка.Следующий() Цикл
       
       Уровень = Выборка.Уровень();
       ЭтоНеИтогПоИерархии = (Выборка.ТипЗаписи() <> ТипЗаписиЗапроса.ИтогПоИерархии);
       НазваниеГруппировки = Выборка.Группировка();        
       ЭтоНижнийУровень = ЭтоНеИтогПоИерархии;

       ЗначениеГруппировки = Выборка[НазваниеГруппировки];
       ПредставлениеГруппировки = Выборка[НазваниеГруппировки];

       Если ЭтоНеИтогПоИерархии Тогда
           СекцияНачало = мСписокНачало;
           СекцияНоменклатура = мСписокНоменклатура;
           СекцияТипЦен = мСписокТипЦен;
           СекцияОстатки = мСписокОстатки;
       Иначе
           СекцияНачало = мСписокГруппаНачало;
           СекцияНоменклатура = мСписокГруппаНоменклатура;
           СекцияТипЦен = мСписокГруппаТипЦен;
           СекцияОстатки = мСписокГруппаОстатки;
       КонецЕсли;

       ТаблицаОтчета.Вывести(СекцияНачало, Уровень, , Истина);

       Пробелы = "";
       Для Тмп = 1 По Уровень Цикл
           Пробелы = Пробелы + "    ";
       КонецЦикла;

       СекцияНоменклатура.Параметры.Измерение = Пробелы + ПредставлениеГруппировки;

       Если ЭтоНеИтогПоИерархии Тогда
           СекцияНоменклатура.Параметры.Расшифровка = ЗначениеГруппировки;
       КонецЕсли;

       Если ЭтоНижнийУровень Тогда
           СекцияНоменклатура.Параметры.Родитель = ЗначениеГруппировки.Родитель;
           СекцияНоменклатура.Параметры.ЕдиницаИзмерения = ЗначениеГруппировки.ЕдиницаИзмерения;
           СекцияНоменклатура.Параметры.Артикул = ЗначениеГруппировки.Артикул;
           
           Если ВыводитьКартинки Тогда
               Если НазваниеГруппировки = "Номенклатура" Тогда
                   ПустаяКартинка = Новый Картинка;
                   
                   Если ЗначениеЗаполнено(ЗначениеГруппировки.ФайлКартинки) Тогда
                       //СекцияНоменклатура.Рисунки["Изображение"].Картинка = ПолучитьНавигационнуюСсылкуКартинки(ЗначениеГруппировки.ФайлКартинки);
                       
                       //СекцияНоменклатура.Параметры.Изображение = ПолучитьНавигационнуюСсылкуКартинки(ЗначениеГруппировки.ФайлКартинки);
                       
                       ДвоичныеДанные = ПрисоединенныеФайлы.ПолучитьИмяФайлаСПутемКДвоичнымДанным(ЗначениеГруппировки.ФайлКартинки); //ЗначениеГруппировки.ФайлКартинки.ТекстХранилище.Получить();
                       //Сообщить(ДвоичныеДанные);
                       СекцияНоменклатура.Рисунки["Изображение"].Картинка = Новый Картинка(ДвоичныеДанные);
                   Иначе
                       СекцияНоменклатура.Рисунки["Изображение"].Картинка = ПустаяКартинка;
                   КонецЕсли;
               КонецЕсли;        
           КонецЕсли;    
           
           ТаблицаОтчета.Присоединить(СекцияНоменклатура);

           ВыборкаТипЦен = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "ВидЦены", "Все");
           Пока ВыборкаТипЦен.Следующий() Цикл
               Если ЗначениеЗаполнено(ВыборкаТипЦен.Цена) Тогда
                   СекцияТипЦен.Параметры.Цена = ВыборкаТипЦен.Цена;
               Иначе
                   СекцияТипЦен.Параметры.Цена = "";
               КонецЕсли;

               ТаблицаОтчета.Присоединить(СекцияТипЦен);
           КонецЦикла;
           
           Если ВыводитьОстатки Тогда
               ВыборкаОстатки = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Склад", "Все");
               Пока ВыборкаОстатки.Следующий() Цикл
                   Если НЕ ЗначениеЗаполнено(ВыборкаОстатки.Склад) Тогда Продолжить; КонецЕсли;

                   Если ЗначениеЗаполнено(ВыборкаОстатки.Остаток) Тогда
                       СекцияОстатки.Параметры.Остаток = ВыборкаОстатки.Остаток;
                   Иначе
                       СекцияОстатки.Параметры.Остаток = "";
                   КонецЕсли;
                   
                   ТаблицаОтчета.Присоединить(СекцияОстатки);
               КонецЦикла;
           КонецЕсли;

       Иначе
           ТаблицаОтчета.Присоединить(СекцияНоменклатура);

           Для Тмп = 1 По мКоличествоТиповЦен Цикл
               СекцияТипЦен.Параметры.Цена = "";
               ТаблицаОтчета.Присоединить(СекцияТипЦен);
           КонецЦикла;
           
           Если ВыводитьОстатки Тогда
               Для Тмп = 1 По мКоличествоСкладов Цикл
                   СекцияОстатки.Параметры.Остаток = "";
                   ТаблицаОтчета.Присоединить(СекцияОстатки);
               КонецЦикла;
           КонецЕсли;

           Если ЭтоНеИтогПоИерархии Тогда
               ВывестиСтрокуПрайса(Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура"), НомерГруппировки + 1, КолонкиРезультата,ТаблицаОтчета);
           КонецЕсли;
       КонецЕсли;
   КонецЦикла;
158 IamAlexy
 
17.04.11
20:10
(157) отчеты которые в ЗУПе и которые "типа СКД" видел?

там вроде вовсю юзается: СКД для запроса и отборов и настроек и вариантов  а затем чото типа того что ты написал - всякие корявые макеты типа Т13 рисуются и прочие расчетные листки...


не вижу принципиальной невозможности результаты СКД обойти программно и вывести таким же образом..
159 Eugeneer
 
17.04.11
20:15
(158) ну если юзать (0) кстати это в печати ценников один в одитн также выглядит. то получаить данные можно.
но вот нету ИТОГОВ ПО. надо рыскать решение. каким образом еще это прилепипить. плюс мне сама суть не нравится. рисовать схему, вариант макета. чтобы потом все это добро для запроса использовать. спрашивается нафига волт эти все сложности? оставили бы построитель да и все.
160 PR
 
17.04.11
20:18
(159) А в построителе есть отбор по итоговым записям? :))
161 IamAlexy
 
17.04.11
20:19
(159) хз.. унификация видимо..

опять же.. выйдет новая платформа... вроде там появятся отборы и сортировки по результатам...

это все к тому что общаяясь с кучей контор в течении длительного времени, пока еще не видел ни одной задачи связанной с отчетностью с которой СКД  бы не справилось...

не, типа понятно что программист может придумать сферическую задачу в вакууме зная узкие места СКД так что типа СКД бы с ней не справилась.. вопрос в том что пользователи это не могут придумать...

и ведь получается, что в одних ветках ты доказываешь что пользователи тупицы и им не нужна свобода творчества - их отчеты должны быть просты как в 7ке (нажал и отпустил кнопку), а в другой ты начинаешь придумывать задачи и требовать функционал с которым и знающему опытному 1Снику не факт что по приколу будет возиться...
162 Eugeneer
 
17.04.11
20:21
(160) нет. построитель ничем не лучше СКД в плане работы с запросом. вообще никакого совершенства.
тут больше ситуация с тем что выбирая программно код ты можешь и итогами и чем угодно просто элементарно управлять. вот в чем вся фишка.
163 Eugeneer
 
17.04.11
20:22
У меня вообще изначально был вопрос связан не с построителем вообще. а с тем чтобы иметь возможность программной выборки результатов запроса. именно это основная задача была. А потом все смешалось на уровне того что на форме отчета должны быть отборы.
164 IamAlexy
 
17.04.11
20:23
(162) эээээ еще раз вопрошаю: что мешает делать то же самое с результатами работы СКД ?
165 IamAlexy
 
17.04.11
20:23
(163) тут я вообще туплю... открываю отчеты из той же БП3.0 и не понимаю твоих претензий.. там вообще в тонком клиенте отчеты типа оборотки полностью на СКД работают с отборами, фильтрами и чемугодно на форме..
166 PR
 
17.04.11
20:24
(162) А что тогда мешает получив текст запроса с настройками пользователя самому программно добавить отборы по итоговым записям?
А то я что-то пока вообще ни одного преимущества у построителя не вижу :))
167 Eugeneer
 
17.04.11
20:24
(164) выборки нету в СКД
168 PR
 
17.04.11
20:25
(163) Фигня. Тебе сказали, как натравить запрос на настройки СКД. Что-то еще по сути есть? :))
169 Eugeneer
 
17.04.11
20:26
(166) да нету у него преимуществ! я уже сто раз об том писал. у него самого преимуществ никакх.
Но он решает брешь в том что его результат запроса потом можно управлять методами запроса.
Выбрать, следующий и т.д. и т.п.
а в СКД с результатом запроса нельзя этого сделать.
170 Eugeneer
 
17.04.11
20:27
(168) да но нету ИТОГОВ ПО
171 Eugeneer
 
17.04.11
20:28
ну хоя никто не мешает тупо к тексту запроса их добавить..
я просто изначально думал что все проще. мне не нравятся решения в которых надо вечно что то допиливать руками, когда оно раньше без того делалось. просто не нравится.
172 IamAlexy
 
17.04.11
20:28
(167) выборки это типа для обхода по группировкам например ?

это вроде решается через настройку варианта...
и выгрузку результата куданить в дерево...
173 PR
 
17.04.11
20:28
(169) Писец.
Резюмирую :))
Эти уроды из 1С заставляют меня каждый раз использовать почти десять строк кода для того, чтобы натравить запрос на настройки CRL/
LOL
174 IamAlexy
 
17.04.11
20:28
(171) эээ я вот не понял - построитель он что, не руками у тебя там спилен весь?

вроде как раз прелесть скд в том что там минимум руками "допиливать"
175 PR
 
17.04.11
20:29
+(173) CRL/ = СКД.
176 PR
 
17.04.11
20:29
(170) Их и в построителе нет, как мы выяснили.
Ты пеняешь 1С, что она их не сделала в СКД что ли?
Так так и пиши тогда :))
177 PR
 
17.04.11
20:31
(171) Мань, не юли :))
Началось все с того, что построитель это круто и накуа его спрашивается убрали в управляемых формах, я на нем все делал, чуть ли не включая детей :))
А закончилось непонятно чем.
178 Eugeneer
 
17.04.11
20:31
Оно всегда так - там то допилить там се допилить. Задачи как правило имеют тендецию усложнятся. как говорится аппетит приходит во время еды. Так и я думаю. Когда приходится вчено на что то допиливать руками то потом то все превращается в какюу то куйню и иногда настает момент когда заказчик гначинает требовать то что например может сломать вообще всю логику построенного монстра и начинается поиск вообще принципиально нового варианта для решения.
Вот о чем я думаю. Конечно можно допиливать, но это же уже не нормальное решение.
179 Inform
 
17.04.11
20:32
(170) возможно поиск по словам: ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений
даст какие-нибудь наводки (если синтакс-помощник не колется)...
180 PR
 
17.04.11
20:33
(178) Ну вот мы и вышли на финишную прямую.
Мане безумно жалко потраченного времени на созданные отчеты на базе построителя.
А теперь все перепиливать на СКД :))
181 Eugeneer
 
17.04.11
20:34
пилять ну как с вами разговаривать. вы чо не знаете чо такое построитель? куля я вам тут поясняю. пипец. на 8.2 каждый восьмерочник знает что то такое. сами долджны понимать чем он лучше/хуже в плане 8.2
По мне так лучше бы он был.
182 PR
 
17.04.11
20:35
(181) А по мне так один куй :))
Мне СКД полностью перекрывает потребность в нем :))
183 IamAlexy
 
17.04.11
20:36
(181) по мне так я не понимаю "преимуществ" построителя перед СКД... и я не встречал ни одной задачи которую решал бы построитель и которую бы не решил СКД
184 Eugeneer
 
17.04.11
20:36
Построитель нужен - потому что он позволяет делать любые программные отчеты, запоросы, для получения данных из базы. Его удобно использовать для заполгнения таблитчных частей с тоборами и т.д. и т.п. Управление выборкой.
СКД это совершенно другой монстр.
Все пошел отдыхать нах.
185 Eugeneer
 
17.04.11
20:36
(182) а мне не перекрывает. у меня есть задачи где надо макет рисовать по специфике.
186 PR
 
17.04.11
20:37
(184) Из твоего текста согласен только с "СКД это совершенно другой монстр." :))
187 Eugeneer
 
17.04.11
20:38
(183) поздравляю!!! вот тебе - нарисуй на СКД прайс с картинками! плюс еще туда же - с остатками.
188 PR
 
17.04.11
20:38
(185) А в построителе не надо?
189 PR
 
17.04.11
20:39
Знаю у построителя только одну вещь, которую не уверен, что можно сделать с помощью СКД.
Это натравить построитель на табличное поле с отбором :))
190 PR
 
17.04.11
20:39
(187) А на построителе это как два пальца? :))
191 IamAlexy
 
17.04.11
20:40
(187) угу.. через пару часов выложу на ИС.. цену назначю из принципа рублей 1000...
192 IamAlexy
 
17.04.11
20:40
+(191) или 500
193 IamAlexy
 
17.04.11
20:41
ща базу дообновляю и займусь демпингом...
194 IamAlexy
 
17.04.11
20:43
ибо на СКД это все очень просто делается.. быстро и универсально... .
195 Eugeneer
 
17.04.11
20:44
(194) ну сделай.
196 Eugeneer
 
17.04.11
20:50
Кстати это не все. У меня еще есть например такая задача.

Есть запрос. в котором программно добавляется текст запроса по регистру которого вообще в базе даже нет.

Программа сама смотри - если есть регистр - то кусок запроса добавляется, если нет - то не добавляется.

Таким образом отчет работает на типовой без изменений. Но если добавлен регистр - то работает и на базе с тим регистром.

Сделай мне такой отчет на СКД.
197 IamAlexy
 
17.04.11
20:53
(196) у СКД можно получить текст запроса, исправить как угодно и выполнить его..

не вижу принципиальной невозможности выполнения твоей задачи..

кстати.. с прикладной точки зрения попытка натянуть одни стринги сразу на 10 толстых ж_о_п - заведомо обречена на провал...

хотя при большом желании....

я бы просто сделал 2 отчета..

или использовал (о чудо чудное) - 2!!! (вы не ослышались, в одном отчете может быть любое количество схем компановки)  разные схемы компановки.. и просто проверял какую схему выбрать в зависимости от наличия регистра :)
198 Eugeneer
 
17.04.11
20:53
Еще есть парочка запросиков где тоже от всяких галок в запрос могут добавлятся или не добавлятся целые участки запросов.
Например один и тот же отчет одновременно для нескольких конфигураций с совершенно разными регистрами.
Один отчет работает на всех этих конфах.
199 IamAlexy
 
17.04.11
20:54
(198) непонятно чем это принципиально отличается от изменения текста запроса СКД :)

ведь то же самое - поставил галку - у тебя там что то программно где то поменялось... почему этим "чем то" не может быть текст запроса схемы? :)
200 Eugeneer
 
17.04.11
20:54
(197) фантазия у тебя большая. как до практики дойдет - отпишись по результатам.
201 PR
 
17.04.11
20:56
Мне почему-то не верится в сверхдоходы Мани.
Ну не может такой человек столько получать от клиентов :))
202 IamAlexy
 
17.04.11
20:56
(200) ты про отчет с двумя схемами?
давным давно делал.. для нетленки своей.. правда там не по регистрам была проверка а просто один отчет заведомо РАЗНЫЕ выводил данные.. не просто разные варианты а вообще из разных источников и разные по смысловой нагрузке...

кстати ничего удивительного и волшебного.. помоему в книжке про сложные отчеты есть примеры с программным выбором схемы...
203 Eugeneer
 
17.04.11
20:57
(202) почему двумя? один запрос! единый.
204 IamAlexy
 
17.04.11
21:02
(203) еще раз.. есть задача.. удалить гланды.. ее можно решить двумя путями...

твой - снизу.. тоже решение но не всегда корректное...
понятное дело, с точки зрения проктолога это единственное верное решение.. но не стоит ВСЕХ загонять в рамки ТВОЕГО опыта..

говорю же, задача (по крайней мере как ТЫ ее описал) решается на раз просто созданием двух схем компановки...
или программного изменения кода..
кому как удобнее


в результате один отчет и работает в нескольких РАЗНЫХ с точки зрения метаданных конфигурациях...
205 Марсель
 
17.04.11
21:02
Ветку не читал (надорвал животик еще на первой) :)

Нет задач, которые нельзя решить при помощи СКД (прямо или косвенно) - решаемые построителем.

У СКД достаточно сложная объектная модель, разбитая на логические составляющие, и никто не заставляет вас использовать всё сразу...

нужно управление отборами - КомпоновщикНастроек.Настройки.Отбор

нужно условное включение частей запросов (запросов) - СхемаКомпоновкиДанных.НаборыДанных

Нужно получить текст запроса - МакетКомпоновки предоставит все что нужно, и параметры запроса, и текст с настроенными отборами...

никто ж не заставляет выполнять запрос с помощью СКД,
выполните его как обычно Запрос.Выполнить().

уж приклеить итоги к обработанному тексту запроса не видится проблемой.

и пользуйтесь результатом запроса как вам угодно...

Кричать тут что СКД этого не может явно глупо, если столько человек вам уже все разжевали и открыто смеются над вашей истерикой.

Разберитесь в объектной модели СКД и все встанет на свои места.

И забудьте вы уже про построитель...
206 Eugeneer
 
17.04.11
21:20
эээ товарищи. гначал делать запрос по варианту (0) в запрос то обычный у меня чота вычисляемые выражения прошли без математических функций.
207 Eugeneer
 
17.04.11
21:21
Это конечно хорошо что он там номенклатуру сделал. но показатели то как бы имеют математику. сейчас буду смотреть чо за хрень выйдет в итоге.
208 Eugeneer
 
17.04.11
21:41
Все получилось. Снимаю шляпу. на СКД + запрос + текст с итогами. все заработало. Внес несколько мелких штрихов.Типа если отбор откючен но есть в списке то ругалось. добавил проверку на наличие парамтера в тексте. иначе еслми отбор был выключен но есть несуществующий параметр добавлялся.
209 basicm
 
17.04.11
21:44
Ну наконец-то конец!!! Думал не дождусь...
210 Марсель
 
17.04.11
21:47
Тааа-даам!!! :)
211 Eugeneer
 
17.04.11
21:52
НУ ВОТ! и засада!!!
212 Eugeneer
 
17.04.11
21:55
Теперь поясняю что произошло!!!!

В построителе если было много запросов можно было накладывать {} в условия РЕГИСТРА
например
ИЗ
               РегистрНакопления.СвободныеОстатки.Остатки(, {(Склад).* КАК Склад}) КАК Ост) КАК НесвернутыеОстатки


Таким образом отбор по СКЛАДУ в построиетеле отбирал данные только относящиеся к тому регистру и все остальные выводил вне зависимости от отбора.

что произошло СЕЙЧАС!
Отбор по складу накладывает отбор по всему результату запроса - всем данным. И показывает соверешнно не то что требовалось. Он начинает фильтровать ВСЕ ДАННЫЕ. а подразумевалось что отчет по отбору склад - выведет все данные, а отфильтрует только определенную колонку по этому складу.

Ну теперь выкручивайтесь.
213 PR
 
17.04.11
21:58
(212) Мань, это решается проще чем отнять конфетку у младенца и _абсолютно_ так же как в построителе.
Но твоя манера получать от других помощь взятием на слабо если честно просто веселит :))
214 Марсель
 
17.04.11
22:00
Ё-моё... все хуже чем мы думали :(
215 Всеяд
 
17.04.11
22:01
Я думаю, что за проявленное терпение и ничем не спровоцированную человечность в обеих темах Defender aka LINN должен получить право свободно материться на мисте.
216 Eugeneer
 
17.04.11
22:01
(213) ну и как?
217 PR
 
17.04.11
22:01
(215) Он уже
218 Всеяд
 
17.04.11
22:04
(217) Я имел в виду - де-юре.
219 Eugeneer
 
17.04.11
22:04
у меня с СКД
РегистрНакопления.СвободныеОстатки.Остатки(, {(Склад).* КАК Склад}) КАК Остатки

но когда я ставлю отбор по складу. он отбирает весь результат отбора по указанному складу
а мне требовалось чтобы он отбирал только данные остатков склада, а все остальное выводил полностью.
220 Eugeneer
 
18.04.11
00:13
Тему можно закрывать. Все работает. Отборы надо по разному обзывать в отличие от переменных группировок. Если надо запрещать по группировкам отборы чтобы юзеры случайно не выбрали (если стоит задача именно не отбирать все результаты запроса). А так в целом все получил как надо.

Т.е. к (0)
1) добавил проверку на указ параметра если отбор в компоновке стоит не не использован
2) добавил программно кусок текса с итогами
3) для отборов которые нужны в конструкциях {} сделал чтобы их названия не совпадали с измерениями запроса.

Все остальное у меня было сделано и выборка пошла как надо.

Спасибо что усердно меня терпели. Автор респект и все такое. Но поставил бы минус за то что четко сразу нельзя было раньше сказать что текст запроса СКД передается в запрос полностью учитывая вилы условий указанные в компоновке. Это бы еще в прошлой бы теме поставило точку.
И так как не явно вообще не было об том сказано, то я зашел в тупик не понимая каким образом параметр мне может помочь в запросе.

Вывод всем (и мне тоже) - пытайтесь четко задавать вопросы и давать ответы.
221 Eugeneer
 
18.04.11
00:15
(0) сделай для своего файла. Сообщить(ТекстЗапроса) чтобы люди наглядно видели как запрос автогенерируется в зависимости от указанных отборов. Это сразу поставит все точки для всех кто потом будет париться.
222 Eugeneer
 
18.04.11
00:17
Отчет заработал. программная выборка пошла как надо. Начал дальше наворачивать отчет..
223 Immortal
 
18.04.11
00:31
Алилуйя!
Defender'у - +100 к карме=)
224 PR
 
18.04.11
01:05
Правильно писать аллилуйя :))
225 Immortal
 
18.04.11
01:53
(224)в любом коде есть ошибки)
226 MRAK
 
18.04.11
08:36
(191) уже есть:
на инфо-старт /public/76271/
227 MRAK
 
18.04.11
08:48
и да (220), что мешало код из (0) сразу посмотреть? религия?
я и то ради интереса сразу заглянул, хотя задачи такой как у тебя не стоит.
228 Леха Дум
 
18.04.11
09:18
(220) попробуй галку "Автозаполнение" в схеме снять - может поможет :)
229 unf13
 
27.04.11
00:22
Не хотел заводить новую тему, а эту и предшествующую ей читал тогда взахлеб, как детектив.
 Не силен в СКД. Сейчас открыл УНФ, отчет "Товарный отчет ТОРГ-29" и в очередной раз демоны меня удивили. Даже не знаю, то ли гордиться, то ли плакать. Раньше я считал, что так только наркоманы пишут,т.к. сам так писал..
 Ну нафига спрашивается получать данные через СКД, затем выгружать результат в тэзэху, затем подгружать тэзэху во временную таблицу, ко временной таблице снова делать запрос, какие-то группировки и, наконец, выводить всё это дело в старом семерошном стиле в цикле с секциями в отчет???
Причем в модуле отчета еще какие-то дополнительные функции итп.
 Ну никак я не пойму, ведь если бы делать всё просто в семерошном стиле (тогда уж) без извратов, то там строк кода то было бы - один запрос и цикл выода небольшой.
 И всё!
 В чём экономия, в чём эффективность такого подхода  - непонятно.
 Я понимаю, что, скорее всего, для асов СКД я задаю какой-то смешной и глупый вопрос , но может быть какой-нибудь добрый человек может сказать зачем весь этот ужас и куча кода, если всё можно гораздо проще и быстрее было бы сделать? :(
230 ink1981
 
27.04.11
04:13
(0) Ещё один завистник гения, Маня вот по четверть ляма в месяц зарабатывает, а ты чё неудачнег.
231 Reaper_1c
 
27.04.11
18:37
(229) Товарный отчет не помню. А навскидку - для того, чтобы облегчить себе работу со свойствами объектов. Ломать голову над соединениями со свойствами и отборами по ним зело лень.