01. DADOS GERAIS
| Produto: | TOTVS Medicina e Segurança do Trabalho |
|---|---|
| Linha de Produto: | Linha Protheus |
| Segmento: | RH |
| Módulo: | TOTVS RH (Linha Protheus) - Medicina e Segurança do Trabalho (SIGAMDT) |
| Função: | Ocorrências do Plano Emergencial (SGAA340) |
| País: | Brasil |
| Ticket: | Não há. |
| Issue: | Não há. |
02. DESCRIÇÃO
Ponto de entrada CRIASXE para retornar o próximo número que deve ser utilizado na inicialização da numeração na rotina Ocorrências do Plano Emergencial (SGAA340).
Utilidade
Este ponto de entrada é recomendado para casos em que deseja-se alterar a regra padrão de descoberta do próximo número. A execução deste ponto de entrada, ocorre em casos de perda das tabelas SXE/SXF (versões legado) e de reinicialização do License Server.
| Ponto de Entrada | CRIASXE() |
|---|---|
| Chamada | Este ponto de entrada é executado quando não existir uma numeração no SXE para o campo especificado. |
| Pré-Requisito | Não há. |
| Evento | Retornar o próximo número que deve ser utilizado na inicialização da numeração. |
| Retorno | Número que será utilizado pelo controle de numeração. |
03. DEMAIS INFORMAÇÕES
| Função | CRIASXE() |
|---|---|
| Parâmetros | cNum, Caracter, Número que será utilizado pelo controle de numeração. Caso seja retornado Nulo (NIL), a regra padrão do sistema será aplicada. Esta função nunca deve retornar uma string vazia. _aArea , Array, Armazena o conteúdo da FwGetArea. cAlias, Caracter, Nome da tabela. cCpoSX8, Caracter, Nome do campo que será utilizado para verificar o próximo sequencial. cAliasSX8, Caracter, Filial e nome da tabela na base de dados que será utilizada para verificar o sequencial. cUsa , Caracter, nOrdSX8, Numérico, Índice de pesquisa a ser usada na tabela. |
| Retorno | cNum, Caracter, Número que será utilizado pelo controle de numeração. Caso seja retornado Nulo (NIL), a regra padrão do sistema será aplicada. Esta função nunca deve retornar uma string vazia. |
Esta função nunca deve retornar uma string vazia.
#include "protheus.ch"
User Function CRIASXE()
// o retorno desse ponto de entrada precisa ser nil para tabelas que não serão tratadas
Local cNum := NIL
Local _aArea := FwGetArea()
Local cAlias := paramixb[1]
Local cCpoSx8 := paramixb[2]
Local cAliasSx8 := paramixb[3]
Local nOrdSX8 := paramixb[4]
Local cUsa := "SE1"
// colocar os alias que irão permitir a execução do P.E.
if cAlias $ cUsa .and. ! ( Empty(cAlias) .and. empty(cCpoSx8) .and. empty(cAliasSx8) )
qout(cAlias + "-" + cCpoSx8 + "-" + cAliasSx8 + "-" + str(nOrdSX8))
dbselectarea(cAlias)
aArea2 := getarea()
dbsetorder(nOrdSX8)
dbseek(xfilial()+"Z")
dbskip(-1)
cNum := &(cCpoSx8)
cnum := soma1(cNum)
// fazer o tratamento aqui para a numeracao
MsgGet2( "Indique o numero correto para a tabela:" + calias, "Campo:"+cCposx8, @cNum, , , )
FwRestArea(_aArea)
EndIf
Return cNum
04. ASSUNTOS RELACIONADOS
Não há.