Reference of patterns for working with the Standard Subsystems Library.
Principle
ALWAYS check whether a solution exists in BSP before writing your own code.
Search workflow
- Search via MCP
ssl_searchby keywords - Search via
codesearchhow similar tasks are solved in the codebase - Use of the BSP pattern if found
- Only then your own code — with documentation of why BSP was not suitable
Key BSP modules
| Module | Purpose |
|---|---|
| ОбщегоНазначения | Utilities: arrays, structures, strings, attributes |
| ОбщегоНазначенияКлиентСервер | Client-server utilities |
| СтроковыеФункцииКлиентСервер | Working with strings |
| Пользователи | Users, roles, access rights |
| РаботаСФайлами | File storage and attachments |
| УправлениеПечатью | Printed forms |
| ДлительныеОперации | Background jobs with progress |
| ВерсионированиеОбъектов | History of object changes |
| РаботаСПочтовымиСообщениями | Sending email |
| ДополнительныеОтчетыИОбработки | Registration of external reports and data processors |
Typical patterns
Users and rights
ssl_search("текущий пользователь роли")
ssl_search("проверка прав доступа")
Working with files
ssl_search("присоединённые файлы")
ssl_search("временное хранилище файлов")
Printed forms
ssl_search("управление печатью регистрация")
ssl_search("макет печатной формы")
See also /epf-bsp-init for registering a printed form.
Background jobs
ssl_search("длительная операция прогресс")
ssl_search("фоновое задание параметры")
Versioning
ssl_search("версионирование объектов запись")
ssl_search("история изменений объекта")
ssl_search("отправка письма smtp")
ssl_search("почтовое сообщение шаблон")
Remember
BSP is the first place to look for standard functions. Writing your own code when BSP has a solution is technical debt.