|
OFF: За такой код надо пальцы пообрывать. Крик души. 🠗 (Волшебник 10.06.2013 11:04) | ☑ | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0
megabax
10.06.13
✎
09:14
|
Вот никак не пойму, почему многие горе прогеры пишут такой код (даже 1С, млин, этим грешит):
Если ВидВыгрузки = 2 Тогда Запрос.Текст = Запрос.Текст + " | И Ссылка В ИЕРАРХИИ (&Номенклатура)"; Запрос.УстановитьПараметр("Номенклатура",ТаблицаДляВыгрузки.ВыгрузитьКолонку("Номенклатура")); КонецЕсли; нельзя что ли писать нормлаьно: сперва сформировать тектс запроса, что бы его удобно было править конструктором, а потом в зависимости от условий править его через СтрЗаменить???? |
||||||||||||||||
71
Рэйв
10.06.13
✎
09:42
|
Чудак человек.
Насколько я понял там у тебя текст запроса генерится динамически в зависимости от условий. А если сильно охота проверить его в консоли, то поставь точку останова перед самым остановом, выведи в табло Запрос.Текст, нажми F2 и копируй себе на здоровье в консоль, припарируй. Нормальный код |
||||||||||||||||
79
dmpl
10.06.13
✎
09:45
|
(0) Просто эти гуру не пользуются конструктором - они сразу пишут запрос.
Нормальный код |
||||||||||||||||
80
Stella0608
10.06.13
✎
09:45
|
Я в семерке так и пишу, но там конструктора нет, так что пофиг. :)
P.S. конструктор вообще не люблю и использую в основном, чтобы быстро написать запрос или для сложных условий типа ПВХ, в которых я до сих пор плаваю. Нормальный код |
||||||||||||||||
86
gae
10.06.13
✎
09:49
|
ы
Нормальный код |
||||||||||||||||
96
Lama12
10.06.13
✎
09:53
|
(0)СтрЗаменить конечно хорошая штука и сам именно ей пользуюсь.
Но что мешает поставить точку останова непосредственно перед "Выполнить" и взять готовый текст запроса в отладчике? Зарплатные запросы лучше не смотри :) Нормальный код |
||||||||||||||||
119
dachnik
10.06.13
✎
10:01
|
Вполне себе нормальный код, даже не знаю, что посоветовать ТС. Мой вариант 1
Нормальный код |
||||||||||||||||
122
Старик Юзергад
10.06.13
✎
10:03
|
(0) валерьяночки попей
Нормальный код |
||||||||||||||||
129
ЧеловекДуши
10.06.13
✎
10:06
|
+
Нормальный код |
||||||||||||||||
174
Эмбеддер
10.06.13
✎
10:22
|
(165) лучше типовых нет
Нормальный код |
||||||||||||||||
193
Lys
10.06.13
✎
10:28
|
(172) +100
Добавлю - если есть выбор между читабельностью запроса и его производительностью, лично я выберу производительность. Простейший пример - в зависимости от входных условий добавлять или не добавлять объединение запросов к двум различным таблицам-источникам данных, без "сложения" текста запроса в коде тут не обойтись. А если кто не умеет читать тексты запроса без конструктора, и не умеет "ловить" готовый текст запроса при отладке - это, право, его личные трудности. Нормальный код |
||||||||||||||||
200
nbIx
10.06.13
✎
10:31
|
(0) То что ты не умеешь писать запросы без конструктора, это твои проблемы.
Нормальный код |
||||||||||||||||
202
Кремень
10.06.13
✎
10:32
|
по моему СтрЗаменить тоже не панацея, а если запрос большой и однотипные куски в нем, и где то надо Заменить а где то нет. Так что по моему это более универсальный подход
Нормальный код |
||||||||||||||||
206
Junior1s
10.06.13
✎
10:35
|
зачем усложнять.
Нормальный код |
||||||||||||||||
213
Джинн
10.06.13
✎
10:37
|
Нормальный код. Замена ничуть не лучше в плане чтения текста запроса. Особенно когда замен несколько и они по условию.
Нормальный код |
||||||||||||||||
216
rutony
10.06.13
✎
10:39
|
Нормальный код, бывает гораздо хуже. В тех же типовых вставками в середине кода.
Да и в конце концов, кто мешает после формирования текста, сделать точку остановки и копирнуть итоговый запрос... Я обычно делаю вставки под замену, что то типа Истина = Истина, 1 = 1 и тд... Нормальный код |
||||||||||||||||
221
Иде я?
10.06.13
✎
10:42
|
Автору пальцы отрубать не надо, это не решит проблемы.
ЗА СтрЗаменить надо химическую кастрацию делать. Ибо порождает кучу ошибок и такой калокод трудно поддерживать. Нормальный код |
||||||||||||||||
224
Exec
10.06.13
✎
10:44
|
так удобней при отладке, особенно, когда запрос меняется в куче мест. стрзаменить - имхо хуже
Нормальный код |
||||||||||||||||
237
lucifer
10.06.13
✎
10:50
|
(0) "от условий править его через СтрЗаменить"
А по мне так это не нормально, и за такой код пальцы надо вырывать. Нормальный код |
||||||||||||||||
244
bolder
10.06.13
✎
10:53
|
(0)Вполне нормальный код, если запрос очень длинный со многими вставками- уже конструктор не используется, так что без разницы, правится сразу текст.Преимущество в одном- все условия близко к месту использования.Конечно можно это поместить в &УсловияПоНоменклатуре и потом искать где то на 64 странице текста..
Нормальный код |
||||||||||||||||
259
Steini
10.06.13
✎
11:04
|
динамически собирать текст запроса лучше всяких стрзаменить. учитесь читать код
Нормальный код |
||||||||||||||||
266
Fedot200
10.06.13
✎
11:42
|
Раньше использовал СтрЗаменить() теперь не пользую. Делаю или как в 0 или как в этом запросе... кстате оцените норм или нет?
УслДог = ""; Запрос = Новый Запрос; Если ЗначениеЗаполнено(ВыбДоговор) Тогда УслДог = " И РеализацияТоваровУслуг.ДоговорКонтрагента = &ВыбДоговор"; Запрос.УстановитьПараметр("ВыбДоговор", ВыбДоговор); КонецЕсли; Запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровУслуг.Сделка |ПОМЕСТИТЬ ТЗЗаказов |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | РеализацияТоваровУслуг.Проведен = ИСТИНА | И РеализацияТоваровУслуг.Сделка.Дата МЕЖДУ &ДатаНачала И &ДатаКонца | И РеализацияТоваровУслуг.Контрагент = &ВыбКонтрагент" + УслДог +" |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | СтатусЗаказа.Статус, | СтатусЗаказа.Сумма, | СтатусЗаказа.СуммаОплаты, | СтатусЗаказа.ЗаказПокупателя |ИЗ | РегистрСведений.СтатусЗаказа КАК СтатусЗаказа |ГДЕ | СтатусЗаказа.ЗаказПокупателя В | (ВЫБРАТЬ РАЗЛИЧНЫЕ | ТЗЗаказов.Сделка | ИЗ | ТЗЗаказов) | И СтатусЗаказа.Сумма <> СтатусЗаказа.СуммаОплаты | |УПОРЯДОЧИТЬ ПО | СтатусЗаказа.ЗаказПокупателя.Дата"; Нормальный код |
||||||||||||||||
280
magicSan
13.06.13
✎
17:26
|
нормальный такой код и конструктор из примера должен работать, я сам так условия добавляю причем сам люблю конструктор и им пользуюсь
Нормальный код |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |