Visão geral (comando DATAFILE ATTRIBUTE)
O DATAFILE ATTRIBUTE fornece a capacidade de definir seus próprios atributos de arquivos de dados e designar valores de atributo ao conjunto de dados ativo.
- Os atributos do arquivo de dados definidos pelo usuário são salvos com o arquivo de dados no dicionário de dados
- O comando
DATAFILE ATTRIBUTEentra em vigor imediatamente, atualizando o dicionário de dados sem precisar de uma transmissão de dados - É possível exibir uma lista de atributos de arquivo de dados e variáveis com
DISPLAY ATTRIBUTES. Consulte o tópico DISPLAY para obter mais informações
Especificação básica
A especificação básica é:
ATTRIBUTEpalavra-chave seguida por um sinal de igual (=) e um ou mais nomes de atributos que seguem regras de nomenclatura de variáveis, com cada nome de atributo seguido por um valor de atributo entre aspas, entre parênteses.
ou
DELETEseguido por um sinal de igual (=) e uma lista de nomes de atributos definidos ou matrizes de atributos.
Regras de sintaxe
- As palavras-chave
ATTRIBUTEeDELETEdevem ser seguidas por um sinal de igual (=). - Cada palavra-chave
ATTRIBUTEdeve ser seguida por um nome que segue as regras de nomenclatura de variáveis e um único valor de atributo entre aspas, entre parênteses. Consulte o tópico Nomes de Variáveis para obter mais informações. - Nomes de atributos que começam com @ não são exibidos por
DISPLAY DICTIONARYouDISPLAY ATTRIBUTES. Eles podem ser exibidos apenas comDISPLAY @ATTRIBUTES - Os nomes de atributos que começam com um sinal de dólar ($) são reservados para uso interno.
- Todos os valores de atributos devem estar entre aspas (aspas simples ou duplas), mesmo se os valores forem números.
- Os valores de atributo podem ter até 32.767 bytes de comprimento
Exemplo:
DATAFILE ATTRIBUTE
ATTRIBUTE=OriginalVersion ('1')
CreationDate('10/28/2004')
RevisionDate('10/29/2004').
Matrizes de Atributo.
Se você anexar um número inteiro entre colchetes ao final de um nome de atributos, o atributo será interpretado como uma matriz de atributos. Por exemplo:
DATAFILE ATTRIBUTE
ATTRIBUTE=FileAttribute[99]('not quite 100').
criará 99 atributos - FileAttribute [01] até FileAttribute[99 ] - e atribuirá o valor "not quite 100" ao último.
- Os subscritos da matriz (o valor entre colchetes) devem ser inteiros maiores que 0. (A numeração de subscrito da matriz começa com 1, não 0.)
- Se o nome raiz de uma matriz de atributos for igual a um nome de atributo existente, a matriz de atributos substituirá o atributo existente. Se nenhum valor for designado ao primeiro elemento na matriz (subscrito [1]), o valor de atributo original será usado para esse valor de elemento.
Com a palavra-chave DELETE , as regras a seguir se aplicam a matrizes de atributos:
- Se você especificar
DELETEseguido por um nome raiz da matriz e nenhum valor entre colchetes, todos os atributos na matriz serão excluídos.. - Se você especificar
DELETEcom um nome de matriz seguido por um valor de número inteiro entre colchetes, o elemento de matriz especificado será excluído e os valores de número inteiro para todos os atributos subsequentes na matriz (em ordem numérica) serão alterados para refletir a nova ordem de elementos de matriz.
Exemplo:
DATAFILE ATTRIBUTE
ATTRIBUTE=RevisionDate('10/29/2004').
DATAFILE ATTRIBUTE
ATTRIBUTE=RevisionDate[2] ('10/21/2005').
DATAFILE ATTRIBUTE
DELETE=RevisionDate[1].
DATAFILE ATTRIBUTE
DELETE=RevisionDate.
- O primeiro comando
DATAFILE ATTRIBUTEcria o atributo RevisionDate com um valor de 29/10/2004. - O segundo comando
DATAFILE ATTRIBUTEcria um atributo de matriz chamado RevisionDate, que substitui o atributo original de mesmo nome. Dois elementos de matriz são criados: RevisionDate[1 ] mantém o valor original de RevisionDate, e RevisionDate[2 ] tem o valor de 21/10/2005. - O terceiro comando
DATAFILE ATTRIBUTEexclui RevisionDate[1 ], e o elemento do array anteriormente conhecido como RevisionDate[2 ] se torna o novo RevisionDate[1 ] (com um valor de 21/10/2005). - O último comando
DATAFILE ATTRIBUTEexclui todos os atributos na matriz RevisionDate , uma vez que ele especifica o nome raiz da matriz sem um valor inteiro entre colchetes.