TGViewer
Channel Public Channel
Стандарты 1С v8std

Стандарты 1С v8std

@v8std

v8std.ru

Автор @radio_ingvar
Subscribers
2.58K
Photos
22
Videos
6
Links
150

Showing posts older than #90 · Back to latest

Older Posts 18 shown
Post #89 3.93K
  • 🔥 38
  • 👍 6
  • 👏 4
  • 🥰 2
Post #87 2.79K
Работа с пользовательскими настройками

🟡 Для каждой настройки в хранилище общих настроек используйте уникальный строковый ключ.

🟡 В конфигурации должно быть общее место для редактирования всех пользовательских настроек.

🟡 Если позже будет создан пользователь с прежним именем, он получит ранее сохраненные настройки.

🟡 При необходимости перенос настроек между узлами реализуйте отдельно средствами встроенного языка.

#std557
https://v8std.ru/std/557/
Стандарты разработки 1С Работа с пользовательскими настройками #std557 Для хранения персональных настроек пользователя используйте ХранилищеОбщихНастроек.
  • 🔥 14
  • 👌 1
Post #85 4.24K
Новая главная страница и новый раздел!

https://v8std.ru/patterns/

Встречайте Паттерны на v8std
  • 🔥 55
  • ❤‍🔥 16
  • 👍 12
  • 🏆 4
Post #84 2.23K
Транзакции: правила использования

🟡 Начинайте и завершайте транзакцию в одном методе: пары НачатьТранзакцию и ЗафиксироватьТранзакцию`/`ОтменитьТранзакцию не разносите по разным функциям.

🟡 Размещайте ЗафиксироватьТранзакцию последней операцией в блоке Попытка, чтобы после фиксации не возникали новые исключения.

🟡 В блоке Исключение сначала вызывайте ОтменитьТранзакцию, затем выполняйте логирование и завершайте обработку оператором ВызватьИсключение.

🟡 Избегайте лишних, вложенных и длинных транзакций: открывайте их только для действительно неделимых операций.

#std783
https://v8std.ru/std/783/
Стандарты разработки 1С Транзакции: правила использования #std783 Транзакция - это действие, которое может быть выполнено только целиком. Если часть действия не выполнена - все действие отменяется.
  • 👍 16
  • 🔥 9
  • 👌 4
  • ❤ 3
  • 💯 3
  • 🤨 1
Post #83 2.65K
Ограничения на использование Выполнить и Вычислить на сервере

🟡 Не выполняйте на сервере строки кода, собранные из внешних параметров, без строгого контроля источника и содержимого.

🟡 Перед вызовом Выполнить и Вычислить на сервере включайте безопасный режим, а в сервисной модели дополнительно включайте безопасный режим разделения данных.

🟡 По возможности используйте безопасные обертки БСП вместо прямого вызова Выполнить и Вычислить.

🟡 Код, который нельзя запускать в безопасном режиме, выполняйте только после аудита и только из контролируемого администратором хранилища.

#std770
https://v8std.ru/std/770/
Стандарты разработки 1С Ограничения на использование Выполнить и Вычислить на сервере #std770 Ограничения на использование Выполнить и Вычислить на сервере #std770. В общем случае рекомендуется отказаться от исполнения произвольного кода через Выполнить и Вычислить.
  • 👍 12
  • 🔥 5
  • 👌 3
Post #82 2.49K
Использование подсистем

🟡 Используйте подсистемы для двух задач: построения разделов командного интерфейса и функциональной группировки объектов метаданных.

🟡 Если интерфейсная и функциональная структуры не совпадают, создавайте отдельную иерархию функциональных подсистем без включения в командный интерфейс.

🟡 Объекты без визуального представления в интерфейсе включайте только в функциональные подсистемы.

🟡 Команды администрирования выносите в раздел «Настройка и администрирование», сохраняя логическую группировку объектов по функциональному назначению.

#std543
https://v8std.ru/std/543/
Стандарты разработки 1С Использование подсистем #std543 Подсистемы решают две задачи:
  • 👍 9
  • 👌 5
  • 🔥 3
Post #81 2.56K
Использование параметров сеанса

🟡 Используйте параметры сеанса для значений, которые нужны в рамках текущего сеанса, запросов и ограничений доступа к данным.

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

🟡 Не используйте параметры сеанса как кеш вычислений серверной бизнес-логики; выносите такие вычисления в серверные функции с повторным использованием.

🟡 Инициализируйте параметры сеанса по требованию в обработчике УстановкаПараметровСеанса, а не массово при старте программы.

