FwUuidV4
Gera UUID v4 (128 bits, formato 8-4-4-4-12). Util pra IDs unicos de integracao, logs, correlacao de requests.
Assinatura: FwUuidV4() -> cUuid
Retorna: Character
FwUuidV4() gera um UUID versao 4 (aleatorio, 36 chars incluindo hifens). Padrao da industria pra IDs unicos — substitui IDs sequenciais e GetSx8Num em integracoes externas.
Sintaxe
cUuid := FwUuidV4()
// Exemplo: 550e8400-e29b-41d4-a716-446655440000Uso tipico
// ID de transacao pra log/auditoria
cTxId := FwUuidV4()
FwLogger():getLogger():info('Iniciou processo', {'tx_id' => cTxId})
// Idempotency-Key pra chamadas API externas
oClient:setHeader('Idempotency-Key', FwUuidV4())
// Correlation ID em microservices
cCorrId := FwUuidV4()
oJson['correlation_id'] := cCorrIdQuando usar UUID vs GetSx8Num
- UUID: integracoes externas, logs, sem necessidade de ordem
- GetSx8Num (sequencial): numero de pedido, nota fiscal — onde a ordem importa
Performance
Gera milhoes por segundo. Sem custo de acesso ao banco (ao contrario de GetSx8Num que faz lock na SX8).
Exemplos
TX ID pra log
cTxId := FwUuidV4()
FwLogger():getLogger():info('Iniciou', {'tx_id' => cTxId})