Имя: Пароль:
1C
 
Расскажите мне в чем плюсы такого синтаксиса при написании запросов?
0 Галахад
 
гуру
25.05.21
13:43
Вот как-то примерно так:

Выборка = НовыйЗапрос("Выбрать А а, В в, Г г
|Из Справочник.УУУ
|Где Усл1 и Усл2 и Усл3",
Новый Структура("Парам", Парам)).Выполнить().Выбрать();
    
Это быстрее пишется или читается или еще чего?
1 Почему 1С
 
25.05.21
13:45
не вижу плюсов
2 polosov
 
25.05.21
13:46
(0) Жабакодеры такое любят.
3 Kassern
 
25.05.21
13:47
(0) первый раз такое вижу)
4 Галахад
 
гуру
25.05.21
13:48
(2) Хм. Жабокодеры переквалифицировались на 1С? Что-то не верится.

(3) Получи эстетическое удовольствие...
5 Kassern
 
25.05.21
13:50
(4) читая вот это https://its.1c.ru/db/v8std/content/640/hdoc как то не укладывается, как получается вот это (0)
6 Kassern
 
25.05.21
13:51
(5) особенно пункт 5 противоречит этой портянки в параметрах в (0)
7 Kassern
 
25.05.21
13:55
(6) Есть только писать как-то так:
Запрос = Новый Запрос(ТекстЗапроса, ПараметрыОтбора);
Выборка=Запрос.Выполнить().Выбрать();
8 Почему 1С
 
25.05.21
13:56
(7) Но оно не будет работать, как быть?
9 fisher
 
25.05.21
14:01
Чет я не понял. Не вижу в СП варианта двух параметров для конструктора запросов.
10 fisher
 
25.05.21
14:02
А, дошло! Собственную функцию для этого написали.
Ну, это эстетическое у любителей одностроков. В молодости такое бывает.
Посидишь на продакшене и проходит.
11 2S
 
25.05.21
14:03
(9) это же функция :)
они что-то курили
12 Kassern
 
25.05.21
14:04
(11) блин я реально подумал, может что то в СП новых платформ добавилось по запросу)
13 Kassern
 
25.05.21
14:06
(12) не обратил внимание что это тупо функция "НовыйЗапрос"). Смысла не вижу в функциях такого вида, 1с их осуджает, ссылку скидывал в (5)
14 Галахад
 
гуру
25.05.21
14:16
Хм. Я вообще-то про конструкции типа:

Выбрать псеводнимтаблицы.реквизит1, псеводнимтаблицы.реквизит2 псевдонимреквизита2, псеводнимтаблицы.реквизит3,псеводнимтаблицы.реквизит4 псевдонимреквизита4

или

где оченьважноеусловиекотороенадописатьводнустрочку1 и оченьважноеусловиекотороенадописатьводнустрочку2 и оченьважноеусловиекотороенадописатьводнустрочку3 и оченьважноеусловиекотороенадописатьводнустрочку4
15 Галахад
 
гуру
25.05.21
14:20
(14) + Не получилось. Тут форму переносит и на экран вмещается.
16 acht
 
25.05.21
14:21
(14) Это специально так делается, чтобы у тебя при просмотре диффа монитор порвался.
А то ишь!
17 fisher
 
25.05.21
14:22
(14) Не нагнетай. Небольшие конструкции вполне читабельны. Поэтому некоторые падаваны и не могут удержаться от искушения сделать их еще компактнее и элегантнее. Седые и строгие уже знают, что это все тлен.
Начнет усложняться и начнет страдать читабельность - любой вменяемый тут же отрефакторит.
18 fisher
 
25.05.21
14:25
Сначала начитаются дядюшки Мартина, что мол функции в несколько строк должны быть, а потом пыжатся в одну строку побольше впихнуть :)
19 Йохохо
 
25.05.21
14:30
(14) когда люди после школы в бородатые годы шли в прод сразу они этот стиль с уроков и из книжек и принесли в рабочие базы. некому было их бить по рукам, а потом незачем
20 1Сергей
 
25.05.21
14:36
Кто нибудь ставит монитор на попа? Надоело, уже палиц болит колесо крутить
21 fisher
 
25.05.21
14:40
Может, людей генетически тянет к функциональному программированию и цепочечному апи работы с коллекциями, а они в 1С очнулись. И когда накатывает тоска, они ее глушат суррогатами.
22 Галахад
 
гуру
25.05.21
14:47
(16) Я догадывался.

(17)Вместо того, что бы сразу сделать нормально, лучше сперва сделать как всегда, а потом переделать?
23 fisher
 
25.05.21
14:51
(22) Сначала сделать "красиво", а потом вздохнуть и переделать на "как всегда".
24 1Сергей
 
25.05.21
14:52
25 pechkin
 
25.05.21
15:01
плюсы в том что от руки так писать быстрее
26 hhhh
 
25.05.21
15:19
ну да, нафига писать псевдоним таблицы, если таблица одна?
27 ДенисЧ
 
25.05.21
15:38
(20) Это оскорбление чувств служащих культа!
28 polosov
 