#std413
https://v8std.ru/std/413/
Стандарты разработки 1С Использование параметров сеанса #std413 Параметры сеанса используйте для хранения значений определенных типов в рамках клиентского сеанса.
  • 👍 12
  • 👌 4
  • ❤ 2
  • 🔥 2
Post #80 2.89K
Использование функциональных опций

🟡 Управляйте необязательной функциональностью через функциональные опции, а их значения храните в данных информационной базы.

🟡 Для контекстной доступности функциональности используйте параметризованные функциональные опции и устанавливайте параметры опций формы.

🟡 После изменения значений функциональных опций вызывайте ОбновитьИнтерфейс, чтобы командам и элементам формы применились новые ограничения.

🟡 Не перегружайте систему параметрами опций: исключайте дубли и не параметризуйте по данным с очень большим числом значений.

#std470
https://v8std.ru/std/470/
Стандарты разработки 1С Использование функциональных опций #std470 Если часть функциональности конфигурации может быть необязательной, управляйте ее доступностью через функциональные опции.
  • 👍 10
  • 👌 4
  • 🔥 3
  • ❤ 1
  • ❤‍🔥 1
  • 🥰 1
  • 🙏 1
Post #79 2.53K
Имена объектов метаданных в конфигурациях

🟡 Именуйте объекты метаданных по общим правилам именования, без лишних технических слов в названиях.

🟡 Для ролей разделяйте схему именования: прикладные роли называйте по должности, технические — по разрешаемому действию.

🟡 Подписки на события называйте от сути действия и образуйте имя от неопределенной формы глагола.

🟡 Функциональные опции и их параметры именуйте по включаемой функциональности и смыслу параметра, а не по внутренней реализации.

#std550
https://v8std.ru/std/550/
Стандарты разработки 1С Имена объектов метаданных в конфигурациях #std550 Стандарт дополняет общие правила именования: #std474: Имя, синоним, комментарий.
  • 👍 8
  • 🔥 3
  • 👌 3
  • ❤ 1
  • 🤯 1
Post #78 3.95K
Сегодня доделаны все стандарты с v8std

Сайт в десктопе улучшен

Добавлены диагностики от bslls, АПК и EDT с перекрестными ссылками на стандарты
  • 🔥 77
  • 👏 15
  • 👍 11
  • 🥰 4
  • 🏆 3
  • ⚡ 1
  • 🥴 1
Post #77 2.54K
Правила создания общих модулей

🟡 Общие модули создавайте для процедур и функций, объединенных по одному признаку.

🟡 При разработке общих модулей выбирайте один из четырех контекстов выполнения.

🟡 Серверные общие модули используйте для внутренней серверной бизнес-логики.

🟡 Именуйте по общим правилам именования.

#std469
https://v8std.ru/std/469/
Стандарты разработки 1С Правила создания общих модулей #std469 Общие модули создавайте для процедур и функций, объединенных по одному признаку. Обычно в один модуль попадает код:
  • 🔥 13
  • 👌 10
  • ❤ 2
  • 🤔 1
Post #76 2.14K

Forwarded from Игорь Апресов | Radio Ingvar

🔖ЧёПоСтандартам: инструкция, которую никто не читает, а потом страдает

Стандарты 1С часто воспринимают как “про оформление кода”: отступы, скобки, переносы.

Но в какой-то момент выясняется: в стандартах уже есть ответы на кучу типовых рабочих ситуаций, из-за которых мы спорим в ревью, ломаем архитектуру и тратим часы на “ну я так привык”.

На стриме разберем:
➡️ Стандарты глазами новичка: что я думал о них в начале и почему это было наивно.
➡️ Почему в вакансиях требуют, но на собеседованиях редко спрашивают.
➡️ Страх опозориться: как он мешает и как превращается в мотивацию (в том числе через блогинг).
➡️ Открытие “в стандартах ответы”: как быстро находить нужные места и применять их к задачам, а не к “красоте кода”.
➡️ Главный вывод: стандарты нужно периодически перечитывать, потому что память и реальность расходятся.

Приглашенный гость:
😶‍🌫️Роман Чумадин, автор блога «Е.БУДНИ программиста 1С» и рубрики «ЧёПоСтандартам».

Формат: разговор + разбор примеров + вопросы из чата.

😉 Ссылка на стрим
😄 Запись после стрима
🥰 Запись после стрима

🗓 Дата: 3 марта в 19:00
🧩 Кидайте заранее кейсы из практики: “как правильно по стандартам вот это сделать?” и “почему у нас в команде вечная война на эту тему”.
  • 🔥 29
  • 👍 7
  • ❤ 4
