WOL
Home Download Documentação A Fazer... Links Pascal Começar

TField - WOLGUI

Descendente de TWOLRoot. É a representação, em objeto WOL, de um campo de dados pertencente a uma tabela qualquer. Esta unidade foi baseada na unit db.pp da FCL do Free Pascal Compiler. Algumas mudanças foram realizadas por que a versão tomada como base é bastante antiga e não tinha muita funcionalidade prática. O propósito da WOLGui é funcionar usando o Free Pascal como ele é (sem modificar o compilador). Assim, fomos obrigados a fazer alterações na unidade de forma que pudesse ser usada na prática. Uma das alterações que o programador irá perceber é a falta do DataSource. Os dados são acessados diretamente da tabela sem nenhum intermediário, como pode ser visto em alguns exemplos distribuídos com a biblioteca. Arquivo fonte: WOLDBK01.PP.

Propriedades do TField

Propriedade Descrição
Alignment Propriedade que indica o tipo de alinhamento que os dados do campo devem ter visualmente. É do tipo TAlignment.
AsBoolean Propriedade que carrega a informação do campo na forma booleana. Lembrar que mesmo que um campo não contenha dados booleanos, a propriedade irá retornar um valor booleano representando a informação do campo.
AsCurrency Propriedade que carrega a informação do campo na forma de dinheiro. Lembrar que mesmo que um campo não contenha dados nesse formato, a propriedade irá retornar um valor nessa forma representando a informação do campo. É do tipo Currency.
AsDateTime Propriedade que carrega a informação do campo na forma data e hora. Lembrar que mesmo que um campo não contenha dados de tempo, a propriedade irá retornar um valor nessa forma representando a informação do campo. É do tipo TDateTime.
AsFloat Propriedade que carrega a informação do campo na forma de ponto flutuante. Lembrar que mesmo que um campo não contenha dados de ponto flutuante, a propriedade irá retornar um valor de ponto flutuante representando a informação do campo.
AsInteger Propriedade que carrega a informação do campo na forma de inteiro. Lembrar que mesmo que um campo não contenha dados de números inteiros, a propriedade irá retornar um valor inteiro representando a informação do campo.
AsString Propriedade que carrega a informação do campo na forma de cadeia de caracteres. Lembrar que mesmo que um campo não contenha dados de cadeia de caracteres, a propriedade irá retornar um valor string representando a informação do campo.
AsVariant Propriedade que carrega a informação do campo em uma forma genérica. Ainda não funcional.
AttributeSet Propriedade que carrega a informação sobre os atributos de um campo na forma de string.
Calculated Propriedade que informa se o campo é calculado ou não. O campo calculado não existe fisicamente na tabela.
CanModify Propriedade que indica se o campo pode ou não ser modificado.
ConstraintErrorMessage Propriedade que carrega uma mensagem de erro relativo ao campo que será mostrada quando esse ocorrer.
CurValue Propriedade que retorna o valor corrente do campo. É do tipo Variant.
CustomConstraint Propriedade que carrega uma mensagem personalizada de erro relativa ao campo que será mostrado quando esse ocorrer.
DataSet Propriedade usada para apontar a qual tabela pertence o campo. É do tipo TDataSet.
DataSize Propriedade que carrega o tamanho do dado carregado pelo campo.
DataType Propriedade que carrega o tipo do campo. É do tipo TFieldType.
DefaultExpression Propriedade que carrega a expressão padrão do campo (usada em caso da entrada ser nula).
DisplayLabel Propriedade que indica o título do campo se for usado por algum componente visual que exija isso.
DisplayName Propriedade que carrega o nome que será mostrado relacionado ao campo.
DisplayText Propriedade que representa o dado do campo no formato de texto formatado que será mostrado.
DisplayWidth Propriedade que indica a largura do texto de dados quando for mostrado.
EditMask Propriedade que indica a formatação usada na edição dos dados do campo.
EditMaskPtr Propriedade que aponta para uma string representando o ponteiro para a máscara de edição.
FieldKind Propriedade que indica o tipo do campo. É do tipo TFieldKind.
FieldName Propriedade que retorna o nome do campo - não do objeto.
FieldNo Propriedade que retorna o índice ou número de identificação do campo dentro da tabela.
HasConstraints Propriedade que retorna se o campo tem ou não informação de erro predefinida.
ImportedConstraint Propriedade que carrega informações de mensagens de erros importadas do servidor.
Index Propriedade que informa o índice físico do campo dentro da tabela.
IsIndexField Propriedade que retorna se o campo é uma chave de índice da tabela ou não.
IsNull Propriedade que retorna se o campo é nulo (sem dados) ou não.
KeyFields Propriedade que retorna os campos chaves associados ao corrente.
Lookup Retorna se o campo tem um campo de busca ou não. Propriedade não funcional.
LookupCache Retorna se o campo tem um cache de busca ou não.
LookupDataSet Indica o dataset (tabela) de busca do campo. Os valores do campo devem estar contidos nessa tabela. É do tipo TDataSet.
LookupKeyFields Indica os campos chaves de busca em forma de string.
LookupResultField Indica o campo cujo valor irá se igualar ao valor do campo corrente dentro do dataset de busca.
NewValue Indica o mais novo valor do campo. Não funcional. É do tipo Variant.
Offset Indica a distância do campo do início do registro. Usado internamente.
OldValue Indica o valor antigo (antes da edição) do campo. Não funcional. É do tipo Variant.
Origin Indica o campo de origem. Geralmente é o mesmo que FieldName.
Required Indica se o campo é requerido (obrigatório) ou não.
Size Indica o tamanho da informação do campo. Útil quando o campo é do tipo string.
Text Indica o texto contido no campo.
ValidChars Indica os caracteres que são válidos no campo quando o usuário o está editando. É do tipo TFieldChars.
Visible Indica se o campo deve aparecer ou não em um componente visual que o utilize.

