Histórico da Página
Classe que realiza a integração com o TAE diretamente sem interface.
Sintaxe
FwTotvsSign() |
Retorno
Nome | Tipo | Descrição |
---|---|---|
oSign | objeto | instância do motor de envio de documentos |
authenticate()
Realiza a autenticação no serviço do TAE. Ao realizar a autenticação com sucesso, as credenciais são armazenadas para novos usos. Caso já exista credencial válida armazenada
não é necessário informar novas credenciais. A credencial fica vinculada ao usuário logado no sistema.
Sintaxe
oSign:authenticate()-> Nil
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
cUser | Caracter | Usuário no TAE. Caso não seja passado tenta utilizar a credencial armazenada. | |||
cPassword | Caracter | Senha no TAE. Caso não seja passado tenta utilizar a credencial armazenada. |
isAuthenticated()
Retorna se está autenticada no TAE.
Sintaxe
oSign:isAuthenticated()-> logical
Retorno
Tipo | Descrição |
---|---|
logical | Autenticado se verdadeiro |
isAuthenticated()
Retorna se está autenticada no TAE.
Sintaxe
oSign:isAuthenticated()-> logical
Retorno
Tipo | Descrição |
---|---|
logical | Autenticado se verdadeiro |
uploadDocument()
Realiza o upload de um documento para o TAE.
Sintaxe
oSign:uploadDocument()-> logical
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
cFilePath | Caracter | Caminho do arquivo. Pode ser absoluto ou relativo. | X |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
requestAction()
Solicita a ação de n destinatários.
Sintaxe
oSign:requestAction()-> logical
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
nDocumentId | Numeric | Id do documento no TAE. | X | ||
aReceiver | Array | aReceiver Estrutura 0-Assinar [3] ExpJ: Json dados do Destinatário. | X |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
uploadSignedDocument()
Realiza o upload de um documento assinado digitalmente para o TAE.
Sintaxe
oSign:uploadSignedDocument()-> logical
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
nDocumentId | Numeric | Id do documento no TAE. | X | ||
cFilePath | Caracter | Caminho do arquivo. Pode ser absoluto ou relativo. | X |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
downloadDocument()
Realiza o download de um documento no TAE. O nome do arquivo será o retornado pela API.
Sintaxe
oSign:downloadDocument()-> Nil
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
nDocumentId | Numeric | Id do documento no TAE. | X | ||
cFilePath | Caracter | Pasta para gravação do arquivo | X | ||
cDocumentType | Caracter | Tipo do documento. Tipos possíveis: 1 - Original | "3" |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
deleteDocument()
Realiza a deleção do documento no TAE.
Sintaxe
oSign:deleteDocument()-> logical
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
nDocumentId | Numeric | Id do documento no TAE. | X |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
documentStatus()
Recupera o status de um documento no TAE.
Sintaxe
oSign:documentStatus()-> logical
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Referência |
---|---|---|---|---|---|
nDocumentId | Numeric | Id do documento no TAE. | X |
Retorno
Tipo | Descrição |
---|---|
logical | sucesso ou falha na operação |
getResponse()
Recupera a resposta do último método da plataforma chamado.
Sintaxe
oSign:getResponse()->json
Retorno
Tipo | Descrição |
---|---|
json | Resposta do TAE |
destroy()
Realiza a limpeza da classe
Sintaxe
oSign:destroy()→Nil
setVersion()
Seta a versão das apis que serão utilizadas
Parâmetros
Nome | Tipo | Descrição | Default | Obrigatório | Valores aceitos |
---|---|---|---|---|---|
cVersion | Caracter | versão que será utilizada | v1 | v1 ou v2 |
Sintaxe
oSign:setVersion(cVersion)-> nil
Informações | ||
---|---|---|
| ||
Método disponível a partir da LIB Label 20230626 |
Exemplo básico de utilização
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
function u_sign_teste()
Local oSign as object
Local cUser := "" //seu usuário no TAE
Local cPassword := "" //sua senha no TAE
RpcSetEnv("T1", "D MG 01", "admin", "1234") // informações do seu ambiente
oSign := FwTotvsSign()
If !oSign:isAuthenticated()
oSign:authenticate( cUser, cPassword )
EndIf
lSuccess := oSign:uploadDocument( "\system\arquivo1.pdf" )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
nId := jResponse[ "data" ]
/**
0 - Pendente
2 - Finalizada
4 - Rejeitada
5 - Em Rascunho
*/
lSuccess := oSign:documentStatus( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
lSuccess := oSign:uploadSignedDocument( nId, "\system\arquivo1.pdf" ) // Documento assinado digitalmente A1 ou A3
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
1 - Original
2 - Manifesto
3 - Assinado Digital
4 - Baixar todos
*/
lSuccess := oSign:downloadDocument( nId, "\system\") // O padrão é pegar o documento assinado digitalmente
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
1 - Original
2 - Manifesto
3 - Assinado Digital
4 - Baixar todos
*/
lSuccess := oSign:downloadDocument( nId, "\system\assinatura\", "1" ) //documento original
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
1 - Original
2 - Manifesto
3 - Assinado Digital
4 - Baixar todos
*/
lSuccess := oSign:downloadDocument( nId, "C:\Users\meuusuario\Desktop\", "1" ) //documento original
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
// Injetamos na resposta a propriedade fileCreation e fileError
// a requisição pode retornar sucesso mas falhar a criação do arquivo.
/**
0-Assinar
1-Validar
2-Testemunhar
3-Observar
4-Assinar com certificado(A1/A3)
*/
jDados := JsonObject():New()
jDados[ "papelAssinante" ] := "como locatário" // Papel na assinatura. Ex: "como locatário", "como fiador" etc...
jDados[ "tipoAutenticacao" ] := 1 // 1 - Login no sistema | 2 - Via envio de código por e-mail
jDados[ "tipoIdentificacao" ] := 1 // 1 = Brasil (CPF ou CNPJ) | 2 = (Id Internacional) | 3 = Não possui (Não solicitar)
jDados[ "identificacao" ] := "99999999999" // Identificação de acordo com o que foi definido no "tipoIdentificacao"
jDados[ "nomeCompleto" ] := "Fulano de Tal" // Obrigatório para tipoIdentificacao = 2
lSuccess := oSign:requestAction( nId, { { "[email protected]", "0", jDados } } )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
0 - Pendente
2 - Finalizada
4 - Rejeitada
5 - Em Rascunho
*/
lSuccess := oSign:documentStatus( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
lSuccess := oSign:deleteDocument( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
0 - Pendente
2 - Finalizada
4 - Rejeitada
5 - Em Rascunho
*/
lSuccess := oSign:documentStatus( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
0 - Pendente
2 - Finalizada
4 - Rejeitada
5 - Em Rascunho
*/
lSuccess := oSign:uploadDocument( "C:\Users\meuusuario\Desktop\arquivo2.pdf" )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
nId := jResponse[ "data" ]
lSuccess := oSign:deleteDocument( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
/**
0 - Pendente
2 - Finalizada
4 - Rejeitada
5 - Em Rascunho
*/
lSuccess := oSign:documentStatus( nId )
jResponse := oSign:getResponse()
ConOut(lSuccess, jResponse:toJson() )
oSign:destroy()
return |