25.05.21
15:42
(20) У меня второй монитор повернут на 90 градусов. Ты про этого "попа"?
29 1Сергей
 
25.05.21
15:51
(28) да. Удобно?
30 polosov
 
25.05.21
15:55
(29) Когда как. Не использую его как основной для программирования.
Удобно смотреть документацию, к примеру, и что-то делать в конфигураторе. В любом случае, 2 монитора лучше, чем 1 большой.
31 Dzenn
 
гуру
25.05.21
15:55
(0) В простых текстах запросов иногда хочется, чтобы текст запроса был как можно меньше и как можно компактнее
32 Dzenn
 
гуру
25.05.21
15:58
(0) О_о, кстати, а что, при инициализации запроса можно передавать параметры? За 15+ лет практики первый раз такое вижу
33 polosov
 
25.05.21
16:00
(32) "И ты, Брут" ))
34 polosov
 
25.05.21
16:01
(32) см (13)
35 Dzenn
 
гуру
25.05.21
16:02
(33) а, да, осуждаю )
36 Asmody
 
25.05.21
16:36
(13) Чего б вы понимали.
Если 1С что-то осуждает, не значит, что это плохо.
Если, конечно, вы не собираетесь на 1С:Совместимо подаваться.

Элементы функционального стиля очень даже ничего если к месту и в разумных пределах.
37 Kassern
 
25.05.21
17:04
(36) только вот обычно не к месту и 100500 параметров в процедуре, либо портянка строкой в параметре...
38 Dmitrii
 
гуру
25.05.21
18:29
(0) >> в чем плюсы такого синтаксиса при написании запросов?

Нет никаких плюсов. Но один явный минус - снижение читаемости.
Просто варяг какой-то писал. Не из 1С-ников он, пришлый и никогда не работавший и не видевший типовых.
Вот и синтаксис такой - порожденный сознанием незамутнённым документацией и примерами, но, по всей видимости, одновременно имеющий опыт в каком-то другом ЯП.
39 Asmody
 
25.05.21
18:30
(37) Ну так если бы в языке был контроль типов, хотя бы на уровне параметров функций...
40 Asmody
 
25.05.21
18:32
(38) точно! Отсутствие в языке литералов коллекций бесит жутко.
41 pechkin
 
25.05.21
18:36
Что за литералы коллекций?
42 Bigbro
 
26.05.21
04:24
формирование запроса выносимое в функцию - часто вижу, это повышает читаемость в целом.
но чтобы вот так, с передачей всего текста запроса... выглядит не очень, особенно если запрос не в 4 строки как тут а строк 40. и если текст запроса по условиям формируется?
43 bolder
 
26.05.21
06:53
Это элемент говнокодинга.Никаких плюсов и отклонение от стандартов.Учитесь на типовых - вот там красиво в 90% случаев.
44 Asmody
 
26.05.21
07:15
(43) странные у вас понятия о красоте
45 Asmody
 
26.05.21
07:23
Про (копро)код типовых 10 летней давности в приличном обществе даже не упоминают.
А код свежих типовых - это танталовы муки вменяемого архитектора по запихиванию архитектуры в ущербность языка.
46 bolder
 
26.05.21
07:28
(44) А какой смысл такой функции?Это не применимо в большинстве запросов 1С.Наоборот,полезно растащить текст запроса от создания запроса в отдельную функцию.
47 dmpl
 
26.05.21
09:11
(19) На олимпиадах за такой код сразу кучу штрафных баллов начисляли. Причем столько, что о первых местах можно было забыть даже если у тебя идеальное решение.
48 ks_83
 
26.05.21
09:17
(47) А на проде за такое вообще руки надо отрубать и колено простреливать с последующим увольнением.
49 Bigbro
 
26.05.21
09:54
(48) какой вы категоричный... и много уже отрублено-прострелено?
я видел примеры и похуже, с этим можно жить.
если пытаться воевать с каждым куском неидеального кода... психическое здоровье очень быстро подведет.
50 Asmody
 
26.05.21
09:59
(48) За формирование, выполнение и обработку результата сложного запроса в одном лапшекоде на 500 строк руки надо отрывать. И такой грязи у одинесников как грязи
51 Asmody
 
26.05.21
10:00
А за СтрЗаменить(ТекстЗапроса,...) гнать сцаными тряпками
52 BeerHelpsMeWin
 
26.05.21
10:05
(50) а за запрос по расчету ндфл в ЗУП 3? :)
53 WebberNSK
 
26.05.21
10:08
(0) такое стандартами запрещено
54 PLUT
 
26.05.21
10:52
(51) щас модно СтрШаблон() в текстах запросов использовать в типовых (появилось такое заклинание аж в 2014, новости/старости https://wonderland.v8.1c.ru/blog/novye-funktsii-raboty-so-strokami/?sphrase_id=185905)
55 RomanYS
 
26.05.21
11:00
(51) Как правило СтрЗаменить используют чтобы исходный запрос корректно открывался конструктором и в этом много плюсов.
(54) а тут как раз таких плюсов нет
56 ks_83
 
26.05.21
15:39
(49) Для этого и ставят релиз инженера/тим лида с крепкой психикой и топором.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс