"Гуглите, господа!", или как Вася свойство искал

Публикация № 1091321

Программирование - Практика программирования

52
Небольшая история про то, как программист Вася искал свойство на палитре.

 

Бывает так, что разработчики тупят. Нет, правда.

С нами, конечно, не случаетсяМы ведь не делаем никогда ошибки. Это история точно не про нас

Она про гипотетического разработчика Васю. 

 

Дано:        У обработки есть реквизит с типом "СписокЗначений". 

Задание:  вынести его на форму и ограничить выбор значений типом "Число". Пользователи должны заносить в него только числа. 

Решение: 

- да чё тут делать? Помню, просто решается. У реквизита на форме есть свойство ТипЗначения..."

Но стоит нашему разработчику открыть палитру свойств...

 

 

Стадия 1. Отрицание

 

 

- Да было же. Я ж видел его! 

 

Разработчик Вася не верит своим глазам. И начинает поиск свойства по другим местам.

И у элемента формы, и у самой обработки и, чем чёрт не шутит, в свойствах всей конфигурации... 

Нигде нету.

- Может на Мисте подскажут?

 

 

Есть легенда, что на Мисте есть топик, в котором чётко и по делу задают вопрос и так же чётко отвечают. Но это совсем другая история..

 

- Ну хорошо, значит найду ту обработку, в которой это видел!

 

В моменты поиска "той самой" так быстро летит время:

- Ух ты, вот эту обработку я искал на прошлой неделе. 

- О, а эту я вообще забыл. Нужно отдать заказчику. Вспомнить бы какому..

- Что за большая красная кнопка с надписью "Сделать всё"? Проверю ка её на продуктиве...

И так далее, пока не кончится терпение. Или, как в нашем случае, найдётся злосчастная "та самая" обработка. 

 

 

Стадия 2. Гнев

- Нашёл! Ну вот же, есть свойство!

И, действительно, свойство есть:

 

 

Василий открывает предыдущую обработку... Свойства нет. 

Разработчик не сдаётся. Резким движением руки он перекидывает реквизит с одной формы на другую. И сравнивает.

 

 

 

Васю посещают догадки, но...

 

 

Стадия 3. Торг

 

- Может почистить кэш? Сделать тестирование и исправление? chdbfl?

 

Василий решает отложить эту задачу, перезагрузить всё что возможно и сходить принять валерьянки.

Бывает так отложишь сломанную обработку, она полежит, а завтра, глядишь, и работает снова. Главное не забыть про неё.

Эту обработку Вася точно не забудет. Её через день сдавать уже.

И вот на следующее утро, после полной перезагрузки компьютеров, серверов и электростанций, наш разработчик возвращается к ней.

 

 

Стадия 4. Депрессия

- Ничего не изменилось...

 

Василий чувствует, что потратил время зря. Он вспоминает всё, что сделал. Сколько времени впустую.

Опустив руки, разработчик прибегает к последнему. Гуглит...

 

 

Стадия 5. Принятие

 

- Может просто и не было такого свойства?

Василий подозревал, что это не глюк. И что не разыгравшееся воображение.

- так хотелось найти свойство!

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

 

Но если у вас реквизит обработки, то такой возможности не будет.

 

Что остаётся делать? Великий Гугл подсказывает:

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    Объект.СписокЗначений.ТипЗначения = Новый ОписаниеТипов("Число");
    
КонецПроцедуры

На самом деле очень просто. Если знать об этом и помнить. А если не помнить - гуглить. И не тупить. 

Мы ведь с вами никогда не тупим, верно? И ничего не забываем. С нашим уровнем такого не происходит

Ну ничего, разработчик Вася не унывает. Он помнит, что 

Не ошибается тот, кто ничего не делает

И, сдав задачку вовремя, с удовольствием отправился на выходные пожарить шашлычков. Отдых - лучшее лекарство. 

 

Понравилась статья?

 

Товарищи, 1Сники. Не будьте равнодушными. Каждая ваша "звёздочка" порадует и автора и программиста Васю. Он своими пушистыми черными лапками с удовольствием обнимет кусочек шашлыка и снова отправится в приключение по миру 1С. И будет радоваться вашим "лайкам".

 

Ну а после переходите к другим работам. Вдруг будет интересно.

"Меньше копипаста!", или как Вася универсальную процедуру писал

