Este documento tem por objetivo apresentar os passos necessários para disponibilizar no DataServer da linha RM a integração com o Totvs Assinatura Eletrônica.
Para configurar o RM x Totvs Assinatura Eletrônica é necessário informar nos parâmetros globais o caminho das API's do Totvs Assinatura Eletrônica.
Para habilitar a utilização do Totvs Assinatura Eletrônica basta informar a propriedade "AllowTotvsSign" com o valor "True" na Action equivalente ao dataServer desejado.
Sendo assim, será disponibilizado a opção do Totvs Assinatura Eletrônica em sua funcionalidade.
using RM.Imb.Parametros; using RM.Imb.Recursos; using RM.Lib.Client; using RM.Lib.WinForms; partial class ImbContratoLocAction { /// <summary> /// Inicialização da action de contrato de locação /// </summary> private void InitializeComponent() { components = new System.ComponentModel.Container(); DataServerName = "ImbContratoLocData"; FormName = "ImbContratoLocForm"; AllowTotvsSign = true; } } |
Após habilitar a utilização do Totvs Assinatura Eletrônica, é possível condicionar a execução de processo de acordo com o status do documento anexado a entidade principal.
Exemplo:
Imagine que temos um contrato de locação de imóvel em elaboração e o usuário do sistema, enviou o "documento / contrato" para o locatário assinar via Totvs Assinatura eletrônica.
E o usuário do RM, pode efetivar o contrato no RM antes mesmo do locatário assinar o documento.
Demanda:
Como devo codificar, para condicionar o sucesso do processo de "Efetivação do Contrato" com a assinatura do documento. Ou seja, preciso que seja a apresentando mensagem de erro tratado para o usuário do RM caso ele tente efetivar o contrato para o documento não assinado.
04.1 Disponibilização dos processos
Para disponiblizar os processo
using RM.Imb.Parametros; using RM.Imb.Recursos; using RM.Lib.Client; using RM.Lib.WinForms; namespace RM.Imb.Aluguel.ContratoLoc { partial class ImbContratoLocAction { /// <summary> /// Inicialização da action de contrato de locação /// </summary> private void InitializeComponent() { components = new System.ComponentModel.Container(); DataServerName = "ImbContratoLocData"; FormName = "ImbContratoLocForm"; AllowTotvsSign = true; // Processo de efetivar contrato de locação ProcessActions.Add("ImbEfetivarContLocAction", true); /// Disponibilização de processo na tela de envio de documento do Totvs Assinatura ProcessValidationTotvsSignActions.Add(new RMSProcessTotvsSignInfo() { ActionName = nameof(ImbEfetivarContLocAction), LabelProcess = Properties.Resources.SImbCaptinEfetivacaoContratoTotvsSign }); ProcessValidationTotvsSignActions.Add(new RMSProcessTotvsSignInfo() { ActionName = nameof(ImbContratoLocEscalonamentoAction), LabelProcess = Properties.Resources.SImbCaptinEfetivacaoEscalonamentoTovsSign }); ProcessValidationTotvsSignActions.Add(new RMSProcessTotvsSignInfo() { ActionName = nameof(ImbEfetivarAditivoContLocBaseAction), LabelProcess = Properties.Resources.SImbCaptinEfetivacaoAditivoTovsSign }); ProcessValidationTotvsSignActions.Add(new RMSProcessTotvsSignInfo() { ActionName = nameof(ImbEncerrarContLocAction), LabelProcess = Properties.Resources.SImbCaptinEfetivacaoEncerramentoTovsSign }); } |