Problema com exibição de dados
17/07/2021
0
Desenvolvi um sistema onde fazem a conferência dos produtos de uma nota fiscal, onde o usuário do sistema tem que escanear o código de cada produto, e aí que está o problema, de vez em quando dá um problema na exibição dos itens da nota fiscal, ele carrega alguns itens e não mostra os outros, e as vezes aparece algumas linhas em branco, e outras carrega todos, porém com o nome dos produtos iguais, tendo que usar a bolinha do mouse para poder carregar o nome e quantidade correto de cada um. E a única forma de carregar corretamente os itens, é fechando o programa e abrindo novamente.
Já tentei várias formas de tentar resolver, já troquei do ClientDataSet para base dbf, e mesmo assim continua, troquei o DBGrid por outro componente que tenho, o DBGrid3D.
Tenho uma função que pinta duas colunas e a fonte também, será que é isso que está fazendo com que os itens sejam carregados corretamente?
André
Posts
19/07/2021
Emerson Nascimento
não dá pra fazer qualquer avaliação "no escuro".
20/07/2021
André
não dá pra fazer qualquer avaliação "no escuro".
Aqui está o código que muda a cor da coluna e da fonte:
procedure TfrmSeparacao.dbgProdutosDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin with TDBGrid3D(Sender) do begin if (Column.Field.FieldName = 'QCONF') and (Cor) then begin if DataSource.DataSet.FieldByName('QCONF').Value < DataSource.DataSet.FieldByName('QNF').Value then begin Canvas.Brush.Color := clRed; Canvas.Font.Color := clWhite; end else if (DataSource.DataSet.FieldByName('QCONF').AsString <> EmptyStr) or (DataSource.DataSet.FieldByName('QNF').AsString <> EmptyStr) then begin Canvas.Brush.Color := clLime; Canvas.Font.Color := clWindowText; end; end; Canvas.FillRect(Rect); DefaultDrawColumnCell(Rect, DataCol, Column, State); end; end
24/07/2021
Paulo
Clique aqui para fazer login e interagir na Comunidade :)