Árvore de páginas

Reserva de treinamento com ExecAuto

Linha de Produto:

Microsiga Protheus

Segmento:

Serviços

Módulo:

Treinamento - SIGATRM

Função:

Reserva de Treinamentos - TRMA060

Situação/Requisito:

A rotina de Reserva de Treinamentos não permite a execução via ExecAuto.

Solução/Implementação:

Alterada a rotina para que a inclusão e exclusão das reservas possa ser realizada via ExecAuto.

 

Sintaxe:  MsExecAuto( { |x, y, z| TRMA060(x, y, z) }, aCab, aItens, nOpc)

É possível a inclusão de reservas de treinamento através do ExecAuto da rotina TRMA060.
Caso o sistema encontre um registro na tabela de Solicitação de Treinamento (RA3) com o mesmo Curso, Turma, Calendário e Matricula informados esse registro será atualizado.     

Para executar a rotina TRMA060 via ExecAuto é necessário informar dois parâmetros:

  •    aCab - array no formato [Campo], [Valor] com as informações do treinamento. Os campo listados abaixo são obrigatórios e devem ser informados:
    • RA2_FILIAL  - Caractere, Filial do Treinamento
    • RA2_CURSO - Caractere, Código do Treinamento
    • RA2_TURMA - Caractere, Código da Turma do Treinamento
    • RA2_CALEND - Caractere, Código do Calendário usado no Treinamento.
    • RA2_MAIL - Lógico, Define se serão enviados e-mails de confirmação para os funcionários.

exemplo de montagem do Array aCab:

          [...]


         [...]

  • aItens - Array multi dimensional no formato [Campo], [Valor] com as informações do funcionário. Os campos listados abaixo são obrigatórios e devem ser informados:
    •  RA3_FILIAL - Caractere, Filial do funcionário.
    •  RA3_MAT - Caractere, Matricula do funcionário.
    • RA3_RESERV - Tipo de reserva feita para o curso: "L" - Lista de espera, "R" - Reserva, "S" - Solicitado.

  Exemplo de montagem do Array aItens:

         [...]


         [...]

  • nOpc - Numérico, 
    • nOpc = 3 -> Inclusão de registros.
    • nOpc = 5 -> Exclusão de registros.

Todas as validações existentes na rotina, quando executada normalmente, foram mantidas quando executada via ExecAuto.

Exemplo: Número máximo de vagas para o treinamento

  • Quando o número de reservas com o tipo "R" - Reserva for maior que o número de vagas disponível para o treinamento é gerada mensagem de erro e o processo é cancelado.

essas mensagens de erro podem ser capturadas pela função MostraErro().

Segue abaixo um exemplo completo da utilização da rotina TRMA060 com ExecAuto:

Baixe o código desse exemplo: inclusao.prw,  exclusão.prw