Руководство пользователя > Механизм подписей > Использование в шаблонах [●] | « пред. | след. » |
Для разработчика шаблона доступно две функции, для работы с подписями:
function plx_get.signer_by_bill(bill_id_ in integer, sign_code_ in varchar2) return integer; function plx_fmt.signer(signer_id_ in integer, fmt_ in varchar2 default def_signer, personal_fmt_ in varchar2 default def_personal_name) return varchar2; |
Первая функция по bill_id документа определяет группу подписывающих лиц (верхняя часть справочника подписей), а по sign_code выбирает подпись и возвращает signer_id – id из таблицы signers (нижняя часть справочника подписей), причём тут учитывается дата документа (поле bill_date из таблицы bills).
Вторая функция форматирует выбранную подпись signer_id в соответствии с заданным форматом fmt_, по умолчанию формат такой:
def_signer constant varchar2(1024) := '{P}{s{ r}}'; |
Здесь можно использовать такие параметры подстановки:
-- подписывающий сотрудник -- S - должность -- P - сотрудник в должности -- s - подписывающее лицо (вместо сотрудника) -- r - право на подпись -- если в строке форматирования указано и 'P' и 's', то 's' имеет приоритет -- (не имеет смысла в одной строке выводить и то и другое) |
Параметр personal_fmt_ задаёт формат для ФИО сотрудника, см. функцию plx_fmt.personal.