DBSTRUCT()
 Cria um vetor contendo a estrutura de um arquivo de dados
------------------------------------------------------------------------------

 Sintaxe

     DBSTRUCT() --> aEstrutura

 Retorno

     DBSTRUCT() retorna a estrutura do arquivo de dados corrente em um vetor
     onde o tamanho é igual ao número de campos no arquivo de dados.  Cada
     elemento do vetor é um sub-vetor contendo informaçoes de cada campo.
     Os sub-vetores tem o seguinte formato:

     Tabela 5-11: Vetor de Retorno de DBSTRUCT()
     ------------------------------------------------------------------------
     Posiçao           Metasímbolo       Dbstruct.ch
     ------------------------------------------------------------------------
     1                 cNome             DBS_NAME
     2                 cTipo             DBS_TYPE
     3                 nTamanho          DBS_LEN
     4                 nDecimais         DBS_DEC
     ------------------------------------------------------------------------

 Descriçao

     DBSTRUCT() é uma funçao que atua em arquivos de dados e similar ao COPY
     STRUCTURE EXTENDED criando um vetor de estrutura do arquivo ao invés de
     um arquivo.  Há uma outra funçao, DBCREATE(), que pode criar um arquivo
     de dados a partir de um vetor de estruturas.

     Por padrao, DBSTRUCT() opera na última área de trabalho selecionada.
     Esta funçao pode ser utilizada para trabalhar em uma área de trabalho
     nao selecionada especificando-a em uma expressao com alias tal como é
     mostrado no exemplo abaixo.

     Há um arquivo header chamado Dbstruct.ch localizado no
     \CLIPPER5\INCLUDE que contém uma série de constantes manifestas para
     cada atributo de campo.

 Exemplos

     O exemplo seguinte abre dois arquivos de dados criando logo após um
     vetor contendo a estrutura do arquivo de dados utilizando DBSTRUCT() em
     uma expressao com alias.  Os nomes dos campos entao sao exibidos usando
     AEVAL():

     #include "Dbstruct.ch"
     //
     LOCAL aStruct
     USE Customer NEW
     USE Invoices NEW
     //
     aStruct := Customer->(DBSTRUCT())
     AEVAL( aStruct, {|aField| QOUT(aField[DBS_NAME])} )

 Arquivos:  Biblioteca CLIPPER.LIB, arquivo header Dbstruct.ch.
 To download this example - click here.

See Also: AFIELDS()* COPY STRUCTURE EXTENDED