É isso mesmo.
@ Row() + 1, 1 SAY "Código.............:" GET midTransa PICTURE "@KR 999.999" WHEN .F.
É que uso como relacionamento também.
tipo....
501.000 é a transação independente
201.501 seria uma transação que depende de existir a 501.000
O ponto é só por questão visual.
Exemplo:
Supondo que exista venda pra consumidor 501.xxx e venda pra revenda 502.xxx
devolução pra consumidor 201.501 não pode ser usado pra 502.xxx, porque exige que a nota seja 501.xxx
ou devolução de compra, pra uma dessas notas de venda, também vai ser inválida, porque a segunda parte de uma transação não bate com a primeira parte da outra.
É só uma checagem a mais.
Ao invés de amarrar os CFOPs do governo, a minha transação é como se fosse meus próprios códigos de CFOP.
pra usar um CFOP de devolução de venda, tem que indicar uma nota do mesmo cliente com CFOP de venda.
Simples e prático.
Já pensei em retirar do código e colocar como parâmetro, mas até se fossem 99 transações, já seria muito pro usuário ficar escolhendo, então esse limite de 999 tá bom até demais.