Post #75 2.64K
Обработчик события ОбработкаПроверкиЗаполнения

🟡 В обработчике ОбработкаПроверкиЗаполнения проверяйте корректность заполнения реквизитов шапки, табличных частей и других данных до записи.

🟡 Если проверка заполнения условная, в коде удаляйте такие реквизиты из массива ПроверяемыеРеквизиты.

🟡 Не используйте альтернативные схемы условной проверки, чтобы проверки оставались прозрачными для свойства «Проверка заполнения».

🟡 Учитывайте, что обработчик вызывается не при каждой записи; при обмене данными анализируйте ДополнительныеСвойства.ОтложенноеПроведение.

#std463
https://v8std.ru/std/463/
Стандарты разработки 1С Обработчик события ОбработкаПроверкиЗаполнения #std463 В обработчике ОбработкаПроверкиЗаполнения модуля объекта выполняйте проверки корректности заполнения реквизитов объекта:
  • 👍 13
  • 👌 3
  • 🔥 1
Post #74 2.06K
Открытие форм

🟡 Для открытия форм используйте метод ОткрытьФорму.

🟡 Если форма требует параметризации при открытии, передавайте все параметры через набор параметров формы.

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

🟡 Результат работы формы получайте через обработчики оповещений.

#std404
https://v8std.ru/std/404/
Стандарты разработки 1С Открытие форм #std404 Для открытия форм используйте метод ОткрытьФорму. (В проектах на платформе 1С:Предприятие 8.2 и ниже ОткрытьФормуМодально).
  • 🤝 19
  • 👍 5
  • 👌 3
  • ❤ 1
  • 🔥 1
Post #73 2.45K
Поля «Ответственный» и «Комментарий»

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

🟡 Располагайте внизу формы документа, последним полем.

🟡 Заголовок Комментарий выводите в названии вкладки, а у самого поля заголовок не отображайте.

🟡 Поле Ответственный выводите в нижней части формы документа.

#std719
https://v8std.ru/std/719/
  • 👍 27
  • 🔥 4
  • 👌 4
  • 👏 2
Post #72 3.02K
Безопасность программного обеспечения, вызываемого через открытые интерфейсы

🟡 При использовании интеграции со сторонними приложениями с помощью открытых интерфейсов (в частности, с помощью COM) требуется отключать исполнение произвольного кода средствами вызываемого приложения.

🟡 В частности, перед программным открытием документов Microsoft Word и Microsoft Excel через COM следует запрещать исполнение макросов.

🟡 «Разрешить запуск подписанных макросов (рекомендуется)» (выбран по умолчанию).

🟡 Форма настройки для клиентского кода должна быть доступна каждому пользователю, настройки должны сохраняться в разрезе пользователей, каждому пользователью должны быть доступны только свои настройки.

#std775
https://v8std.ru/std/775/
Стандарты разработки 1С Безопасность программного обеспечения, вызываемого через открытые интерфейсы #std775 При интеграции со сторонними приложениями через открытые интерфейсы (в частности, COM) отключайте исполнение произвольного кода средствами вызываемого приложения.
  • 🔥 11
  • 👍 9
  • 👏 4
  • 👌 1
Post #71 2.73K
Ограничения на использование экспортных процедур и функций

🟡Не размещайте экспортные процедуры и функции в модулях команд и общих команд.

🟡К этим модулям нельзя обращаться извне, поэтому экспорт там бесполезен.

#std544
https://v8std.ru/std/544/
Стандарты разработки 1С Ограничения на использование экспортных процедур и функций #std544 Не следует размещать экспортные процедуры и функции в модулях команд и общих команд. К этим модулям нет возможности обращаться из внешнего по отношению к ним кода, поэтому...
  • 👍 23
  • 🔥 6
  • ❤ 3
  • 🥱 3
  • 😁 2
  • 🥰 1
Post #69 2.44K
Изменения на сайте:

↔️Теперь для ссылок генерируется социальная карточка
https://v8std.ru

🔨Есть быстрый переход к просмотру исходников в markdown и открытием на внесение правок - если заметили ошибку отправляйте PR

▶️Вы же знаете, что сайт собирается сам из markdown? :)

🗂Для десктопного сайта нумерация разделов уходит в отдельную выравненную колонку, на которую можно скопировать и дать ссылку, чтобы поделиться конкретным абзацем
  • 👍 18
  • ❤‍🔥 3
  • ❤ 2
  • 🔥 2
  • 👏 2
  • 🎉 2
  • 👎 1
  • 🥰 1
  • 👌 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →