Estou ensinando dois estagiários a programar e estão surgindo diversas dúvidas, que faço no automático e não sei explicar. A primeira é, qual o funcionamento do no-undo na definição de variáveis?
A principal função, talvez única na minha opnião, é não permitir que o valor da variável ou temp-table seja perdido ao desfazer uma transação. Exemplo: Código: DEF VAR texto AS CHAR NO-UNDO. texto = "ANTES". TMaior: DO TRANS: texto = "DEPOIS". UNDO TMaior, LEAVE. END. MESSAGE texto VIEW-AS ALERT-BOX. Você verá que na mensagem aparecerá "DEPOIS" ao invés de "ANTES", coisa que não ocorre se remover o NO-UNDO. O NO-UNDO também pode ser aplicado a temp-tables. Para mais detalhes consulte o HELP do Progress.