...

Получение списка подписантов

Тема в разделе "Вопросы по платформе", создана пользователем uvaev.nikita, 3 апр 2025 в 09:44.

Метки:
  1. uvaev.nikita

    uvaev.nikita Новичок

    Всем добрый день!
    Есть некий бизнес-процесс, в ходе которого присутствует согласование с обязательным подписанием (SES). Каким образом возможно выгрузить информацию об истории подписания - владелец подписи, сертификат, дата подписания, срок действия сертификата. В дальнейшем, данная информация необходима для наложения водяного знака.
    Попробовал обработать это скриптом, но на выходе получатся только информацию о последнем согласующем, а не о всех согласующих.
    Код:
    
    async function getSign(): Promise<void> {
        if (
    Context.data.podpisanie) {
            const 
    tmp await Context.data.podpisanie.fetch()
            const 
    signHistory await tmp.getSignHistory()
            for (
    let i signHistory.length 1>= 0i--) {
                const 
    sign await signHistory[i].signs[i]
                const 
    signDetails await sign.getDetails()
                const 
    row  Context.data.signTable!.insert()
                
    row.podpisant signDetails.commonName
                row
    .sertifikat signDetails.certSerialNumber
                row
    .srok_deistviya1 String(new Datetime(signDetails.certValidUntilAt).format('DD.MM.YYYY'))
                
    row.data_podpisaniya1 String(new Datetime(signDetails.signDate).format('DD.MM.YYYY hh:mm:ss'))
            }
            
    Context.data.signTable Context.data.signTable
        
    }
    }

    Вложения:

    Последнее редактирование: 3 апр 2025 в 11:41
  2. uvaev.nikita

    uvaev.nikita Новичок

    Нашел решение:
    Код:
    
    async function getSign(): Promise<void> {
        if (
    Context.data.podpisanie) {
            const 
    tmp await Context.data.podpisanie.fetch()
            const 
    signHistory await tmp.getSignHistory()
            for (
    let i Context.data.soglasovanie!.length 1>= 0i--) { // цикл по количеству подписантов
                
    const sign await signHistory[0].signs[i// история подписей с индексом 0, т.е. последняя, а цикл только по подписям
                
    const signDetails await sign.getDetails()
                const 
    row  Context.data.signTable!.insert()
                
    row.podpisant signDetails.commonName
                row
    .sertifikat signDetails.certSerialNumber
                row
    .srok_deistviya1 String(new Datetime(signDetails.certValidUntilAt).format('DD.MM.YYYY'))
                
    row.data_podpisaniya1 String(new Datetime(signDetails.signDate).format('DD.MM.YYYY hh:mm:ss'))
            }
            
    Context.data.signTable Context.data.signTable
        
    }
    }