|
Почему в типовых делают так? | ☑ | ||
---|---|---|---|---|
0
batmansoft
16.01.14
✎
16:51
|
|ВЫБРАТЬ
| " + ЧастьЗапросаДляВыбораСодержанияУслуг + ", | " + ЧастьЗапросаДляВыбораСодержанияУслуг + ", | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, неужели нельзя по человечески сделать, что бы запрос можно было конструктором править. Слов нет, один мат... |
|||
1
vladko
16.01.14
✎
16:53
|
так сделано, чтобы 2 запроса не писать при разных значениях ЧастьЗапросаДляВыбораСодержанияУслуг
|
|||
2
VikingKosmo
16.01.14
✎
16:53
|
(0) Потому что конструктор запросов - зло!
|
|||
3
Джинн
16.01.14
✎
16:53
|
Часто так гораздо универсальнее и проще получается. Проблемы негров, которые руками запрос написать не могут, шерифа не волнуют.
|
|||
4
Euguln
16.01.14
✎
16:54
|
А чо, нормальный запрос.
|
|||
5
el7cartel
16.01.14
✎
16:54
|
(0) ну так нафига лишнее лопатить?
|
|||
6
Полотенчик
16.01.14
✎
16:55
|
(3) писать-то может и умеют, но такую солянку банально на синтаксис/пунктуацию проверить нельзя
|
|||
7
МойКодУныл
16.01.14
✎
16:55
|
Для меня было шоком, когда я первый раз полез в ЗУПе с формированием нгачислений разбираться. Потом неделю не разговаривал:). Но есть что есть.
|
|||
8
batmansoft
16.01.14
✎
16:55
|
(3) Конструктором писать гораздо быстрее и оптимальнее.
|
|||
9
VikingKosmo
16.01.14
✎
16:56
|
(8) расскажи об этом запросам написанным для Универсального отчета.
|
|||
10
Euguln
16.01.14
✎
16:56
|
(8) Никто не мешает в отладке вынуть текст запроса в конструктор
|
|||
11
patapum
16.01.14
✎
16:56
|
(8) кому-то да, кому-то нет.
|
|||
12
Ненавижу 1С
гуру
16.01.14
✎
16:57
|
нормальные чуваки пишут так:
|ВЫБРАТЬ | &ЧастьЗапросаДляВыбораСодержанияУслуг, | &ЧастьЗапросаДляВыбораСодержанияТоваров, | Номенклатура.Код КАК Код, | Номенклатура.Артикул КАК Артикул, а потом используют ТекстЗапроса = СтрЗаменить(ТекстЗапроса,"&ЧастьЗапросаДляВыбораСодержанияУслуг",...); |
|||
13
batmansoft
16.01.14
✎
16:57
|
(10) но это долго
|
|||
14
batmansoft
16.01.14
✎
16:57
|
(12) Полностью согласен. Это идеальный код.
Видать, в 1С-е неадекваты работают. |
|||
15
Euguln
16.01.14
✎
16:59
|
Интересно, а что будет быстрее выполнятся на запросе over 1000 строк?
|
|||
16
patapum
16.01.14
✎
16:59
|
(14) а чем тебе это проще, чем (0)?
|
|||
17
Beduin
16.01.14
✎
16:59
|
(14) Какая разница между (12) и кодом из (0)?
|
|||
18
Джинн
16.01.14
✎
17:00
|
(8) Простые и примитивные запросы - да. Как только начинается что-то сложнее простой выборки из таблицы - конструктор часто не помощник уже, а гиря на ногах.
Кроме того никто не мешает шаблон собрать конструктором, а затем руками подрихтовать. |
|||
19
batmansoft
16.01.14
✎
17:00
|
(17) в 12 можно пользоваться конструктором
|
|||
20
Ненавижу 1С
гуру
16.01.14
✎
17:01
|
(16)(17) тем, что он открывается в конструкторе
(18) склеивают запросы уже давно только неадекваты куча старого кода такого досталось, выкинуть жалко, переписать некогда |
|||
21
batmansoft
16.01.14
✎
17:01
|
(18) Как раз простые и примитивные запрос в легкую без конструктора пишутся, а вот ложные вложенные со множеством соединений - тут без конструктора никак.
|
|||
22
Euguln
16.01.14
✎
17:01
|
(19) Можно, но с оглядкой на то, что будет в &ЧастьЗапросаДляВыбораСодержанияУслуг
|
|||
23
Леопольд Роскошный
16.01.14
✎
17:03
|
сделай так
сообщить(запрос.Текст); потом скопируй и пользуйся чем хочешь. Консолью например. |
|||
24
Джинн
16.01.14
✎
17:03
|
(20) С появлением временных таблиц в запросах актуальность "клееных" запросов конечно упала, но тем не менее часто сам текст запроса зависит он некой бизнес-логики и проще его "склеить" чем в конструкторе монстра собирать.
|
|||
25
Ненавижу 1С
гуру
16.01.14
✎
17:04
|
(22) а ты как думаешь что там может быть?
я думаю, что там набор полей |
|||
26
batmansoft
16.01.14
✎
17:04
|
(23) допустим так и сделал, подправил, а потом впихать его обратно, а если запрос собран по кусочкам - тут запаришся впихивать
|
|||
27
Euguln
16.01.14
✎
17:04
|
(25) Да, причем не факт, что из основной таблицы
|
|||
28
mrDSide
16.01.14
✎
17:06
|
(14) это ужас. сколько времени будет уходить каждый раз на разбор текста (стрзаменить()) перед выполнением запроса?
ПОЧЕМУ ВСЕ РУГАЮТ ШАБЛОНЫ ОГРАНИЧЕНИЙ 1С? ВЕДЬ ОНИ РАБОТАЮТ ИМЕННО ТАК. |
|||
29
Ненавижу 1С
гуру
16.01.14
✎
17:06
|
(27) тебя это смущает?
|
|||
30
Ненавижу 1С
гуру
16.01.14
✎
17:06
|
(28) да уж не дольше чем выполнение самого запроса
|
|||
31
mrDSide
16.01.14
✎
17:07
|
(30) + ВЫПОЛНЕНИЕ ЗАПРОСА <> КОНКАТЕНАЦИЯ СТРОК + ВЫПОЛНЕНИЕ ЗАПРОСА
|
|||
32
Ненавижу 1С
гуру
16.01.14
✎
17:08
|
(31) не экономь на спичках, удобство сопровождения стоит дороже
ЗЫ: отключи капслок |
|||
33
GROOVY
16.01.14
✎
17:12
|
||||
34
GROOVY
16.01.14
✎
17:13
|
Или мне, к примеру, по условию нужно либо присоединить еще одну таблицу к запросу, либо нет...
|
|||
35
GROOVY
16.01.14
✎
17:15
|
Коментами все решается, но их конструктор убивает.
|
|||
36
mrDSide
16.01.14
✎
17:15
|
(32) беда, беда...
Готов спорить что конструктор сразу же ругнется как только увидит повторяющееся имя параметра без псевдонима. |
|||
37
GROOVY
16.01.14
✎
17:15
|
Вообще интересная тема, ругать разработчиков типовых из-за того что не умеешь писать запросы руками ;)
|
|||
38
mrDSide
16.01.14
✎
17:16
|
а если уж так не нравится - МенеджерВременныхТаблиц.
|
|||
39
GROOVY
16.01.14
✎
17:16
|
(36) С чего бы это.
|
|||
40
Полотенчик
16.01.14
✎
17:17
|
ГДЕ
&УсловиеОтборНоменклатура И &УсловиеОтборКонтрагент И &УсловиеОтборСклад Текст = СтрЗаменить(Текст, "&УсловиеОтборНоменклатура", ?(ЗначениеЗаполнено(Номенклатура), "Таблица.Номенклатура = &Номенклатура", "ИСТИНА")) ВЫБРАТЬ .... ОБЪЕДИНИТЬ ВЫБРАТЬ ... ГДЕ &НужнаВтораяТаблица |
|||
41
mrDSide
16.01.14
✎
17:22
|
(40) это уже целый план запроса)))
&УсловиеОтборНоменклатура - не проще ли "ВЫБОРК КОГДА .. ТОГДА А КОГДА .. ТОГДА Б ИНАЧЕ В КОНЕЦ" может кто-нибудь уже попробует выполнить один и тот же большой запрос с замером (ИР в помощь). |
|||
42
Ненавижу 1С
гуру
16.01.14
✎
17:25
|
(33) а какие трудности?
постоянно так делаю, точнее именно с условий и началось все это |
|||
43
batmansoft
16.01.14
✎
17:25
|
(37) я умею писать запросы руками, просто конструктором - БЫСТРЕЕ.
|
|||
44
Ненавижу 1С
гуру
16.01.14
✎
17:25
|
(41) не проще, индексы могут не использоваться в твоем случае
|
|||
45
mrDSide
16.01.14
✎
17:29
|
(44) не совсем понял при чем тут индексы. Можно подробней?
|
|||
46
х86
16.01.14
✎
17:30
|
было бы неплохо если бы разрабы сделали такую вещь
чтоб текст запроса можно было бы представить в виде DOM ну и обращаться к этому дому, читать и писать поля |
|||
47
SeraFim
16.01.14
✎
17:32
|
(37) +1
Вы ЗУП почитайте. Без этого - либо будут запросы по 2 часа выполняться (так как в них будет туева хуча ненужных полей для вычисления) либо портянки на сотни тысяч строк, которые сопровождать - нереально. Понадобится изменить одну штучку - придется править каждый запрос. |
|||
48
mrDSide
16.01.14
✎
17:32
|
(46) ПостроительЗапроса, ПостроительОтчета
они еще и сериализуются, в принципе |
|||
49
х86
16.01.14
✎
17:33
|
(46)+ хотел как-то сам написать парсер текста запроса в структуры, а потом забил, муторно как-то
|
|||
50
Новиков
16.01.14
✎
17:34
|
Если конфа активно пилится, я вставляю обычно обработку, и из отладчика, перед Запрос.Выполнить() вставляю заготовленную строчку кода, которая сохраняет нужный запрос в формат консоли запросов, скидывает туда параметры. Дальше F5, и уже в консоли переоткрываю и там нажимаю Выполнить. Все.
|
|||
51
х86
16.01.14
✎
17:34
|
(48)да, что-то наподобии, только что простой текст запроса можно было скормить
|
|||
52
IamAlexy
16.01.14
✎
17:35
|
(9) универсальный отчет это уже давным давно окаменевшее гамно мамонта..
СКД - наше всье... попиши для СКД отчетов руками.. ага.. |
|||
53
IamAlexy
16.01.14
✎
17:37
|
(0) отстой это..мне тоже не нравится..
особенно когда надо доработать отчет а там объединения и вот такие вставки.. всегда напарываюсь что где то что то не совпадает и приходится лезть лишний раз в отладчик, смотреть текст запроса.. лишние телодвижения на ровном месте |
|||
54
х86
16.01.14
✎
17:37
|
если бы можно было текст представить в виде ДОМ, то такого как в (0) бы не было
нашел нужный узел, накидал полей и т.п. почему еще не сделали? |
|||
55
mrDSide
16.01.14
✎
17:37
|
(51)
ПостроительОтчета (ReportBuilder) Инициализация текстом запроса построителя отчета Синтаксис: Новый ПостроительОтчета(<ТекстЗапроса>) Параметры: <ТекстЗапроса> (необязательный) Тип: Строка. Исходный текст запроса. Описание: Создает объект по тексту запроса построителя отчета. |
|||
56
Новиков
16.01.14
✎
17:39
|
(52) Особенно радует как там кодом, кодом мутиться в некоторых отчетов - прямо видно, что не смогли в общую концепцию вписаться обвяза типового, и понеслась - кто на что горазд :) Но благо что хоть схему+настройки можно вытащить, чтоб отладить. А я помню, где то использовался свой ручной вывод с отключенными этими типовыми настройками.
|
|||
57
m-serg74
16.01.14
✎
18:12
|
(52) ОСВ в БП3шке смотрел? Там тоже весело :)
|
|||
58
Starhan
17.01.14
✎
07:32
|
(0) в отладчике доходишь до строчки Запрос.Выполнить()
и оппа, в Запрос.Текст Будет нужный тебе текст запроса. Копируешь (в консоль запросов) и пользуешься. |
|||
59
ИС-2
naïve
17.01.14
✎
07:37
|
(12) +1.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |