Dúvida
Como gerar um sequencial para o código do cliente (mata030)?
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - SIGAFAT - Todas as versões.
Solução
Por padrão, o código do cliente deve ser digitado manualmente, alguns clientes utilizam validações para trazer a próxima numeração automaticamente, como o uso do GETXENUM. Para esse tratamento é preciso incluir a sintaxe no inicializador padrão do campo A1_COD:
GetSxeNum("SA1","A1_COD")
Desta forma, o sistema irá sugerir o próximo número do código do cliente automaticamente, com base na estrutura do licence server. Todavia, como o fonte não está totalmente preparado para tratar essa validação, pode ocorrer vários erros como pular numeração, chave duplicada e não trazer a próxima numeração.
Veja nosso vídeo a respeito do assunto no YouTube: Ajuste de Numeração automática das tabelas
Para este caso, o procedimento orientado pela TOTVS é o de uso do ponto de entrada para criar uma validação de busca da numeração: CriaSXE - Controle de Numeração
Importante
Esta configuração no SX3 para geração automática de numeração sequencial deve ser utilizada apenas por campos nos quais já consta a definição no nativo do Protheus. Não deve ser incluída manualmente em campos que não possuem este controle automático por padrão (como por exemplo no campo C5_NUM). Isto porque, este tratamento por si só não trata abandono de numeração reservada não utilizada (este tratamento é realizado no código fonte das rotinas). Ou seja, ao reservar a próxima numeração clicando em "Incluir"(registro 000010 por exemplo) mas não efetivar a gravação, abandonando o registro, depois de já ter sido utilizada a numeração seguinte (depois de outra instância ter gravado a 000011 por exemplo) serão provocadas lacunas fazendo com que o controle automático se perca. Desta forma, seria necessário verificar a possibilidade de uso de ponto de entrada na rotina que deseja implementar o uso de numeração automática para o fiel comportamento da ferramenta, de forma a tratar abandonos de reserva de numeração.
Saiba mais:
GetSXENum - Último sequencial do campo da tabela
FAT0046 Ajuste de Numeração automática dos Formulários (Tabelas / ALIAS) no Protheus
MP - FAT - Como o Protheus cria e grava um Código de Cliente na Integração EAI
0 Comentários