Métodos e Eventos Públicos

procedure Assign(Source: TWOLRoot); override;
Método usado para copiar as propriedades de um campo para outro.
procedure AssignValue(const aValue: TVarRec);
Método usado para copiar os dados de um campo para outro.
procedure Clear;
Método usado para limpar os dados de um campo.
function GetData(Buffer: Pointer): Boolean;
Método usado para recuperar os dados a partir de um buffer. Usado internamente.
class function IsBlob: Boolean; virtual;
Método usado para testar se um campo é do tipo BLOB ou não (campo que contém imagem ou texto formatado).
function IsValidChar(InputChar: Char): Boolean; virtual;
Método usado para validar caracteres digitados pelo usuário.
procedure RefreshLookupList;
Método usado para atualizar uma lista de busca. Ainda não funcional. Usado internamente.
procedure SetData(Buffer: Pointer);
Método usado para modificar os dados de um buffer. Usado internamente.
procedure SetFieldType(aValue: TFieldType); virtual;
Método usado para modificar o tipo de um campo. Usado internamente.
procedure Validate(Buffer: Pointer);
Método usado para validar os dados contidos em um buffer. Usado internamente.
OnChange : TFieldNotifyEvent
Evento disparado quando ocorre mudança na informação do campo.
OnGetText : TFieldGetTextEvent
Evento disparado quando o campo está para recuperar informação da tabela.
OnSetText : TFieldSetTextEvent
Evento disparado quando uma informação está para ser introduzida no campo.
OnValidate: TFieldNotifyEvent
Evento disparado quando o campo está para ter suas informações validadas.

Para melhor manipular os dados, a partir da classe TField são derivadas outras especializadas em determinados tipos de dados. Essas classes estão listadas abaixo.


TBinaryField

Descendente de TField destinado a carregar informações binárias. Fundamentalmente as propriedades, eventos, métodos são os mesmos do seu ascendente.

Propriedades do TBinaryField

Propriedade Descrição
Value Propriedade que carrega o valor em forma variante. Não funcional.

TBLOBField

Classe de objetos que se destina a carregar informações sobre figuras e textos formatados. Descendente de TField, apresenta as propriedades, métodos e eventos já conhecidos.

Propriedades do TBLOBField

Propriedade Descrição
AsBlob Propriedade que retorna o valor do campo como um ponteiro de caracteres.
BlobSize Propriedade que carrega o tamanho dos dados contidos no campo.
BlobType Propriedade que carrega o tipo de campo BLOB que é o campo. É do tipo TBlobType.
Transliterate Propriedade que indica a conversão ou não de BLOB tipo texto.

Métodos e Eventos Públicos

procedure LoadFromFile(const FileName: string);
Método usado para carregar as informações de um arquivo indicado para o campo.
procedure LoadFromStream(Stream: TStream);
Método usado para carregar as informações de um stream para o campo.
procedure SaveToFile(const FileName: string);
Método usado para gravar os dados contidos no campo para um arquivo indicado.
procedure SaveToStream(Stream: TStream);
Método usado para gravar os dados contidos no campo para um stream indicado.
procedure SetText(const aValue: string); override;
Método usado para apontar o texto indicado como a informação do campo.

TGraphicField

Classe de objetos que carrega informações gráficas, sendo descendente de TBLOBField. Tem as mesmas propriedades, métodos e eventos do seu ascendente.


TMemoField

Classe de objetos que carrega informações sobre textos de várias linhas. Descendente de TBLOBField, tem as mesmas propriedades, métodos e eventos desse.


