HI, tudo bom
como faço para atribuir o valor do displayformat em tempo de execução ? já paguei várias dicas na net, mas nenhum deu resultado talvez o modo como tou trabalhando com o Grid, não sirva as dicas que peguei os campos do grid são definidos em tempo de execução e também são atribuídos algumas propriedades, como alinhamento, cor, formato e só não consegui trabalhar com a formatação pq não pertence ao TField tentei fazer que nem essa dicam ,mas nada feito TNumericField(Table1.Fields[i]).DisplayFormat := '0.000'; segue o meu código a baixo será que terei que criar os TField da query ou do grid, para que funcine ? SQL := CSelect; SQL := SQL + CFrom; SQL := SQL + CWhere; cdsGeral.Close; dtsGeral.Close; dtsGeral.CommandText := SQL; dtsGeral.Open; cdsGeral.Open; //tem um for aí pq o original era cdsGeral.Fields[], já tenteio de tudo, hehehe dmFiltro.cdsBuilderCons.First; for I := 0 to dmFiltro.cdsBuilderCons.RecordCount - 1 do begin NomeCampo := dmFiltro.cdsBuilderCons.FieldByName('CAMPO').AsString; cdsGeral.Fields.FindField(NomeCampo).DisplayLabel := dmFiltro.cdsBuilderCons.FieldByName('CABECALHO').AsString; cdsGeral.Fields.FindField(NomeCampo).DisplayWidth := dmFiltro.cdsBuilderCons.FieldByName('TAMANHO').AsInteger; case dmFiltro.cdsBuilderCons.FieldByName('ALINHAMENTO').AsInteger of 1 : cdsGeral.Fields.FindField(NomeCampo).Alignment := taLeftJustify; 2 : cdsGeral.Fields.FindField(NomeCampo).Alignment := taCenter; 3 : cdsGeral.Fields.FindField(NomeCampo).Alignment := taRightJustify; end; if Length(dmFiltro.cdsBuilderCons.FieldByName('MASCARA').AsString) > 0 then // aqui de acordo com o tipo de campo definido pelo usuario eu tenho atribuir a formatação case dmFiltro.cdsBuilderCons.FieldByName('TIPOCAMPO').AsString[1] of 'R' : TFloatField(cdsGeral.Fields.FindField(NomeCampo)).DisplayFormat := dmFiltro.cdsBuilderCons.FieldByName('MASCARA').AsString; 'D' : TDateField(cdsGeral.Fields.FindField(NomeCampo)).DisplayFormat := dmFiltro.cdsBuilderCons.FieldByName('MASCARA').AsString; 'H' : begin (cdsGeral.FieldByName(NomeCampo) as TSQLTimeStampField).DisplayFormat := dmFiltro.cdsBuilderCons.FieldByName('MASCARA').AsString; end; 'T' : TDateTimeField(cdsGeral.Fields.FindField(NomeCampo)).DisplayFormat := dmFiltro.cdsBuilderCons.FieldByName('MASCARA').AsString; end; dmFiltro.cdsBuilderCons.Next; end; Intel + Paulo Alexsandro - Maceió/Alagoas Programador - Delphi/NS Basic http://dprogrammer.cjb.net - Exemplos, Dicas, Etc. Particpante da Casa da Mãe Joana http://www.cdmj.com.br Fórum da Casa da mãe Joana, onde você pode tudo... Se limpar os pés antes de entrar [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html