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

MEMOSEEK () / MEMOSAVE ()

Propósito

Lê e grava arquivo de dados em campo memo.

Sintaxe

MEMOSEEK (<variável>, <chave> = <valor>)

MEMOSAVE (<variável>, <chave> = <valor>)

Utilização

A função MEMOSEEK() lê o arquivo de dados atual (conforme o comando edit) e carrega a variável indicada no 1º parâmetro, para ser editada pela função MEMOEDIT(). A função MEMOSAVE() grava o arquivo com os dados da variável indicada. O arquivo deve ter dois itens, o 1º. é a <chave>. e o 2º. é um campo tipo u<n> onde <n> é o tamanho de cada linha de texto.

Exemplo

O exemplo a seguir mostra-nos como utilizar estas funções.

......

select c

use textos

private a (200)

if. not. memoseek (a,cod = 1)

  ? "erro"

endif

a = memoedit (a,10,10,20,30)

if not. memosave (a,cod = 1)

  ? "erro"

endif

No esquema, o arquivo-texto tem que ser do tipo r e pode ser definido como:

nome: textos r

cod(0)    n03    <<Chave de acesso>>

linha        u60    <<Linhas de texto associadas a chave>>

Caso o usuário deseje unificar todos os arquivos criados pelo campo memo em um único, basta fazer a seguinte conversão, conforme exemplo de definição de Banco de Dados a seguir:

banco exemp 1

nome: antigo e

chave1(0)     n03

textoa         m4

nome: novo r

chave2(0)     n03

texton         u60

Exemplo de um programa na opus.

prog

database exemp 1 a 2

select a

use antigo

select b 

use novo

select a

private t (2000)

locate

do while found()

  x=memoget (textoa,t)

  select b

  za=memosave(t,chave2=chave1)

  select a

  continue

enddo

Consulte

$LEN,$LENTMP,MEMODEL(),MEMOEDIT(), MEMOFILE(), MEMOGET(), MEMOLINE() MEMOPUT(), MEMOREAD(), MLCOUNT(), MEMOSEEK, MEMOSAVE e SPACE().

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