Имя: Пароль:
1C
 
Вопрос на собеседовании. Оптимизировать запрос в цикле.
0 Kongo2019
 
16.11.20
12:25
1. 2 39% (9)
2. 1 35% (8)
3. 4 17% (4)
4. 3 9% (2)
Всего мнений: 23

Доброго.
Вот все по собеседованиям хожу типа. Все хочу стать настоящим программистом 1С. А то в наших провинциях, так все отчеты рисуем, та мелочёвка всякая. Но то лирика.
И вот сегодня один вопрос зацепил в тесте.
Вам поставлена задача по доработке нетиповой конфигурации. В данной конфигурации ведется учет остатков товара в регистре накопления  в разрезе номенклатура и серия. Серия является обязательной для заполнения в документах. Для проверки наличия остатка есть функция, в которую предаются два параметра в виде ссылки на Номенклатуру и ее серию, и параметр типа дата. Функция возвращает булево значение, есть на остатке или нет.
Рассмотрев внимательно данную функцию, Вы видите, что там выполняется запрос к регистру накопления. В запросе используется виртуальная таблица с отбором по номенклатуре и серии.
Анализируя работу программы, Вы понимаете, что это так называемый «запрос в цикле». Так как Вам необходимо, по заданию сделать новый документ, который должен иметь табличною часть, в которой возможно несколько строк  с разными значениями номенклатуры и серии, и для проверки Вам необходима будет вызвать процедуру проверки остатка столько раз, сколько у вас строк в  табличной части документа.
Какие ваши действия. Не против, я в голосовалку варианты ответов запихаю.
1. Сообщу руководителю проекта, что данный код не оптимален и предложу переделать.
2. Сообщу руководителю проекта, что данный код не оптимален, но буду использовать уже разработанный функционал.
3. Буду использовать разработанный функционал.
4. Сделаю свою, более оптимальную процедуру.
1 Глупый ответ
 
16.11.20
12:26
в типовых такое постоянно, используй 3.
2 1Сергей
 
16.11.20
12:27
3. Тому, кто собеседует, набить морду
3 H A D G E H O G s
 
16.11.20
12:28
Других вариантов то и нет.

Тут вопрос на умение работать в команде.

Хороший вопрос.

1
4 Глупый ответ
 
16.11.20
12:28
(2) допустим у документа 100 000 строк, тебе или одним запросом вызвать 100 000 строк или вызвать 10 раз только те строки которые отображаются?
5 acht
 
16.11.20
12:29
(0)
1) Потрындю и не буду вообще ничего делать
2) Потрындю и не буду делать ничего нового
3) Молча не буду делать ничего нового
4) Молча сделаю все заново.

Ты вообще на кого собеседуешся - на трынделку или на разработчика =)
6 Глупый ответ
 
16.11.20
12:29
я за типовые. Иногда 10 маленьких запросов в цикле, лучше чем один на 100500 строк.

3
7 1Сергей
 
16.11.20
12:29
(5) +1
8 Kongo2019
 
16.11.20
12:32
Еще из этой серии. Вы решаете задачу, вашего опыта недостаточно быстро решить ее одним большим запросом. Что Вы сделаете?
1. Быстро, но не оптимально сделаете много мелких запросов.  Это позволит Вам быстро закрыть задачу.
2. Будете писать оптимальный запрос в любом случае. Это будет долго, но зато Ваш запрос будет работать быстрее.
3. Будете писать оптимальный запрос. Если ваше решение в п 1. не удовлетворить быстродействию.
9 БаксПо90
 
16.11.20
12:33
забавно - есть типа как правильное мнение и есть как бы не правильное. ЗА одно поощряют за другое бьют.
Тебе надо угадать проявив сообразительность и продемонстрировав свою нормальность относительно их логики рассуждений.
Может они идиоты все же, раз не понимаю что о правилах можно и договорится , а не гадать?
10 Механик
 
16.11.20
12:33
(4) Я сначала проанализировал бы бизнес-процессы. Если за 10 лет в этом ларьке ни разу не продавали более 100 товаров в одном чеке - то и оптимизировать там ничего не надо, время тратить...

2
11 Kongo2019
 
16.11.20
12:33
(1) А блин забыл. Я выбрал вариант 2.

2
12 H A D G E H O G s
 
16.11.20
12:33
1. Есть коммуникация, есть инициатива, возможно переделывать будет автор косяка при вменяемом РП. 5 из 5
2. Есть коммуникация, нет инициативы, переделает автор косяка, а ты упустишь опыт и командный дух, ну всем тем, чем живет РП. 4 из 5
3. Нет инициативы, нет коммуникации, нахрен ты такой нужен в команде. 2 из 5
4. Есть инициатива, нет коммуникации. Ты переделаешь, не сказав команде и все пойдет по звизде. 0 из 5
13 Irbis
 
16.11.20
12:34
Правильный ответ: "Попросить оформленное ТЗ, Делать как написано в ТЗ"
14 Глупый ответ
 
16.11.20
12:34
(8) разговор про форму документа и знание типовых. В типовых на каждую строку вызывают запрос в цикле. Я думаю, для того, чтобы понять работал ли человек с типовыми или нет.
15 1Сергей
 
16.11.20
12:34
(9) +1
16 Irbis
 
16.11.20
12:35
А ещё задать вопрос: "Скока денех заплатят?"
17 1Сергей
 
16.11.20
12:36
(14) Насчет формы документа - твои домыслы
18 Kongo2019
 
16.11.20
12:38
(14) Так типа типовые давно уже здесь решили не образец для подражания.
19 БаксПо90
 
16.11.20
12:41
Скажи лучше, сколько там подобных вопросов было ? Ведь понятно, что кто-то решил сэкономить время свое время. Кандидатов то видимо много.
И сколько денег они готовы дать, если ты будешь идеальным с точки зрения опроса
20 Глупый ответ
 
16.11.20
12:42
(18) может быть разработчики хотят на эту тему по дискутировать. Надо ответить ну в типовых так, в других эдак, надо писать так как принято, пусть у архитектора голова болит. Если принято всем пользоваться этой процедурой, значит надо пользоваться этой процедурой или принимать решение на архитектурном уровне и переписывать процедуру, чтобы она не одну строку принимала, а список.
21 Serg_1960
 
16.11.20
12:43
(мысли вслух) Почему то многие решили, что документ будет заполняться программно по типу "заполнить по основанию" массивом строк. Но об этом в задании ни слова. Если документ заполняется интерактивно, то логично повесить проверку на каждую строку.
22 Глупый ответ
 
16.11.20
12:44
по крайней мере в обработках заполнения ТЧ документов, нужно вызывать в цикле функцию которая разные доп параметры строки заполняет, ну там цена/ндс и еще всякое, я точно не помню.
23 Глупый ответ
 
16.11.20
12:45
(21) и я о том же. Или интерактивно или обработкой табличных частей, в типовых на каждую строку выполняется запрос.
24 Kongo2019
 
16.11.20
12:45
(19) Всего вопросов 30-35 было. С десяток вот такого плана, типа общие вопросы.
Ну по моим меркам нор, 80 тыщ, удаленка. Работа с ихней самопиской.
Что-то типа отраслевой, внутри их группы компаний.
25 Kongo2019
 
16.11.20
12:47
(21) Я думал что это при проведении дока проверка.
26 Serg_1960
 
16.11.20
12:50
(25) Вы нам об этом забыли рассказать. Впрочем не только об этом. Один ёжик думает что вас пригласили в команду? :) Хотя в наличии есть программист - одна штука и его руководитель :))
27 dmpl
 
16.11.20
12:53
(0) Почему нет ответа "Включу замер производительности, проанализирую, решение приму по итогам замеров"?
28 Kongo2019
 
16.11.20
12:54
(26) Скопировал дословно. Сам не в курсе, что имелось в виду.
Работает у них вроде как пять человек уже.
29 Kongo2019
 
16.11.20
12:54
(27) см 12.
30 Hillsnake
 
16.11.20
12:55
недостаточно данных.

если процедурой пользуется больше 1000 человек в час, то да лучше максимально оптимизировать проверив основательно через QA.

Если 1.5 инвалида в час,  то смысла нет.
31 Serg_1960
 
16.11.20
12:56
(сарказм) В типовых, пр проведении документа, идет проверка в цикле каждой строки - из-за дурацкой манеры разработчиков сообщать об ошибке, используя контекст проверяемой строки.
32 dmpl
 
16.11.20
12:57
(29) Этот вариант - 6 из 5. Ты не захламляешь документацию проекта ненужной информацией, если время выполнения некритичное.
33 NWsFF
 
16.11.20
12:59
Я выбираю 4, потому что остальным похер на оптимальность, а у меня душа не спокойна если использовать как есть, пишу свой альтернативный метод и пользуюсь им.
Но на собеседовании бы выбрал пункт 1.

4
34 H A D G E H O G s
 
16.11.20
13:03
Вопрос не на знание оптимизации, пример курильщика которой высосан из пальца в процессе написания этого примера, а на твое отношение к процессу. Кто ты
1) Программист здорового человека
2) Похерист.
3) Программист курильщика
4) Нёрд, пописывающий код и нервно смеющийся, после которого в продакшене будет что-то отваливаться.

