Controle de numeração com GetSxeNum, ConfirmSxe e RollbackSxe
Relaciona reserva, confirmação e descarte da numeração.
Visão geral
GetSxeNum obtém uma reserva para alias/campo; não é uma consulta sem efeitos. A ordem usada deve conter o campo na posição esperada após a filial, e grupo/filial adicionais têm regras conjuntas. A TOTVS desaconselha usar a função diretamente em inicializador de campo. ConfirmSxe e RollbackSxe pertencem ao ciclo da numeração, que deve acompanhar o resultado real da gravação. O fonte público GETSXENUM.PRW apenas solicita e exibe um número, sem encerrar seu ciclo: é útil para reconhecer a chamada, não como fluxo completo. As variantes SX8 encontradas em exemplos devem ser conferidas no release. (TOTVS, s.d., refs. 1–3; EURAI, s.d., ref. 4)
Exemplo comentado
// Fragmento: reserva propria ja obtida e gravacao concluida pelo chamador.
// lGravacaoConfirmada deve refletir resultado real, nao escolha visual.
If lGravacaoConfirmada
ConfirmSxe(.T.)
Else
RollbackSxe()
EndIfIlustra os dois destinos de uma reserva existente. Não é teste autossuficiente: exige contexto de reserva, API disponível e tratamento de erro do chamador. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Nunca confirmar uma reserva de outro fluxo. Testar concorrência, cancelamento e falha de gravação; não prometer sequência sem lacunas para todo cenário.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.