Сортируем ДанныеФормыДерево на клиенте

Не провоцируйте СКД, или пример "как не надо"

 

52

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. cuztam 12.07.19 15:58 Сейчас в теме
Классная статья 👍
Часто теряю какое-нибудь свойство, которого и не было
2. Di-dog 12.07.19 16:16 Сейчас в теме
Гуглить надо осознанно)
В данном случае, не надо ничего кодить, а открыть свойство реквизита самой обработки, а не реквизита формы.
Прикрепленные файлы:
3. plevakin 12.07.19 16:24 Сейчас в теме
(2) И где здесь указать тип "Число"?
4. fredly_nightly 12.07.19 16:34 Сейчас в теме
(2) ну и нету там такого свойства.
По сабжу - это известный "нюанс", который часто в тупик ставит. В статье примерно так и описано - ищешь свойство, пока не находишь паранойю 😂
user811769; +1 Ответить
5. wowik 577 12.07.19 16:36 Сейчас в теме
ТС случаем не родственник Белокаменцева?)
user811769; +1 Ответить
6. fredly_nightly 12.07.19 16:38 Сейчас в теме
8. acanta 56 12.07.19 16:42 Сейчас в теме
(5) свойственник.
Sherdrada; user811769; +2 Ответить
7. wowik 577 12.07.19 16:39 Сейчас в теме
9. arakelyan 313 12.07.19 17:05 Сейчас в теме
10. ccserg 68 12.07.19 17:21 Сейчас в теме
у вас тут ошибка :
Дано: У обработки есть с типом "СписокЗначений".
что есть то ? )))
11. SeiOkami 1011 12.07.19 17:24 Сейчас в теме
12. starik-2005 1864 12.07.19 18:13 Сейчас в теме
13. izidakg 150 12.07.19 19:16 Сейчас в теме
конец первой стадии и вторая просто регулярно.
еще не стоит забывать про практику, если регулярно занимаешься вопросами учета и консультаций, а значит кодишь не постоянно, то такие ситуации запросто у большинства.
14. qwinter 588 12.07.19 19:34 Сейчас в теме
А если бы Вася удосужился изучить, что такое Объект на клиенте, то подобных вопросов даже бы не возникало... Но кому в текущем мире нужны знания, гугл наше все...
ids79; boln; +2 Ответить
39. cuztam 15.07.19 14:42 Сейчас в теме
(14) если бы удосужились вдумчиво читать статью, то подобных глупых комментариев даже бы не возникало... Но кому в текущем мире нужно думать, хейт наше всё...
15. PerlAmutor 35 12.07.19 19:40 Сейчас в теме
Это вы еще GROUPING SETS не видели, отображение свойств реквизитов на форме может подождать...
17. qwinter 588 13.07.19 15:08 Сейчас в теме
16. sanek_gk 95 13.07.19 10:20 Сейчас в теме
У Васи пропало свойство!!! читать "документацию" он конечно же не будет, проще вопросы на форумах задавать ..
Yashazz; boln; +2 Ответить
40. cuztam 15.07.19 14:43 Сейчас в теме
(16) можно ссыль на ситуацию из документации?
18. echo77 1081 13.07.19 15:10 Сейчас в теме
(0) Сейчас проверил код на платформе 8.3.13.1690, конфигурация в режиме совместимости 8.3.8:
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    Объект.СписокЗначений.ТипЗначения = Новый ОписаниеТипов("Число");
    
КонецПроцедуры


Свойство у реквизита устанавливает, но это не работает - все равно приходится выбирать тип значения в списке
21. SeiOkami 1011 15.07.19 08:16 Сейчас в теме
(18) интересно, пришлите обработку. Проверил и на режиме совместимости и даже создал пустышку базу на 8.3.8 - работает.
Прикрепленные файлы:
Список2.epf
19. acanta 56 13.07.19 17:36 Сейчас в теме
Существует легенда о том, что на инфостарте вопросы задают пользователи и начинающие программисты по делу и всегда когда им что то не понятно.
20. ids79 2551 14.07.19 07:43 Сейчас в теме
Веселая статья.
Обидно, что смысловой информации в ней на две строчки, от силы.
А ведь это же все-таки профессиональный сайт.
Yashazz; qwinter; mickey.1cx; Светлый ум; +4 1 Ответить
23. fredly_nightly 15.07.19 08:19 Сейчас в теме
(20) как я вижу, смысл статьи даже не в конкретном "свойстве", а в том, как разработчик может потерять время на всякой мелочи. Прям основные ошибки перечислены. В том числе вопрос на мисте )
43. Yashazz 2384 15.07.19 20:20 Сейчас в теме
(20) а это у нас общая тенденция. Всякая хрень, зато популистски поданная, идёт "на ура" и в центре внимания, а серьёзных вещей всё меньше, и рейтинга у них тоже.
22. insurgut 197 15.07.19 08:19 Сейчас в теме
Не хватает только одного, что спросить у гугла (содержание строки поиска), чтобы в по первой же ссылке найти ответ? :)
24. fredly_nightly 15.07.19 08:22 Сейчас в теме
(22) ахаха, а это уже годы тренировок в Шаолине )
user603532_fan_club_chelsea; +1 Ответить
25. Rustig 1166 15.07.19 08:26 Сейчас в теме
(0) У объекта "СписокЗначений" есть свойство "Пометка"...
На обычных формах и на управляемых попробуйте реализовать интерактивную Пометку значений - узнаете много интересного. Например, что это делается по разному для ОФ и УФ... Вот здесь я с этим экспериментировал и добился отличных результатов https://infostart.ru/public/1043307/
Статья , к моему сожалению, прошла незамеченной в плане реализованного функционала. Может никому не надо?
А в части кодинга , думаю, есть что поизучать...

(20) напишите об этом: про СписокЗначний для ОФ И УФ - как отобразить на форме, как использовать в задачах. Думаю, статья может получиться достойная.
27. SeiOkami 1011 15.07.19 08:35 Сейчас в теме
(25)
Вот здесь я с этим экспериментировал и добился отличных результатов


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

Если опишите опыт в статье, то это, думаю, такая практическая информация будет интересна. Я бы с удовольствием почитал.
29. Rustig 1166 15.07.19 09:10 Сейчас в теме
(27)
об этом узнать можно будет только скачав и "поискав".

я на ИС с 2010г и постоянно качал и до сих пор скачиваю готовые разработки, чтобы разобраться в коде и принципах решения...
неужели на ИС наступили другие времена? где энтузиасты и экспериментаторы? где гении программирования? где Энштейны?
неужели 1см это много в сравнении с тем, чтобы тратить время на гугл, депрессию и гнев, описанные в статье?...
:)
31. SeiOkami 1011 15.07.19 09:31 Сейчас в теме
(29)
неужели 1см это много...

Скорее дело не в цене, а в позиционировании публикации. У вас инструмент для конкретной задачи, а не информационная статья по разработке. Многие могут пройти мимо, посчитав, что это им не нужно. И даже не понять, что это конкретный пример реализации, которую можно применить и в своей практике. На самом деле, в вашей обработке интересный подход. Люблю, когда в 1С перенимают опыт из других сфер программирования.

Если вы напишете информационную статью о самих нюансах работы, и укажите ссылку на существующую публикацию как её пример, то, думаю, и количество скачиваний поднимете. И интересной информацией подкормите сообщество.
Painted; Rustig; +2 Ответить
26. Неопределено 51 15.07.19 08:31 Сейчас в теме
Каждая ваша "звёздочка" порадует и автора и программиста Васю.

Они дают какие-то бонусы?
28. echo77 1081 15.07.19 08:50 Сейчас в теме
(26) Не дают. Просто выводят статью в центр внимания
33. Неопределено 51 15.07.19 09:53 Сейчас в теме
(28) Допустим. А что даёт попадание в центр внимания? Ещё больше звёздочек?
30. AntonSm 25 15.07.19 09:26 Сейчас в теме
(26) 50 звездочек - 10 стартмани.
34. Неопределено 51 15.07.19 09:54 Сейчас в теме
(30) Читается неубедительно. Есть пруфы?
36. catena 100 15.07.19 09:59 Сейчас в теме
(34)
Читается неубедительно. Есть пруфы?
Если количество знаков в статье превышает 10 000, вам начисляется 10 стартмани после прохождения первой премодерации.

Если ваша статья наберет больше 50 баллов (голосов), то вам начисляется 30 стартмани.

Если ваша статья наберет больше 100 баллов, то вам начисляется 20 стартмани.

Если ваша статья наберет больше 200 баллов и за каждую последующую сотню баллов вам начисляется 10 стартмани.
https://infostart.ru/about/help/29087/565174/
37. Неопределено 51 15.07.19 09:59 Сейчас в теме
(36) Спасибо, выше уже скинули.
35. echo77 1081 15.07.19 09:57 Сейчас в теме
(30) В справке написано, что дается 30 $m за 50 звездочек, но только за статьи по темам БУ, УУ, Автоматизации учета
32. fredly_nightly 15.07.19 09:33 Сейчас в теме
(26) походу кота Васю кормит
38. zqzq 16 15.07.19 10:48 Сейчас в теме
Как вариант -- использовать таблицу значений вместо списка. Заодно будет манёвр для будущих доработок добавлением колонок.
41. shard 253 15.07.19 17:01 Сейчас в теме
Только на наших форумах на первых трех страницах топикстартеру на вопрос типа "как кинуть реквизит на форму" объясняют какой он некомпетентный неудачник (не стесняясь в выражениях), попутно выясняя зачем это вообще надо делать (все же с реквизитами через js работают, это стильно, модно, молодежно). На четвертой странице топикстартер отпишется что нашел как это сделать, что это легко и закроет тему. Ответ на вопрос он не напишет. Особенности национальных форумов...
42. qwinter 588 15.07.19 18:22 Сейчас в теме
(41)
Особенности национальных форумов...
Ну так, только у нас полностью забивают на базовые знания, слишком люди крутые, что бы базовые знания сначала получить, а затем дальше развиваться. Особенность менталитета.
46. shard 253 15.07.19 21:45 Сейчас в теме
(42) "если ничего не помогает, то может быть прочитать документацию" - тоже сплошь и рядом. Но с другой стороны, корону лучше всего лопатой поправлять. Сколько раз проходилось задавать тупые вопросы (например как установить размер окна в винде больше чем разрешение экрана), на которые мегагуру (дипломированные специалисты между прочим) сначала смеются, а потом заявляют что 1) так сделать нельзя 2) кто так вообще делает 3) нормальному человеку в голову такое не придет 4) железо у меня гов плохое 5) надо обновлять конфигурацию и делать мобильный клиент и т.д. и т.п. Подсказка нашлась на англоязычном форуме.
Да и в публикации скрин явно не фотошоп.
44. Yashazz 2384 15.07.19 20:23 Сейчас в теме
А потом Вася вывалит это на ИС. И никто не подумает, что это демонстрация некомпетентности и непроходимой лени. Наоборот, рейтинг будет прям выше крыши, и все в восторге.
Я не понимаю, что, если в следующий раз Вася выложит публикацию про то, как он "хелло ворлд" писал, тоже в центре внимания окажется? Это вообще что, сайт анекдотов, башорг, или профессиональный ресурс? Как такое проходит премодерацию и почему за это идут стартмани???
mickey.1cx; qwinter; +2 Ответить
45. SeiOkami 1011 15.07.19 20:47 Сейчас в теме
(44) это демонстрация ошибок, которые совершают разработчики. И большинство это прекрасно поняли. Не будьте снобами и просто поймите, что каждому из нас есть куда расти. А то смотрите свысока на "плебеев", которые посмели извлекать опыт даже с шуточной пятничной статьи.
Удачи.
cargobird; cuztam; +2 Ответить
47. qwinter 588 16.07.19 09:00 Сейчас в теме
(45) Это демонстрация того, что вы так и не поняли, ни что объект существует вне формы, ни как происходит перенос свойств объекта посредством преобразования в данные формы, ни как приобретают свою типизацию элементы формы посредством связи с данными формы.
49. SeiOkami 1011 16.07.19 09:25 Сейчас в теме
(47) товарищ, вам нечем заняться, кроме как пытаться угадывать уровень знаний окружающих и вешать ярылки? Смотрю, сударь, вы заядлый хейтер.
48. Yurik1993 16.07.19 09:23 Сейчас в теме
Интересная статья, не встречал такого еще, но на ус намотал)
50. morgershtern 16.07.19 10:16 Сейчас в теме
Гугл нас не раз спасал)))
51. Jimbo 6 16.07.19 17:33 Сейчас в теме
Оставьте свое сообщение