Все мы сегодня пункт 4
35 torgm
 
16.11.20
13:06
(0)  есть вариант ответить из контекста, в зависимости от размера и специализации компании в которую устраиваешься, как вариант задать встречный вопрос  о критериях результативности и эффективности выполняемой задачи.
36 Kongo2019
 
16.11.20
13:06
(32) Сорри см(8).
37 Йохохо
 
16.11.20
13:07
(24) это тест на твой психотип, а не знания. В бою парторг всё скажет
38 spiller26
 
16.11.20
13:09
(33) Согласен

4
39 Serg_1960
 
16.11.20
13:10
На собеседовании верный ответ только один (понятно какой). Хотя я бы предпочел вариант "1. Сообщу руководителю проекта, что данный код не оптимален и предложу дополнить функционал"
40 Kongo2019
 
16.11.20
13:12
(37) Не прошел я да?
Трудолюбивый разработчик пишет 1000 строк кода и потом думает, как его оптимизировать.
А ленивый — сначала оптимизирует в уме, а потом пишет 50 строк, которые работают не хуже и даже быстрее.
Я блин походу трудолюбивый.
Этак я никогда не стану настоящим программистом 1С.
41 Шоколадный глаз
 
16.11.20
13:14
Если Московский франчайзи собеседует, правильным будет ответить 1, но делать 3. Главное делать как сказали, иначе уволят в тот же день.
42 Шоколадный глаз
 
16.11.20
13:14
ответить

1
43 Шоколадный глаз
 
16.11.20
13:14
делать

3
44 Шоколадный глаз
 
16.11.20
13:16
Те кто выбрал 4.4, за вас думает РП, делать вы должны были что вам сказали и как сказали. Уволены.
45 pavig
 
16.11.20
13:16
(0)
Ну конечно же
"1. Сообщу руководителю проекта, что данный код не оптимален и предложу переделать."
Вы Специалист или как г*вно в проруби болтаетесь?

Получил требования, начал делать, обнаружил критичную, с твоей точки зрения, уязвимость в производительности системы в случае реализации таким методом, сообщил ответственному лицу о потенциальной проблеме, получил дальнейшие инструкции - оставлять как есть или переделывать как надо. Может, руководство уже знает об этой проблеме и уже решило исправлять это в каком-нибудь из следующих релизов, а сейчас надо очень просто успеть сделать новый функционал (например, просто для демонстрации возможностей заказчику) к дате выхода релиза? Решение этого вопроса не в твоей компетенции в данном случае.
И всё, с тебя взятки гладки, идеальный программист.
Не сделал лишнего ненужного, потратил времени ровно столько, сколько было заложено руководством, и при этом оповестил о проблеме, да еще и вызвался её устранить. Просто красавчик.
Иначе потом начнется "ну я вот решил оптимизировать бла-бла". Пля, кто тебя просил заниматься оптимизацией? Тебе поставили вполне конкретную задачу.

1
46 Глупый ответ
 
16.11.20
13:24
(24) ну в твоем случае пункт 2-3 однозначно. Потому, что те кто "напишут свою" получают от 180, а не 80. Поэтому пункт 1-4 проверка на адекватность.
47 Kongo2019
 
16.11.20
13:24
Где же мне этих мать их за ногу бест практик набраться?
Типовые вы как учебный материал заклеймили.
На курсах азы обычно показывают.
Тут на собеседованиях вопросы какие-то странные задают.
Я все книги прочел которые на ИТС есть. На вопросы отвечаю, вроде как правильно, ну я так думаю.
А работать не берут.
Хотя блин везде говорят программистов не хватает.
Ниче не понимаю.
Так и помру недоделкиным.
48 Lexandr
 
16.11.20
13:25
Работает -  не трожь. Но с учетом проверки на командный дух, а интересно за чей счет банкет, пока ты правишь чужие косяки, то наверно ответ 1.
49 Zapal
 
16.11.20
13:25
(0) прежде чем бросаться всё переписывать я бы оценил еще несколько вещей:
- насколько это вообще проблема? Если опираться на текст "табличною часть, в которой возможно несколько строк" то похоже речь идёт не о тысячах строк, а о единицах. Плюс надо оценить насколько часто используется этот документ вообще
- насколько сложен код который придется переделывать. Точнее сказать тут нужно оценить риски что после переделки что-то поломается. Такой риск есть всегда, какой бы гениальный человек за это не брался
- если наше время оплачивается по часам, то сразу же встает вопрос будет ли кто-то оплачивать это дополнительное время

короче нужно оценить возможные потери в виде риска напортачить и затрат времени, а потом сравнить с возможным выигрышем. И тогда уже решать стоит ли оно того. Скорей всего наиболее оптимальным исходом ситуации будет п.2 - о проблемы знать но ничего не трогать

2
50 mistеr
 
16.11.20
13:27
Если есть РП, то он и должен решать. Если нет, тогда конечно сам буду переделывать.

2
51 Глупый ответ
 
16.11.20
13:28
(47) устройся куда нибудь. Удаленных переизбыток.  Адекватных вакансий всегда мало, закрываются они моментально. А всякая параша висит годами на каждом заборе.
52 mistеr
 
16.11.20
13:28
(33) Вот так и рождаются г...поделки, которые проще переписать, чем разобраться, как оно работает.
53 NWsFF
 
16.11.20
13:38
(52) Нет говно поделки получаются из твоего варианта,  не понял как работает , взял и переписал
В моем случае вижу я понимаю как работают оба варианта, просто старый пришлось заменить потому что он гавно.
54 Kongo2019
 
16.11.20
13:41
(51) В наших ебенях выбора особого нет.
Я бы с удовольсвием.
Поехать на заработки типа. Но мне холода противопоказаны.
А так у нас формочки, отчеты, и прочая мелькая хрень.
55 Zapal
 
16.11.20
13:41
(53) тот кто написал то гавно тоже думал что он видел и понимал
вполне может быть что тот кто посмотрит твоё видение и понимание точно так же назовёт это говном
56 banco
 
16.11.20
13:52
(8) На последних платформах несколько мелких запросов не сильно медленнее будет чем один большой запрос.
57 NWsFF
 
16.11.20
13:56
(55) Значит специалист который смотрел мое видение лучше меня, в этом и есть прогресс. А ныкать гавно под половик это не по мне.
58 dmpl
 
16.11.20
13:57
(56) Это еще что! Несколько мелких запросов могут в итоге быть быстрее, ибо большой запрос может облажаться с планом выполнения и не попасть в индексы.
59 БаксПо90
 
16.11.20
14:03
(47) да нигде ) бест практик это в определеленном случае это взаимность
я последний раз анкету с сотней вопросов заполнял .. только при сексе с тем кто мне эту анкету дал ..
по анкете прошел/ по второму пункту нет
А вообще сейчас много всего по этим темам выкладывает текстов .. вплоть до того как надо ошибки комментировать .. обращаясь на вы или говорить что у  там в чемодане что то вибрирует ..
т.е. нужно уметь угадывать что же они хотят, потому что как тут выше правильно написали .. ответить и делать это разные вещи
60 БаксПо90
 
16.11.20
14:07
(47) тем более в вашем случае цикл может быть очень коротким .. имели ли опыт командной разработки - нет - до свидания. Вы вот как из этой ситуации будете выходить.
Правильный ответ - врать. А врать надо достоверно. Т.е. нужно прочитать что же там от вас хотят при командной разработке.
Тут вот много иронии .. причем, те кто непрерывно пишут в больших группах это одна история , а те кто в малых это другая.
61 AquaMan
 
16.11.20
14:14
Правильный ответ выполнить доработку в рамках текущего функционала и сообщить руководителю. А дальше либо создать таску по доработке в техдолг, либо проигнорировать, если этот документ совершенно не критичный для бизнеса.

2
62 Шоколадный глаз
 
16.11.20
14:18
(47) Жизнь - боль.
Сейчас в 1С деньги делаются не на кодинге, а на знании типовых и их внедрении. В разработке потребности уже практически нет. Или в консультанты.
А еще лучше, бросай это неблагодарное дело и займись чем нибудь полезным. Говорят, нефтяники на северах от 300 зарабатывают. 1Снику это не снилось. Иди лучше к ним.
63 d4rkmesa
 
16.11.20
14:25
(47) Расслабьтесь. Работать не берут, ИМХО, потому что галеры с большими распределенными командами - достаточно специфическое явление, со специфическим набором навыков.
64 Kongo2019
 
16.11.20
14:27
(62) Да я блин с радостью на Севера мотнул.
Да блин, все, когда у нас тут блекаут был, я опоры ЛЭП собирал, руки поморозил. Они у меня на холоде в крюки превращаются, даже в рукавицах, и болят дико.
Все, только теплые края теперь. Тут только февраль пережить надо. А так не холодно.
65 Kongo2019
 
16.11.20
14:29
(63) И че делать? Проги не нужны уже? Ну средней паршивости, нужны только спецы всем?
66 Шоколадный глаз
 
16.11.20
14:36
(65) Образование есть? Можно наверное сидеть в кабинете что-то делать, если специальность позволяет.
67 HawkEye
 
16.11.20
14:41
(0) тут нет абсолютно правильного овтета, есть твой ответ, как именнно ты поступишь и дальше уже насколько твой выбор будет совпадать с культурой той команды в которую ты хочешь придти...
68 d4rkmesa
 
16.11.20
14:42
(65) Нужно продолжать закидывать резюме, отвечать на вопросы, со временем поймете, что от вас требуется.
69 Kongo2019
 
16.11.20
16:01
(67) Логично. Кто работает на объемы, там главное часы закрыть, работал я с такими, та еще потогонка, но деньги хорошие поднимались.
Работал и где нужно качество, так как база работала практически круглосуточно.
Но везде решение нужно оптимизировать или нет было не за мной.
70 Глупый ответ
 
16.11.20
20:08
(54) Устройся сначала сюда https://hh.ru/vacancy/40239455?query=1C или на почасовку, поработай пол годика, а потом уже ищи работу по лучше, а так ты сразу на 80000 рублей губу раскатал, да еще и без опыта. Все начинали с копеешных окладов или почасовки, нет такого, что пришел и сразу 150тыр.
71 H A D G E H O G s
 
16.11.20
20:09
Иди в отраслевик, реализуй им учет потерь спирта и виноматериалов.
72 Глупый ответ
 
16.11.20
20:10
(71) у алкашей вредно для кармы работать.
73 УдавВПопугаях
 
16.11.20
21:51
(0) смотря кем ты позиционируешь себя (либо они позиционируют тебя): если студент с перспективой обучения, то 1
если ты самостоятельный специалист, то 4
но как обычно на практике лучше смешивать предложенные варианты

сообщу руководителю, и даже если он скажет "а похер, пользуй, как есть", соглашусь, но все равно переделаю (и для себя спокойней, и когда нибудь это все равно всплывет и будет оценено)

переделаю сам и ненавязчиво недоумевая скажу "что за херня в базе творится"

ну 3 и 4 лабуда, никуда не ведущая, характеризующая как "никакой"
74 УдавВПопугаях
 
16.11.20
21:57
(0) кстати, а что в Керчи совсем не осталось заводов? Рыбно-консервный точно был, не импортозаместился что ли?
75 GANR
 
16.11.20
22:20
(2) а если я уже и так на учёте стою!? легко сказать набить - меня же посадят
76 УдавВПопугаях
 
16.11.20
22:27
(75) ну и ладно, отсидишь, потом опять придешь устраиваться, а там он же и уже ученый, проблем не будет
77 GANR
 
16.11.20
22:30
Если переделывать 15 минут, то сразу же переделанный вариант предложу. Может мне этот код ещё раз 20 запускать и он будет мне же работу тормозить. На фига мне это терпеть?

1
78 УдавВПопугаях
 
16.11.20
22:31
ну так вопрос вполне конкретный - контроль остатков в цикле по строкам документа, во сколько минут оценил бы?
79 GANR
 
16.11.20
22:35
(6) замеры покажут, я пожертвую читабельностью, если быстродействие начнет раздражать
80 GANR
 
16.11.20
22:39
(76) да он убежит как только мое резюме увидит и узнает о намерении прийти в офис
81 УдавВПопугаях
 
16.11.20
22:51
(80) можно устроить ему сюрприз, разговор начать даже не с темы про работу, а так, отвлеченное "как дела?"
82 palsergeich
 
16.11.20
22:59
(0) Если это работает и не вызывает пока технологических проблем - лучше использовать существующий библиотечный модуль.
Как миниум не будет размазываться ответственность за один и тот же блок по всей конфигурации.
Потом - будет проще все поправить. Время придет.
Сообщить о проблеме обязательно надо.
Но бежать с шашкой все переделывать - не разумно.
Поставить задачу в план и в отведенное время удовлетворить внутреннего перфекциониста.

2
83 palsergeich
 
16.11.20
23:01
(2) Зря, вопрос хороший. Даже слишком хороший.
На самом деле и все ответы верные и в то же время неверные. Одновременно.
Именно на умение выбрать приемлимый для себя ответ и обосновать его.
84 palsergeich
 
16.11.20
23:04
(3) Увы в зависимости от проекта - ответ 1 - сообщить о проблеме и ждать - тоже может быть неверен.
Неоптимальность существующего апи, при отсутствии проблем в текущий момент времени не должно блокировать выполнение задачи.
Иногда надо перфекциониста внутри себя подавлять.
Ибо задачи, сроки, бюджеты.
85 Bigbro
 
