Dataset Várias Colunas Só 1 é apresentada no DBGrid

02/05/2021

5

Tenho um dataset com 5 colunas mas só aparece 1 no DBgrid

procedure TForm2Importa.btnLerArquivoClick(Sender: TObject);

var
ListaItens, ListaDados : TStringList;
QntLinhasTotal, y,aWW : Integer;
stringLinha, Casa, Data, comodos, Qtde, Valor: string;

begin
ListaItens := TStringList.Create;
ListaDados := TStringList.Create;
ListaDados.Delimiter:=';';
ListaDados.StrictDelimiter:=True;
aWW:=0;

ListaItens.LoadFromFile(EdtArquivoOriginal.Text);
QntLinhasTotal := ListaItens.Count-strtoint(D_cabec)+1 ; //Total de linhas do arquivo menos onde começa o cabecçalho+1
//for y := strtoint(D_cabec)+1 to QntLinhasTotal do
for y := 1 to QntLinhasTotal do
begin


if d_sep2<>'T' then
begin
stringLinha := StringReplace(ListaItens[y],d_sepT,';',[rfReplaceAll]);
stringLinha := StringReplace(stringLinha,d_sep1,'',[rfReplaceAll]);
stringLinha := StringReplace(stringLinha,'pts','',[rfReplaceAll]);
end
else
begin
stringLinha := ListaItens[y]
end;


ClientDataSet1.Open;
ClientDataSet1.Insert;



Split(stringLinha, ';', ListaDados); //Função que separa colunas pelo ;



aWW:=POS('EDI',ListaDados[0])+POS('KIT',ListaDados[0]);

if aWW<>0 then //Se tiver uma Casa válido começa a gravar
begin
Casa := ListaDados[strtoint(D_Casa)-1];

if d_dataTp='S' then
begin
Data := ListaDados[strtoint(D_data)-1];
end
else
begin
Data := ListaDados[strtoint(D_data)-1];
end;

comodos := ListaDados[strtoint(D_qtde)-1];
Qtde := ListaDados[strtoint(D_pts)-1];
Valor := ListaDados[strtoint(D_vr)-1];

ClientDataSet1.append;
ClientDataSet1Casa.AsString := Casa;
ClientDataSet1Data.AsString := Data;
ClientDataSet1comodos.AsString := comodos;
ClientDataSet1Qtde.AsString := Qtde;
ClientDataSet1Valor.AsString := Valor;

ClientDataSet1.Post;
end;
end;


ListaItens.Free;
ListaDados.Free;

end;

procedure TForm2Importa.DBGrid2CellClick(Column: TColumn); //Função pega Plataforma Escolhida

begin
EditPlatfSelect.text:=dbgrid2.Fields[1].Value;


D_sep1 :=dbgrid2.Fields[2].Value; //Separador1
D_sep2 :=dbgrid2.Fields[3].Value; //Separador2
D_sepT :=dbgrid2.Fields[2].Value+dbgrid2.Fields[3].Value; //Separador1+//Separador2
D_cabec :=dbgrid2.Fields[4].Value; //Linha Cabçalho
D_Casa :=dbgrid2.Fields[5].Value; //Coluna Casa
D_data :=dbgrid2.Fields[6].Value; //Coluna Data
D_dataTp :=dbgrid2.Fields[7].Value; //Coluna Se a Data tem horas
D_qtde :=dbgrid2.Fields[8].Value; //Coluna Quantidade
D_pts :=dbgrid2.Fields[9].Value; //Coluna Portas
D_vr :=dbgrid2.Fields[10].Value; //Coluna Valor


end;

procedure TForm2importa.SpeedButton1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
EdtArquivoOriginal.Text := OpenDialog1.FileName;
end;

procedure TForm2importa.Split(DelimiterText: string; Delimiter: Char;
ListOfStrings: TStrings);
begin
ListOfStrings.DelimitedText := DelimiterText;
end;

end.
Responder

Posts

Consegui Resolver
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar