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

FGPMODIFY()

Propósito

Modificar um grupo de registros.

Sintaxe

FGPMODIFY (<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 transformado 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 transformado 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 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 do prefixo de uma chave caracter.

Seu funcionamento é parecido com a utilização dos comando 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 não for bem sucedida.

A função FGPMODIFY () não permite a modificação do valor de chaves de ligação de registros com ligações, isto garante 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.

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 o prefixo de

** par_depe igual a FIL para FILHA.

** Note que o valor da chave id2_func e do item dat_depe

** não foram alterados.

ret=FGPMODIFY(arquivo,"par_depe","FIL",vet_reg,vet_buf)

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

Consulte

MODIFY, FDBMESS(), FMODIFY() e FGMODIFY().

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