17.11.20
04:20
1 верно для больших контор
2 для очень больших контор
3 для ларьков
4 для мелких ларьков.
86 Конструктор1С
 
17.11.20
04:30
(0) какая-то совсем уж сферовакуумная ситуация. Я бы на такой дебильный вопрос даже отвечать не стал
87 Bigbro
 
17.11.20
04:33
нет неправильных ответов, любой даже который выглядит диким на первый взгляд может быть верным в определенной ситуации.
всегда все зависит от контекста.
люди которые дают подобные тесты без указания контекста - как правило недалекие. я бы не хотел работать у такого руководителя.
88 Кот16
 
17.11.20
05:24
Было подобное, не далее, как позавчера. Просто сообщил РП, на что получил ответ: "Да, ребята доделают, а ты доделывай свою задачу - завтра надо демонстрировать заказчику".

Лезть в чужой код при групповой разработке - такое себе. Неизвестно, что потом отвалится у коллег после твоих правок. При этом не исключено, что после их правок что-то у тебя отвалится.

2
89 Конструктор1С
 
17.11.20
05:42
К тому же руководитель проекта не нянька, не должен каждому прогеру сопли подтирать по каждому пустяковому вопросу. Иначе можно вообще дойти до абсурда, типа такого:
https://www.youtube.com/watch?v=nm5G-1Et0LE
90 vi0
 
17.11.20
05:56
(0) свой вариант: узнать, а есть ли проблема в том блоке? может не оптимально в теории, а на практике все ок?
91 seevkik
 
17.11.20
06:23
В ТЗ таки и написано: "Так как Вам необходимо, по заданию сделать новый документ, который должен иметь табличною часть, в которой возможно несколько строк  с разными значениями номенклатуры и серии, и для проверки Вам необходима будет вызвать процедуру проверки остатка столько раз, сколько у вас строк в  табличной части документа.", но, вообще, мало данных:
1 - Вдруг начальник дурак, сделаю по 1, а остальные будут ругаться, или процесс разработки встанет согласованиями
2 - Ты прикрыт и крайним не будешь, и разработка не встанет, и, если надо, то сами спросят. Ты в дураки идешь, а не в начальники
3 - Разработка идет по тз, но ведешь себя как индус
4 - По факту результат примерно тот же, что и в пункте 1, но это прямое неследование тз без согласования, отсекаем.

2
92 vi0
 
17.11.20
06:39
(77) а тестирование тоже в эти 15 минут в ходит?
93 vi0
 
17.11.20
06:41
(88) вот вот. главное слово "заказчик" как то совсем упускается в обсуждении
94 Провинциальный 1сник
 
17.11.20
06:50
Если получится написать запрос, который выполнит то же, но за время менее 5 секунд - то переделывать. Если нет - то хрен с ним. Цикл по крайней мере можно визуализировать и прогнозировать время.
95 vi0
 
17.11.20
07:04
(94) что за время такое 5 секунд?
96 lEvGl
 
гуру
17.11.20
07:06
(92) процедура контроля остатков тривиальная тема, много раз описанная в статьях и много раз использованная в кодах, вполне реально, что 15 минут хватит. Даже не знаю, каким либералом надо быть, чтобы находить аргументы за запрос в цикле. Процедуру делать надо свою, чтобы потом использовать в других местах, текущую оставить и не трогать, чтобы бракодел ебалы еще больше не наделал
97 vi0
 
17.11.20
07:10
(96) ну арифметика тоже дело тривиальное, но и там легко можно дров наломать
я ведь не про разработку, а про тестирование
98 Bigbro
 
17.11.20
07:12
(96) знакомый подход, помню, проходили.
а еще потом каждый разработчик свои расширения для данных пилит, и свои данные в них хранит.
а потом садишься разбираться и волосы дыбом - почему у тебя 4 разных процедуры выполняющих одно и то же вызываются из разных мест
и берут данные из 4 разных источников.
и внезапно эти данные рассинхронизировались...
99 Конструктор1С
 
17.11.20
07:48
Что-то вспомнился мне ЗУП. Несколько лет в него не заглядывал, и лучше бы вообще не заглядывал. В ЗУП 2.5 была серьёзная проблема - махровое дублирование запросов. Один и тот же запрос, с косметическими отличиями, мог повторяться 100500 раз в различных частях конфы. В ЗУП 3 начали с этой проблемой бороться. НО! ЗУПовцев кидануло из одной крайности в другую. Сейчас они понаделали универсальные механизмы-комбайны с жутким API. Допустим, чтобы получить некую временную таблицу, в параметры экспортной процедуры нужно передать сложные настройки в виде нескольких коллекций значений. Дублирование может и победили, но породили переусложнённых уродцев.
Как пример можно привести отчёты по начислениям. Это просто эпик уродство. На одном отчёте АнализНачисленийУдержаний они взгромоздили с десяток различных отчётов, между которыми общее только то, что они черпают данные из одних и тех же регистров. Каждый отчёт это отдельный вариант отчёта АнализНачисленийУдержаний со своей структурой. Для вывода половины из этих отчётов используются сложные алгоритмы...
Из категории "заставь дурака Богу молиться". Боролись с дублированием функционала, но породили кривую сложноту
100 Провинциальный 1сник
 
