Buscar

Importação de arquivo txt utilizando memo e MYSQL

Código

{inicialmente teremos que ter;
01 memo,
03 buttons   (Abrir, importar e sair,
01 label,
01 progress bar,
01 opendialog.}


{No evendo onclick do botão importar coloque os seguintes códigos.}

procedure TFormImportaProdAmb.BitBtn2Click(Sender: TObject);
var vCount,i:integer;
begin
Dm1.QryChekComp.Close;
Dm1.QryChekComp.ParamByName('BpaComp').AsString          := Copy(Memo1.Lines.Strings[1],8,6);
Dm1.QryChekComp.ParamByName('EstabCod').AsString         := Copy(Memo1.Lines.Strings[i],1,7);
Dm1.QryChekComp.Open;
  If Dm1.QryChekComp.RecordCount>0 Then
  Begin
    ShowMessage('Competencia já importada, Selecione uma competencia valida');
    LimpaForm;
    Abort;
  End
  else
  begin
    Repaint;
    vCount := Memo1.Lines.Count;
  for i := 1 to Memo1.Lines.Count -1 do
  Begin
    If vCount <> 0  Then
    Begin
      Dm1.QryInsProdAmb.ParamByName('EstabCod').AsString         := Copy(Memo1.Lines.Strings[i],1,7);
      Dm1.QryInsProdAmb.ParamByName('ProcDtComp').AsString       := Copy(Memo1.Lines.Strings[i],8,6);
      Dm1.QryInsProdAmb.ParamByName('BpaComp').AsString          := Copy(Memo1.Lines.Strings[i],8,6);
      Dm1.QryInsProdAmb.ParamByName('BpaCns').AsString           := Copy(Memo1.Lines.Strings[i],14,15);
      Dm1.QryInsProdAmb.ParamByName('CboCod').AsString           := Copy(Memo1.Lines.Strings[i],29,6);
      Dm1.QryInsProdAmb.ParamByName('BpaDtBpi').AsString         := Copy(Memo1.Lines.Strings[i],35,8);
      Dm1.QryInsProdAmb.ParamByName('ProcCod').AsString          := Copy(Memo1.Lines.Strings[i],48,10);
      Dm1.QryInsProdAmb.ParamByName('BpaSexo').AsString          := Copy(Memo1.Lines.Strings[i],73,1);
      Dm1.QryInsProdAmb.ParamByName('BpaIdade').AsInteger        := StrToInt( Copy(Memo1.Lines.Strings[i],84,3));
      Dm1.QryInsProdAmb.ParamByName('BpaQtde').AsInteger         := StrToInt(Copy(Memo1.Lines.Strings[i],87,6));
      Dm1.QryInsProdAmb.ParamByName('BpaTipoAtm').AsString       := Copy(Memo1.Lines.Strings[i],149,1);
      Dm1.QryInsProdAmb.ExecSQL;
      Label1.Caption                                             :='Aguarde enquanto o sistema importa os dados : '+ IntToStr(i + 1);
      Label1.Refresh;
      ProgressBar1.Max                                           :=vCount;
      ProgressBar1.Position                                      :=i;
      Sleep(01);
    end;
    end;
ShowMessage('Foram Importados '+IntToStr(vCount)+' Procedimentos');
  end;
end;


{No envento onclick do botão abrir digite os seguintes códigos.}
If OpenDialog1.Execute  then
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
      if(Memo1.Text<>'') then
      Begin
        BitBtn2.Enabled:=True;
        BitBtn1.Enabled:=False;
      end
      else
      Begin
        BitBtn2.Enabled:=False;
        BitBtn1.Enabled:=True;
      End;

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Forms
Adicionada dia: 10/03/11
Por: Edemar Mendes Perciani
Visualizada: 14580 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009