
Objetivo e utilização:
Esta rotina Possibilita a leitura seqüencial dos ítens de um arquivo ou dos ítens de outro arquivo relacionado ao arquivo selecionado, através de chaves primária e estrangeira.
Lê o próximo registro em um Arquivo do Banco de Dados. Os ítens a serem lidos, podem ser especificados com uma string iniciada com %% e seguida dos nomes dos ítens separados por vírgulas.
Rotina utilizada, quando a linguaguem de programação for Visual Basic, onde se passa a lista de itens(vetor). Não é passado o endereço do vetor,e sim o endereço da estrutura que define o vetor.
Indica a opção array para o uso das rotinas: LeProximoSequencial, LeAnteriorSequencial, LePorEndereco, LeProximaCadeia, LeAnteriorCadeia, LeProximoPorPrefixo, LeAnteriorPorPrefixo, LePorChavePrimaria, IncluiRegistro, AlteraRegistro e IncluiRegistroNaCadeia.
No Visual Basic a lista de itens (2o parâmetro) tem que ser um vetor do tipo Itens e pode conter itens de arquivos ligados ao lido(join automático). A área de leitura(3o parâmetro) deve ser uma estrutura(Type) não devendo ser uma string por causa da declaração do parametro ser do tipo Any.
Sintaxe:
LeProximoSequencial(char * arquivo, struct Itens * itens, char* área)
Ret=LeProximoSequencial ( "Arquivo", "%% item1, itemn", buffer).
Parâmetros:
|
Arquivo |
Nome do arquivo do Banco de Dados que será lido. |
|
Itens |
Lista de nomes de itens, do arquivo ou de outros arquivos entidades ligados, que serão lidos. Esta lista deve ser um vetor de estruturas Itens contíguas terminando por uma vazia(em branco). struct Itens { char item[13] }; |
|
Área |
Área para onde será lido os itens listados no parâmetro anterior, deve ter no mínimo o tamanho igual a soma dos tamanhos dos itens. |
Exemplos:
nome: arq1 E
codigo(1) U01
texto U20
nome: arq2 R
codigo2 (arq1)U01
LeProximoSequencial ("arq2", "%% codigo2, texto", buffer).
Exemplos:
Dim vi(2) as Itens
Dim al as regpes
Dim ret as long
vi(0).NomIte="NOMEP"
vi(1).NomIte="IDADE"
ret=LeProximoSequencial("PESSOA",vi,al)
onde:
Type Itens
NomIte as string * 13
End type
Type regpes
NOMEP as string * 10
IDADE as string * 2
End type