17.11.20
07:53
(95) Психологический порог паузы между нажатием на кнопку и ощущением "1с тормозит".
101 Кот16
 
17.11.20
07:58
(99) ЗУП просто нужно любить и принимать его таким, какой он есть)))
102 vi0
 
17.11.20
08:14
(100) без замеров как сейчас выполняется?
103 Eeeehhhh
 
17.11.20
08:19
Работает не трожь.

4
104 lEvGl
 
гуру
17.11.20
08:20
(97) ну и я в том числе про тестирование - чтобы запрос в цикле выиграл у разового запроса, должно много звезд сойтись, в общем случае один запрос лучше
(98) не надо утрировать, только процедура контроля остатков может быть в трех-четырех вариантах - с учетом серий, склада, с и без учета остальных аналитик, если делать единую процедуру, то волосы дыбом встанут, когда устанешь подгонять для нее входные параметры и 95%, что возникнет ситуация, когда "универсальная" процедура не подойдет и станет не универсальной, придется допиливать и так накрученный алгоритм
105 Eeeehhhh
 
17.11.20
08:25
Так как функция скорей всего юзается в куче мест, которые тебе придется переписать - ты станешь крайним по всем ошибкам, которые к тебе не относятся ...
106 vi0
 
17.11.20
08:32
(104) еще раз - я про длительность разработка+тестированиа, не про то что запрос лучше или хуже
107 MyNick
 
17.11.20
08:35
(94) Если в системе активно работает сотня другая пользователей и у них самые тяжелые запросы при одновременной работе работают 5 секунд - это одно.
Если ты разработчик и у тебя на минибазе это выполняется по 5 секунд, значит в реальной работе пользователи могут и не дождаться результата.
108 Alres
 
17.11.20
08:43
Решение зависит от обстоятельств, в которых задача была поставлена. Если времени в запасе много - можно молча переделать процедуру, не дергая по пустякам РП.
Если непонятно какие есть ресурсы - уточнить у РП.
Если времени совсем нет - использовать то, что есть.
109 lEvGl
 
гуру
17.11.20
08:54
(106) что там тестировать? скопировал много раз описанную и еще больше раз использованную процедуру и все на этом, тот случай когда можно даже поспорить, что взлетит "с первой компиляции"
110 lEvGl
 
гуру
17.11.20
08:56
(108) он студент, какие там сроки, минимум три месяца есть, хотя если все это время только это делать, то могут послать и раньше
111 lEvGl
 
гуру
17.11.20
08:58
в том смысле, что ни о каких дедлайнах у студента речи быть не может, он учится, со всеми вытекающими
ну если уж совсем тугой, то конечно могут и раньше задуматься о его необходимости
112 Конструктор1С
 
17.11.20
09:15
(100) есть же длительный кот из БСП!
https://cs9.pikabu.ru/post_img/2016/11/17/6/1479370908141023456.jpg

(101) надо зуповцам архитектора поменять
113 ДенисЧ
 
17.11.20
09:21
(112) Зуповцев надо деопртировать на родину - на Венеру
114 Kongo2019
 
17.11.20
09:37
(112) Это было весело. Я вообще офигел когда его первый раз увидел. Вместо оптимизации конфы они кота повесили. А как бухи только этого зверя не обзывали.
Пришлось новый сервер прикупить, чтобы от этого зверя избавится.
115 Провинциальный 1сник
 
17.11.20
10:04
(114) Надо не кота было, а картинку с анимацией чаепития. Типа, пока 1с работает, вы отдохните. Тогда бухгалтера бы восприняли это позитивно)
116 ДенисЧ
 
17.11.20
10:05
А сейчас кот не скачет ((
117 Azverin
 
17.11.20
10:06
(47) может, дело не в знаниях, а в тебе лично?
если ты не производишь должного вида на работодателя, то на знания уже не смотрят.

2
118 БаксПо90
 
17.11.20
10:12
(117) там анкета и удаленная работа. Так что есть идеал , а есть он .. ему надо сделать отображения себя на этот идеал .. оптимальным образом)
119 Kongo2019
 
17.11.20
10:24
(117) Может быть. Если они бы еще рассказывали почему я не подошел там.
А так, игра в угадайку, чего им надо.
120 vi0
 
17.11.20
11:10
(109) повидал я товарищей aka "что там тестировать?" когда на бою форма документа не проходила синтаксический контроль
121 ILM
 
гуру
17.11.20
11:25
На заре моего программирования в 1995 году, в отпуск ушла ведущий специалист отдела разработки. А в её алгоритме ошибка, и начальник отдела попросил меня исправить. Там было 350 строк кода на паскале, когда она вернулась из отпуска, то строк было всего 40, делали они тоже самое, но в три раза быстрее. Она очень на меня сильно обижалась и года три напоминала не лезть в чужой код без разрешения.

1
122 ДенисЧ
 
17.11.20
11:27
(121) А ты ей напоминал, что код с ошибками в продакшен пихать некомильфо?
123 Джинн
 
17.11.20
11:35
Тут как в армии - обнаружил - доложи. А дальше пусть решение принимает тот, кто управляет процессом.

1
124 Oftan_Idy
 
17.11.20
11:59
(121) И правильно делала, что обижалась. Ты же под начальника копать начал
125 vi0
 
17.11.20
12:01
(121) и как ты ей это преподнес?
126 Oftan_Idy
 
17.11.20
12:02
(0) Конечно надо переделать.
К тому же это не сложно, за день точно управишься, с перекурами.
Сделаешь отдельную функцию, сделаешь в ней запрос к документу, выдашь в результат строки с ошибками.
Заодно управляемую блокировку наложишь на регистр остатков.

Если вдруг будет 100500 строк и станет проблемой большой запрос, тогда и будет уже анализировать какой метод в таком случае использовать. Тогда много мелких запрос переварится лучше.

Оставлять такое извращение как есть - не комильфо, фу таким быть.

1
127 art_id
 
17.11.20
12:20
Сообщить, дальше пусть ответственный решает.
Есть у нас один прог, увидел неоптимальный код, который к его задаче вообще никаким боком, и внес изменения.
В рабочей база в итоге ошибка вылезать стала, благо это была не критичная самописка по учету моб. связи. Вроде ему даже с вертушки в щи не прописали. Скорей всего устно отделался.

1
128 Глупый ответ
 
17.11.20
12:24
(123) Товарищ генерал, а чего это у вас на плацу насрано? Устраните пожалуйста нарушение, я по такому плацу маршировать не буду.
129 Глупый ответ
 
17.11.20
12:26
или не не так. Товарищ генерал докладаю, у вас военные действия не по уставу, я так воевать не согласен, пока не устранят.
130 ДенисЧ
 
17.11.20
13:15
(129) ТоварищЬ рядовой! Найдите метлу и приведите плац в порядок. О выполнении доложить.
131 ILM
 
гуру
17.11.20
13:17
(125) сказал что исправил ошибку в поцедуре.
132 GANR
 
18.11.20
09:56
(92) Лучше уж 15 минут лишних потратить (ну пусть даже пролететь), чем потом терпеть плохую работу.
133 GANR
 
18.11.20
10:30
(121) [Обижалась] я лично от души благодарю, если кто-то находит способ сократить мой код. Думаю, меня бы выгнали уже с того места, где Вы 3 года проработали.
134 1Сергей
 
18.11.20
13:42
(83) >>Зря, вопрос хороший. Даже слишком хороший.
>>На самом деле и все ответы верные и в то же время неверные. Одновременно.
>>Именно на умение выбрать приемлимый для себя ответ и обосновать его.

Мне кажется Вы не понимаете задачу экзаменатора. Нужно проверить скилл кандидата, а не задолбать его
135 1Сергей
 
18.11.20
13:46
(134) * Экзаменатора = Экзаменуемого
136 Lorhen
 
18.11.20
16:14
Этож надо еще угадать, что хотят от тебя услышать)) И что из себя представляет рук.проекта.
Я трижды работала с рук.проекта. Первый вырос из программистов. Там была полная демократия. Все работали на конечный результат. А два последних пришли из консультантов. Начинали с бухгалтеров. Кодить особо не умели. Но с ними надо было делать вид, что советуешься) Чтобы почувствовали свою особую важность))
В общем исходя я бы задумалась нужна ли мне такая работе)) И я бы написала свою процедуру

4
137 vi0
 
19.11.20
12:01
(136) > Чтобы почувствовали свою особую важность))
а ведь могут почувствовать другое - что ты советуешься чтобы они почувствовали свою важность
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший