Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!

FGMODIFY()

Propósito

Modificar um grupo de registros.

Sintaxe

FGMODIFY (<exp.C1>, <exp.C2>, <exp.C3>, <vet.C1>, <vet.C2>)

Argumentos

<exp.C1>

representa o nome do arquivo do banco de dados em uso.

<exp.C2>

representa o nome da chave a pesquisar para alteração.

<exp.C3>

representa um valor para a chave pesquisada. Se a chave for numérica deve ser transformada para cadeia pela função STR (). Se a chave for do tipo data, deve ser transformada para cadeia no formato "dd/mm/aa", Se a chave for do tipo lógico deve ser transformada para cadeia sendo "0" para falso (.F.) e "1" para verdadeiro (.T.).

<vet.C1>

representa o nome de um vetor-cadeia com o nome dos itens que serão lidos . Deve ter tamanho mínimo de 12 caracteres .

<vet.C2>

representa o nome de um vetor-cadeia que receberá o valor dos itens lidos. Deve ter o tamanho mínimo do maior item do registro.

Utilização

Modifica o conteúdo de um grupo de registros de um arquivo que tenham o mesmo valor para uma chave.

Seu funcionamento é parecido com a utilização dos comandos SEEK, REPLACE, MODIFY e SKIP, pois seleciona um grupo de registros para modificação.

Retorna 0 (zero) ou um número referente ao erro de modificação (DBERR ()), se a modificação for bem sucedida.

A função FGMODIFY () não permite a modificação do valor de chaves de ligação de registros com ligações, garantindo, assim, a integridade referencial.

Utilizada na construção de programas ou procedimentos com independência de dados e aplicação. Dispensa abertura de arquivo (USE), necessitando apenas, que exista um banco de dados em uso.

Converte automaticamente o valor dos itens para caracter.

Deve haver coerência entre os elementos de <vet.C1> e <vet.C2> para que a leitura se dê corretamente, isto é, o número do elemento de <vet.C1>, que tem o nome do item a ser lido, deve corresponder ao valor do elemento de mesmo número em <vet.C2>. Esta relação é de 1 para 1. Similar ao comando MODIFY.

Exemplos

O exemplo a seguir mostra-nos a utilização desta função.

DATABASE bdemp1 33 a 2 

DECLARE vet_reg[3] = SPACE(12)

DECLARE vet_buf[3] = SPACE(10)

vet_reg[1] = "id2_func"

vet_reg[2] = "par_depe"

vet_reg[3] = "dat_depe"

arquivo = "tab_depe"

vet_buf[2] = "FILHA"

** Modifica todos os registros que tenham par_depe igual a FILHO para FILHA.

** Note que o valor da chave id2_func e do item dat_depe não foram alterados.

ret=FGMODIFY(arquivo,"par_depe","FILHO",vet_reg,vet_buf)

** ret recebe o codigo de erro desta atualização.

Consulte

MODIFY, FMODIFY() e FGPMODIFY().

Anterior Sumário Próximo OpenBASE! o Banco de Dados inteligente. Fale conosco!