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

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

 

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

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

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

 

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

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

Решение: 

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

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

 

 

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

 

 

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

 

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

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

Нигде нету.

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

 

 

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

 

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

 

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

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

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

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

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

 

 

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

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

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

 

 

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

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

 

 

 

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

 

 

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

 

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

 

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

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

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

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

 

 

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

— Ничего не изменилось…

 

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

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

 

 

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

 

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

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

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

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

 

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

 

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

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

Объект.СписокЗначений.ТипЗначения = Новый ОписаниеТипов("Число");

КонецПроцедуры

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

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

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

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

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

 

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

 

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

 

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

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

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

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

 

51 Comments

  1. cuztam

    Классная статья 👍

    Часто теряю какое-нибудь свойство, которого и не было

    Reply
  2. Di-dog

    Гуглить надо осознанно)

    В данном случае, не надо ничего кодить, а открыть свойство реквизита самой обработки, а не реквизита формы.

    Reply
  3. plevakin

    (2) И где здесь указать тип «Число»?

    Reply
  4. fredly_nightly

    (2) ну и нету там такого свойства.

    По сабжу — это известный «нюанс», который часто в тупик ставит. В статье примерно так и описано — ищешь свойство, пока не находишь паранойю 😂

    Reply
  5. wowik

    ТС случаем не родственник Белокаменцева?)

    Reply
  6. fredly_nightly

    (5) пчму?

    Reply
  7. wowik

    стль пхж.

    Reply
  8. acanta

    (5) свойственник.

    Reply
  9. arakelyan

    😂😂😂

    Reply
  10. ccserg

    у вас тут ошибка :

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

    что есть то ? )))

    Reply
  11. SeiOkami

    (10) спасибо, поправили)

    Reply
  12. starik-2005

    Стадии по-науке.

    Reply
  13. izidakg

    конец первой стадии и вторая просто регулярно.

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

    Reply
  14. qwinter

    А если бы Вася удосужился изучить, что такое Объект на клиенте, то подобных вопросов даже бы не возникало… Но кому в текущем мире нужны знания, гугл наше все…

    Reply
  15. PerlAmutor

    Это вы еще GROUPING SETS не видели, отображение свойств реквизитов на форме может подождать…

    Reply
  16. sanek_gk

    У Васи пропало свойство!!! читать «документацию» он конечно же не будет, проще вопросы на форумах задавать ..

    Reply
  17. qwinter

    (15) чего подождать?

    Reply
  18. echo77

    (0) Сейчас проверил код на платформе 8.3.13.1690, конфигурация в режиме совместимости 8.3.8:

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

    Свойство у реквизита устанавливает, но это не работает — все равно приходится выбирать тип значения в списке

    Reply
  19. acanta

    Существует легенда о том, что на инфостарте вопросы задают пользователи и начинающие программисты по делу и всегда когда им что то не понятно.

    Reply
  20. ids79

    Веселая статья.

    Обидно, что смысловой информации в ней на две строчки, от силы.

    А ведь это же все-таки профессиональный сайт.

    Reply
  21. SeiOkami

    (18) интересно, пришлите обработку. Проверил и на режиме совместимости и даже создал пустышку базу на 8.3.8 — работает.

    Reply
  22. fredly_nightly

    (20) как я вижу, смысл статьи даже не в конкретном «свойстве», а в том, как разработчик может потерять время на всякой мелочи. Прям основные ошибки перечислены. В том числе вопрос на мисте )

    Reply
  23. insurgut

    Не хватает только одного, что спросить у гугла (содержание строки поиска), чтобы в по первой же ссылке найти ответ? 🙂

    Reply
  24. fredly_nightly

    (22) ахаха, а это уже годы тренировок в Шаолине )

    Reply
  25. Rustig

    (0) У объекта «СписокЗначений» есть свойство «Пометка»…

    На обычных формах и на управляемых попробуйте реализовать интерактивную Пометку значений — узнаете много интересного. Например, что это делается по разному для ОФ и УФ… Вот здесь я с этим экспериментировал и добился отличных результатов https://infostart.ru/public/1043307/

    Статья , к моему сожалению, прошла незамеченной в плане реализованного функционала. Может никому не надо?

    А в части кодинга , думаю, есть что поизучать…

    (20) напишите об этом: про СписокЗначний для ОФ И УФ — как отобразить на форме, как использовать в задачах. Думаю, статья может получиться достойная.

    Reply
  26. Неопределено
    Каждая ваша «звёздочка» порадует и автора и программиста Васю.

    Они дают какие-то бонусы?

    Reply
  27. SeiOkami

    (25)

    Вот здесь я с этим экспериментировал и добился отличных результатов

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

    Если опишите опыт в статье, то это, думаю, такая практическая информация будет интересна. Я бы с удовольствием почитал.

    Reply
  28. echo77

    (26) Не дают. Просто выводят статью в центр внимания

    Reply
  29. Rustig

    (27)

    об этом узнать можно будет только скачав и «поискав».

    я на ИС с 2010г и постоянно качал и до сих пор скачиваю готовые разработки, чтобы разобраться в коде и принципах решения…

    неужели на ИС наступили другие времена? где энтузиасты и экспериментаторы? где гении программирования? где Энштейны?

    неужели 1см это много в сравнении с тем, чтобы тратить время на гугл, депрессию и гнев, описанные в статье?…

    🙂

    Reply
  30. AntonSm

    (26) 50 звездочек — 10 стартмани.

    Reply
  31. SeiOkami

    (29)

    неужели 1см это много…

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

    Если вы напишете информационную статью о самих нюансах работы, и укажите ссылку на существующую публикацию как её пример, то, думаю, и количество скачиваний поднимете. И интересной информацией подкормите сообщество.

    Reply
  32. fredly_nightly

    (26) походу кота Васю кормит

    Reply
  33. Неопределено

    (28) Допустим. А что даёт попадание в центр внимания? Ещё больше звёздочек?

    Reply
  34. Неопределено

    (30) Читается неубедительно. Есть пруфы?

    Reply
  35. echo77

    (30) В справке написано, что дается 30 $m за 50 звездочек, но только за статьи по темам БУ, УУ, Автоматизации учета

    Reply
  36. catena

    (34)

    Читается неубедительно. Есть пруфы?
    Если количество знаков в статье превышает 10 000, вам начисляется 10 стартмани после прохождения первой премодерации.

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

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

    Если ваша статья наберет больше 200 баллов и за каждую последующую сотню баллов вам начисляется 10 стартмани.

    https://infostart.ru/about/help/29087/565174/

    Reply
  37. Неопределено

    (36) Спасибо, выше уже скинули.

    Reply
  38. zqzq

    Как вариант — использовать таблицу значений вместо списка. Заодно будет манёвр для будущих доработок добавлением колонок.

    Reply
  39. cuztam

    (14) если бы удосужились вдумчиво читать статью, то подобных глупых комментариев даже бы не возникало… Но кому в текущем мире нужно думать, хейт наше всё…

    Reply
  40. cuztam

    (16) можно ссыль на ситуацию из документации?

    Reply
  41. shard

    Только на наших форумах на первых трех страницах топикстартеру на вопрос типа «как кинуть реквизит на форму» объясняют какой он некомпетентный неудачник (не стесняясь в выражениях), попутно выясняя зачем это вообще надо делать (все же с реквизитами через js работают, это стильно, модно, молодежно). На четвертой странице топикстартер отпишется что нашел как это сделать, что это легко и закроет тему. Ответ на вопрос он не напишет. Особенности национальных форумов…

    Reply
  42. qwinter

    (41)

    Особенности национальных форумов…

    Ну так, только у нас полностью забивают на базовые знания, слишком люди крутые, что бы базовые знания сначала получить, а затем дальше развиваться. Особенность менталитета.

    Reply
  43. Yashazz

    (20) а это у нас общая тенденция. Всякая хрень, зато популистски поданная, идёт «на ура» и в центре внимания, а серьёзных вещей всё меньше, и рейтинга у них тоже.

    Reply
  44. Yashazz

    А потом Вася вывалит это на ИС. И никто не подумает, что это демонстрация некомпетентности и непроходимой лени. Наоборот, рейтинг будет прям выше крыши, и все в восторге.

    Я не понимаю, что, если в следующий раз Вася выложит публикацию про то, как он «хелло ворлд» писал, тоже в центре внимания окажется? Это вообще что, сайт анекдотов, башорг, или профессиональный ресурс? Как такое проходит премодерацию и почему за это идут стартмани???

    Reply
  45. SeiOkami

    (44) это демонстрация ошибок, которые совершают разработчики. И большинство это прекрасно поняли. Не будьте снобами и просто поймите, что каждому из нас есть куда расти. А то смотрите свысока на «плебеев», которые посмели извлекать опыт даже с шуточной пятничной статьи.

    Удачи.

    Reply
  46. shard

    (42) «если ничего не помогает, то может быть прочитать документацию» — тоже сплошь и рядом. Но с другой стороны, корону лучше всего лопатой поправлять. Сколько раз проходилось задавать тупые вопросы (например как установить размер окна в винде больше чем разрешение экрана), на которые мегагуру (дипломированные специалисты между прочим) сначала смеются, а потом заявляют что 1) так сделать нельзя 2) кто так вообще делает 3) нормальному человеку в голову такое не придет 4) железо у меня гов плохое 5) надо обновлять конфигурацию и делать мобильный клиент и т.д. и т.п. Подсказка нашлась на англоязычном форуме.

    Да и в публикации скрин явно не фотошоп.

    Reply
  47. qwinter

    (45) Это демонстрация того, что вы так и не поняли, ни что объект существует вне формы, ни как происходит перенос свойств объекта посредством преобразования в данные формы, ни как приобретают свою типизацию элементы формы посредством связи с данными формы.

    Reply
  48. Yurik1993

    Интересная статья, не встречал такого еще, но на ус намотал)

    Reply
  49. SeiOkami

    (47) товарищ, вам нечем заняться, кроме как пытаться угадывать уровень знаний окружающих и вешать ярылки? Смотрю, сударь, вы заядлый хейтер.

    Reply
  50. morgershtern

    Гугл нас не раз спасал)))

    Reply
  51. Jimbo

    Виталь, привет! Жги ещё!

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *