1с 8.3 при выводе строки управляемые формы

Куда же подевалось событие «ПриВыводеСтроки» в управляемых формах, и как с этим быть? Убрали его по всей видимости потому, что это был основной источник загруженности сервера. Особенно программисты не очень высокой квалификации любят напихивать в это событие кучу запросов и циклов, которые «бомбят» сервер, при перерисовке каждой строчки, видимой на экране. Так как в управляемых формах клиентское приложение может вообще выполняться на веб-браузере, да ещё с плохим интернетом, такая тактика может привести к тому, что пользователь целый день будет сидеть, тупо уставившись в зависшую 1С.

Поэтому, решив не особо заморачиваться с запретами в коде события, 1С решили вывести основные моменты, связанные с оформлением строк в реквизиты формы, вернее свойства. Это очень похоже на условное оформление в СКД.

Вы нажимаете на шапку формы, заходите в её свойства, и ищете в разделе «Оформление» ссылку «Условное оформление».

Открывается такой же инструментарий, как в СКД для условного оформления

Добавляем новое оформление зеленым плюсом, и нажимаем на три точки, чтобы добавить само оформление. Ото пока что не связано с чем нибудь конкретным. Просто указываем нужный цвет, доступность, штифт и т.д.

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

Вот какие параметры можно оформлять

Для подавляющего большинства случаев список вполне впечатляет.

Далее пишем условие, нажав на три точки в колонке «Условие»

Вы можете добавлять как группу условий, так и отдельные элементы. Условия между группами всегда «И», так же и между элементами, которые не находятся внутри групп всегда «И»

По сути мы написали условие :
Реквизит1 = 1 И Реквизит2 = 2 ИЛИ (НомерСтроки = 1 ИЛИ НомерСтроки = 3 ИЛИ НомерСтроки=6)

То есть внутри группы условие между отдельными элементами зависит от самой группы.

  1. Если это группа ИЛИ, условия будут ИЛИ внутри группы.
  2. Если это группа НЕ, значит конструкция такая: НЕ (условия внутри группы). Условия внутри группы будут идти через «И», поэтому, если хотите через «ИЛИ», в группу НЕ нужно добавить группу ИЛИ сразу.
  3. Группа И соответственно применяет условия «И» для выражения между элементами внутри себя.

Мои страдания и разбор «КАК ЭТО РАБОТАЕТ» можете более подробно рассмотреть в этом ролике:

1с 8.3 при выводе строки управляемые формы: 1 комментарий

Добавить комментарий