
Atribuir valores aos itens de um arquivo.
REPLACE [ AUTOMEM | &x(<expCn>) WITH [ <exp> | &x(<expCv>) | VIRTUAL(<exp1>, ..., <expn>) ]
| <item> [ WITH <exp> | &x(<expCv>) | VIRTUAL(<exp1>, ..., <expn>) ]
[,..., <item> [ WITH <exp> | &x(<expCv>) | VIRTUAL(<exp1>, ..., <expn>) ] ]
AUTOMEM determina que todos os itens em memória serão atualizados com seus valores correntes.
&x(<expCn>) representa uma função &C ou &N que retorna o nome do nome do campo no arquivo a ser atualizado.
<item> representa o nome do campo no arquivo que será atualizado.
WITH <exp> determina que o item será atualizado pelo valor de <exp>.
WITH &x(<expCv>) representa o valor que será retornado pela função &C ou &N para atualizar o item indicado.
WITH VIRTUAL(<exp1>, ..., <expn>) indica o valor do item composto que será atuatizado.
Determina os itens que devem ser atualizados no arquivo selecionado.
Utilizado em conjunto com os comandos INSERT, MODIFY, CHANGE ou APPEND.
Quando não se utiliza a cláusula WITH o valor do item no arquivo é atualizado com o valor corrente em memória.
A opção AUTOMEM só é aplicada para arquivos de bancos de dados que não possuem itens redefinidos.
O exemplo a seguir mostra-nos como utilizar o comando REPLACE em um arquivo de banco de dados para se atualizar somente alguns itens.
USE tab_vend
set_vend = 1
REPLACE set_vend, com_vend WITH comissao
CHANGE
O exemplo a seguir mostra-nos como inserir um registro de um arquivo do banco de dados inserindo somente os itens que foram declarados com seus valores correntes . Se algum item chave não tiver sido declarado o sistema acusará a ocorrência de um erro.
USE tab_prod
id0_prod = 123 && Retire esta linha e observe o resultado
des_prod = "TERMINAL DE VIDEO"
prc_inip = 1233.88
REPLACE AUTOMEM
INSERT
APPEND, CHANGE, INSERT, MODIFY, SELECT, STORE, FCHANGE( ), FINSERT( ) e FBINSERT( ).
