Префиксация объектов - полезный типовой функционал БСП

21.06.21

Разработка - Универсальные функции

В данной публикации предлагаю рассмотреть основные типовые возможности библиотеки стандартных подсистем (БСП), касаемые префиксации объектов конфигураций.

 

Введение

Всем доброго времени суток!

В данной статье предлагаю рассмотреть некоторые полезные возможности актуальной библиотеки стандартных подсистем (БСП) в области функционала подсистемы "Префиксация объектов". На текущий момент написания статьи актуальная версия БСП - это БСП версии 3.1.4.265.

Кому может быть полезна данная статья? Данная статья будет полезна прежде всего внедренцам-программистам, работающими с любыми современными типовыми конфигурациями на Платформе 1С 8.3. Поскольку, любая современная типовая конфигурация содержит в себе библиотеку стандартных подсистем, соответственно и подход к префиксации объектов в данных конфигурациях одинаковый.

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

Разобью эту статью на две части. В первой части мы рассмотрим основные базовые возможности БСП "Префиксации объектов" по разнообразному преобразованию входящего в нее номеру объекта. А во второй части рассмотрим небольшую и очень полезную функцию, которая позволяет "оценить" и получить информацию об объекте в рамках системы БСП "Префиксации объектов".

Итак, переходим в первой части:

 

Часть 1. Основные базовые возможности БСП в рамках подсистемы "Префиксация объектов"

Рассмотрим программный интерфейс функционала общего модуля БСП ПрефиксацияОбъектовКлиентСервер по работе с префиксами - будет полезен для формирования номеров (документов) для вывода печатных форм:

 

Функция УдалитьПрефиксыИзНомераОбъекта(Знач НомерОбъекта, УдалитьПрефиксОрганизации = Ложь, УдалитьПрефиксИнформационнойБазы = Ложь) Экспорт

 
 УдалитьПрефиксыИзНомераОбъекта

 

Примеры использования:

НомерОбъекта = "0ФНК-000365"; // строка

УдалитьПрефиксыИзНомераОбъекта(НомерОбъекта, Истина, Истина) // "000365"
УдалитьПрефиксыИзНомераОбъекта(НомерОбъекта, Ложь, Истина)   // "Ф-000365"
УдалитьПрефиксыИзНомераОбъекта(НомерОбъекта, Истина, Ложь)   // "НК-000365"
УдалитьПрефиксыИзНомераОбъекта(НомерОбъекта, Ложь, Ложь)     // "ФНК-000365"

 

Функция УдалитьЛидирующиеНулиИзНомераОбъекта(Знач НомерОбъекта) Экспорт

 
 УдалитьЛидирующиеНулиИзНомераОбъекта

 

Пример использования:

НомерОбъекта = "0ФНК-000365"; // строка

УдалитьЛидирующиеНулиИзНомераОбъекта(НомерОбъекта) // "0ФНК-365"

 

Функция ПользовательскийПрефикс(Знач НомерОбъекта) Экспорт

 
 ПользовательскийПрефикс

 

Пример использования:

НомерОбъекта = "0ФНК-М00365"; // строка

ПользовательскийПрефикс(НомерОбъекта) = "М"

 

Функция НомерНаПечать(Знач НомерОбъекта, УдалитьПрефиксИнформационнойБазы = Ложь, УдалитьПользовательскийПрефикс = Ложь) Экспорт

 
 НомерНаПечать

 

Пример использования:

НомерОбъекта = "0ФНК-М00365"; // строка

НомерНаПечать(НомерОбъекта, Истина, Истина) // "365"
НомерНаПечать(НомерОбъекта, Ложь, Истина)   // "НК-365"
НомерНаПечать(НомерОбъекта, Истина, Ложь)   // "М365"
НомерНаПечать(НомерОбъекта, Ложь, Ложь)     // "НК-М365"

 

Функция УдалитьПользовательскиеПрефиксыИзНомераОбъекта(Знач НомерОбъекта) Экспорт

 
 УдалитьПользовательскиеПрефиксыИзНомераОбъекта

 

Пример использования:

НомерОбъекта = "0ФНК-М00365"; // строка

УдалитьПользовательскиеПрефиксыИзНомераОбъекта(НомерОбъекта) // "0ФНК-00365"

 

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

 

Часть 2. ОписаниеМетаданныхИспользующихПрефиксы() - очень полезная возможность подсистемы "Префиксации объектов"

Здесь я привожу пример работы с функцией - ОписаниеМетаданныхИспользующихПрефиксы(), находящуюся в общем модуле "ПрефиксацияОбъектовСлужебный":

Функция ОписаниеМетаданныхИспользующихПрефиксы() Экспорт
Обратиться к ней можно вот так:
Результаты = ПрефиксацияОбъектовСлужебный.ОписаниеМетаданныхИспользующихПрефиксы();

 

На выходе функции - ТаблицаЗначений, в которой указаны и описаны метаданные. Привожу пример на рисунке:
Рис.1 Результат "ТаблицаЗначений", возвращаемый служебной функцией ОписаниеМетаданныхИспользующихПрефиксы().
 
Помимо того, использует ли объект ПрефиксИБ или ПрефиксОрганизации, здесь можно увидеть много полезной информации - что это за объект, периодичность номера, используется код или номер. Есть информация о подписке.
Данная функция экспортная, доступна по всей конфигурации.
На этом, мы закончим разбор основных полезных функций подсистемы "Префиксация объектов" и перейдем к заключению и сделаем выводы:
 

Заключение и выводы

В данной статье мы рассмотрели основную выжимку подсистемы "Префиксация объектов" с системе БСП. Как было отмечено ранее - данные методы вы можете использовать в любой стандартной конфигурации 1с, основой которой является библиотека стандартных подсистем. Как самый простые примеры - это вывод на печать собственных печатных форм и получение информации об объектах в рамках системы "Префиксации объектов".

Данный материал призван изложить базовые возможности в тенденциях текущих стандартов разработок - это готовый инструмент для работы со подсистемой "Префиксация". Инструменты, рассматриваемые в данной статье готовы к применению сразу.

Для написания этой статьи я использовал Платформу 1с - 8.3.18.1363 и последнюю версию (на момент написания статьи) конфигурации БСП 3.1.4.265.

Спасибо за прочтение данной статьи-шпаргалки.

 

Другие мои материалы по подсистемам БСП

Так же прошу ознакомиться с другими моими статьями по функционалу библиотеки стандартных подсистем и типовым конфигурациям:

Базовое понимание внедрения механизма печати в любом документе конфигурации на БСП

Генерация штрихкодов с помощью БСП для программистов

Полезные встроенные функции для работы с печатными формами и не только на УТ 11.4 и БП 3.0 (сравнение)

Печать макета MS Word в любом документе с помощью БСП

Работаем с контактной информацией в конфигурациях на БСП

префиксация бсп стандартные подсистемы

См. также

БСП. Добавляем отчет в меню Отчеты

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Добавим новый отчет в меню нового документа средствами БСП.

02.04.2024    3137    John_d    10    

89

Шаблоны новых объектов 1С для 1С:Бухгалтерии предприятия

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Механизмы типовых конфигураций Платформа 1С v8.3 1С:Бухгалтерия 3.0 Бесплатно (free)

Используются для создания новых объектов в конфигурации, чтобы не забыть, что нужно сделать. Сделано на примере 1С:Бухгалтерия предприятия, в других конфигурациях могут быть другие, а могут быть и похожие объекты.

28.12.2023    4985    mrXoxot    11    

100

Переоткрытие внешних обработок

Универсальные функции Платформа 1С v8.3 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    4108    ke.92@mail.ru    16    

62

Валидация JSON через XDTO (включая массивы)

WEB-интеграция Универсальные функции Механизмы платформы 1С Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

28.08.2023    9410    YA_418728146    6    

143

Печать непроведенных документов для УТ, КА, ERP. Настройка печати по пользователям, документам и печатным формам

Пакетная печать Печатные формы Адаптация типовых решений Универсальные функции Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Абонемент ($m)

Расширение для программ 1С:Управление торговлей, 1С:Комплексная автоматизация, 1С:ERP, которое позволяет распечатывать печатные формы для непроведенных документов. Можно настроить, каким пользователям, какие конкретные формы документов разрешено печатать без проведения документа.

2 стартмани

22.08.2023    2244    25    progmaster    8    

3

Многопоточное выполнение процедуры с помощью ДлительныеОперации

БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

В публикации: Приведен шаблон для запуска многопоточной операции для различных вариантов размещения многопоточной операции, в том числе в модуле объекта внешней обработки, встроенной в справочник Дополнительные отчеты и обработки; Представлен вариант корректного отображения прогресса многопоточной операции; Приведены замеры, демонстрирующие целесообразность использования нового механизма для увеличения производительности.

1 стартмани

26.02.2023    8804    egoriy111    27    

90
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. olololeg 23.06.21 08:38 Сейчас в теме
Выскажу свое мнение, однозначно за то что освещаете локальные механизмы БСП это плюс, но вот сама по себе статья могла бы уместиться в пару строк, с названием общего модуля и основными функциями, а дальше результат программист увидит сам. Вставка кода хоть и увеличивает объем статьи, но появится другой релиз БСП, результат выполнения функций будет тот же, а код уже может быть другой.

P.S. Так же хотел бы добавить, было бы круто если вы бы приводили примеры где используется данный механизм, ведь у новичков часто бывает проблема с основными печатными формами, где номер преобразуется так же через данный модуль, плюс я сталкивался с нумерацией при формировании кассовых книг, так как при проведении СФ в регистр сведений "Журнал учета счетов-фактур" писался номер отличающийся от номера в печатных формах.
2. echo77 1881 23.06.21 08:52 Сейчас в теме
Код, оформленный в сворачиваемых элементах, не лишний - не надо открывать конфигурацию чтобы читая статью понимать как это работает
3. olololeg 23.06.21 09:00 Сейчас в теме
(2)Да, я тут не прав, од все таки полезен, не только для анализа, а если у пользователя нет под рукой БСП, а он бы хотел позаимствовать функционал нумерации, а тут и описание и код.
4. DrAku1a 1715 25.06.21 08:58 Сейчас в теме
Ранее НомерНаПечать называлась ПолучитьНомерНаПечать, чем 1С уже неоднократно подставила разработчиков внешних печатных форм.
TUTSIC923; Natalia29; +2 Ответить
Оставьте свое сообщение