TBooleanField

Classe de objetos que carrega informações booleanas. As principais propriedades dessa classe estão abaixo, mas deve-se lembrar sempre que todas as propriedades, métodos e eventos do seu ascendente estão disponíveis.

Propriedades do TBooleanField

Propriedade Descrição
DisplayValues Propriedade que carrega os valores que devem ser retornados, conforme o valor seja verdadeiro ou falso, quando a propriedade AsString for usada.
Value Propriedade que carrega o valor na forma booleana.

TDateTimeField

Classe de objetos que carrega informação sobre data e hora. As principais propriedades dessa classe estão abaixo, mas deve-se lembrar sempre que todas as propriedades, métodos e eventos do seu ascendente estão disponíveis.

Propriedades do TDateTimeField

Propriedade Descrição
DisplayFormat Propriedade que carrega o formato que o campo deve assumir quando chamado como string.
Value Propriedade que carrega a informação contida no campo na forma de data e hora.

TDateField

Essa classe descende de TDateTimeField e carrega apenas a informação da data, desprezando o tempo. Apresenta todas as propriedades, métodos e eventos do seu ascendente.


TTimeField

Essa classe descende de TDateTimeField e carrega apenas a informação do tempo, desprezando a data. Apresenta todas as propriedades, métodos e eventos do seu ascendente.


TNumericField

Essa classe de objetos carrega informações sobre números. Descendente de TField, se mostra com todos os métodos, eventos e propriedades do seu ascendente. Ressaltamos dentre suas propriedades:

Propriedades do TNumericField

Propriedade Descrição
DisplayFormat Propriedade que carrega o formato de exibição do número.
EditFormat Propriedade que carrega o formato de edição do número.

TStringField

Classe de campo que carrega informações sobre dados do tipo string. Descendente de TField, tem todas as propriedades, métodos e eventos do seu ascendente.

Propriedades do TStringField

Propriedade Descrição
Transliterate Propriedade que indica se o campo deve ter os caracteres convertidos ou não.
Value Propriedade que carrega o conteúdo do campo no formato string.

TBCDField

Classe de campo descendente de TNumericField que apresenta todos os métodos, eventos e propriedades do seu ascendente e destaca-se pelas propriedades seguintes:

Propriedades d

Propriedade Descrição
isCurrency Propriedade que indica se o campo é do tipo dinheiro ou não.
MaxValue Propriedade que indica o valor máximo admitido pelo campo. É do tipo Currency.
MinValue Propriedade que indica o valor mínimo admitido pelo campo. É do tipo Currency.
Value Propriedade que carrega o valor numérico em formato de dinheiro. É do tipo Currency.

TFloatField

Classe de campo que carrega informações sobre números de ponto flutuante. Descendente de TNumericField, preserva todos os métodos, propriedades e eventos do seu ascendente. Destacamos as seguintes propriedades:

Propriedades do TFloatField

Propriedade Descrição
MaxValue Propriedade que indica o valor máximo permitido pelo campo. É do tipo Double.
MinValue Propriedade que indica o valor mínimo permitido pelo campo. É do tipo Double.
Precision Propriedade que indica a precisão numérica do campo (quantidade de casas decimais).
Value Propriedade que carrega o campo no formato Double.

TCurrencyField

Classe descendente de TFloatField que preserva seus métodos, propriedades e eventos. Carrega informações sobre número que representam dinheiro.


TIntegerField

Classe de campos que carrega informações numérica sobre inteiros. Descendente de TNumericField, conserva as propriedades, métodos e eventos desse. Destacam-se as propriedades:

Propriedades do TIntegerField

Propriedade Descrição
MaxValue Propriedade que carrega o valor máximo que é permitido pelo campo. É do tipo Longint.
MinValue Propriedade que carrega o valor mínimo que é permitido pelo campo. É do tipo Longint.
Value Propriedade que carrega o valor do campo em formato longint.

TSmallField

Classe de campos que carrega informações sobre números do tipo smallint. É descendente de TIntegerField e mantém os eventos, métodos e propriedades do mesmo.


TWordField

Classe de campos que carrega informações sobre números do tipo word. É descendente de TIntegerField e mantém os eventos, métodos e propriedades do mesmo.


TAutoIncField

Classe de campos que carrega informações sobre números do tipo longint que se auto incrementa. É descendente de TIntegerField e mantém os eventos, métodos e propriedades do mesmo.


TBytesField

Classe de campos que carrega informações sobre números do tipo byte. É descendente de TIntegerField e mantém os eventos, métodos e propriedades do mesmo.


TVarBytesField

Classe de campos que carrega informações sobre números do tipo byte de tamanho variável. É descendente de TIntegerField e mantém os eventos, métodos e propriedades do mesmo.