Conversão de txt para outro banco - URGENTE

Delphi

03/09/2003

Pessoal ???

Como faço para IMPORTAR/EXPORTAR um lay-out de arquivo txt para outro banco ???

Rogério


Roger_prog

Roger_prog

Curtidas 0

Respostas

Werlon Goulart

Werlon Goulart

03/09/2003

Cara fazia um tempao q eu nao via esta Unit q to te mandando...
Fiz pra gerar pagamentos para o HSBC....


De uma olhada...

Um Abraço
Werlon Goulart


unit Hsbc;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, Db, DBTables, StdCtrls, Buttons, Mask, ToolEdit, RXSpin,
ExtCtrls, DBCtrls;

type
TfmHsbc = class(TForm)
pnImporta: TPanel;
dgHSBC: TDBGrid;
dgFunc: TDBGrid;
dsFunc: TDataSource;
tbFunc: TTable;
edArquivo: TFilenameEdit;
Label1: TLabel;
GroupBox1: TGroupBox;
edTipoCartao: TRadioButton;
edTipoCorrente: TRadioButton;
pnTipoPgto: TGroupBox;
edAdiantamento: TRadioButton;
edPagamento: TRadioButton;
edDataCredito: TDateEdit;
lblDataCredito: TLabel;
edPedCartao: TRadioButton;
tbHSBC: TTable;
dsHSBC: TDataSource;
Panel1: TPanel;
btImportar: TSpeedButton;
btLimpar: TSpeedButton;
btSair: TSpeedButton;
btAbrir: TSpeedButton;
tbHSBCC_NRMOV: TStringField;
tbHSBCC_NRCTR: TStringField;
tbHSBCC_CGCDEV: TStringField;
tbHSBCC_NOMEDEV: TStringField;
tbHSBCC_NRDOC: TStringField;
tbHSBCC_VALOR: TFloatField;
tbHSBCC_VENC: TDateField;
tbHSBCC_OPERAC: TStringField;
tbHSBCC_AVISO: TStringField;
tbHSBCC_FINAL: TStringField;
tbHSBCC_MOEDA: TStringField;
tbHSBCC_TPGTO: TStringField;
tbHSBCC_CGCCRED: TStringField;
tbHSBCC_NOMECRE: TStringField;
tbHSBCC_BANCO: TStringField;
tbHSBCC_AGENCIA: TStringField;
tbHSBCC_CCCRED: TStringField;
tbHSBCC_LOGRAD: TStringField;
tbHSBCC_NUMERO: TStringField;
tbHSBCC_COMPL: TStringField;
tbHSBCC_BAIRRO: TStringField;
tbHSBCC_CEP: TStringField;
tbHSBCC_CIDADE: TStringField;
tbHSBCC_UF: TStringField;
tbHSBCC_TPCONTA: TStringField;
tbHSBCC_BARRAS: TStringField;
tbHSBCC_DEPOSIT: TFloatField;
tbHSBCC_QDEMOEDA: TFloatField;
tbHSBCC_EMISSAO: TDateField;
tbHSBCC_ESPECIE: TStringField;
tbHSBCC_ACEITE: TStringField;
tbHSBCC_DTPROC: TDateField;
tbHSBCC_USOBCO: TStringField;
tbHSBCC_CARTEIRA: TStringField;
tbHSBCC_SAC_AVAL: TStringField;
tbHSBCC_DESABAT: TFloatField;
tbHSBCC_VALTIT: TFloatField;
tbHSBCC_VENCREAL: TDateField;
tbHSBCC_NUMCEDEN: TStringField;
tbHSBCC_MORA: TFloatField;
tbHSBCC_NUMBANC: TStringField;
tbHSBCC_CODINST: TStringField;
tbHSBCD_DATAINST: TDateField;
tbHSBCN_VALINST: TFloatField;
tbHSBCC_COMPLINS: TStringField;
tbHSBCC_CMD: TStringField;
tbHSBCC_EMPRESA: TStringField;
tbHSBCC_FUNCIO: TStringField;
tbHSBCC_DTNASC: TDateField;
tbHSBCC_TEMPO: TStringField;
tbHSBCC_SEXO: TStringField;
tbHSBCC_NUDOC: TStringField;
tbHSBCC_NUCART: TStringField;
tbHSBCC_NUREM: TFloatField;
tbHSBCC_VLRCRED: TFloatField;
tbHSBCC_DTCRED: TDateField;
tbHSBCC_MOTREM: TStringField;
tbHSBCC_TPCARTAO: TStringField;
tbHSBCC_DESBL: TStringField;
tbHSBCC_ALTER: TStringField;
tbHSBCC_CANC: TStringField;
tbHSBCC_MOTCANC: TStringField;
tbHSBCC_NREG: TSmallintField;
Label2: TLabel;
qrValorCorrente: TQuery;
dsValorCorrente: TDataSource;
lbValorTotal: TLabel;
qrValorCartao: TQuery;
dsValorCartao: TDataSource;
qrValorCartaoVLRCredito: TFloatField;
qrValorCorrenteCredValor: TFloatField;
ed13Salario: TRadioButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btImportarClick(Sender: TObject);
procedure btLimparClick(Sender: TObject);
procedure edArquivoButtonClick(Sender: TObject);
procedure edArquivoAfterDialog(Sender: TObject; var Name: String;
var Action: Boolean);
procedure FormCreate(Sender: TObject);
procedure edTipoCorrenteClick(Sender: TObject);
procedure edPedCartaoClick(Sender: TObject);
procedure edTipoCartaoClick(Sender: TObject);
procedure btSairClick(Sender: TObject);
procedure btAbrirClick(Sender: TObject);
procedure tbHSBCAfterPost(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;

var
fmHsbc: TfmHsbc;

implementation

{$R *.DFM}

procedure TfmHsbc.FormClose(Sender: TObject; var Action: TCloseAction);
begin
tbFunc.active:=false;
tbHSBC.active:=false;
end;

procedure TfmHsbc.btImportarClick(Sender: TObject);
var NumDoc :Variant;
begin
if edDataCredito.Text=´ / / ´ then begin
showmessage(´ERRO : O campo Data do Crédito está vazio.´ + chr(13)
+ ´Solução : Preencha o campo com uma data válida.´);
exit;
end;
if edTipoCorrente.Checked then begin
if (edPagamento.Checked=False) and (edAdiantamento.Checked=False) and
(ed13Salario.Checked=False)then begin
showmessage(´ERRO : O campo Tipo de Pagamento está vazio.´ + chr(13)
+ ´Solução : Preencha o campo com o Tipo de Pagamento Adequado.´);
exit;
end;
end;

tbFunc.Open;
tbHSBC.Open;
tbFunc.First;
// Conta Corrente...............
if edTipoCorrente.Checked then begin
while (not tbFunc.EOF) do begin
tbHSBC.Insert;
NumDoc:=Trim(copy(tbFunc.fieldbyname(´Field1´).asstring,1,6));
tbHSBCC_NRCTR.Value:=´049786´;
tbHSBCC_CGCDEV.Value:=´01604495000120´;
tbHSBCC_NOMEDEV.Value:=´LABORATORIO ATALAIA SC LTDA´;
tbHSBCC_NRDOC.Value:=NumDoc;
tbHSBCC_VALOR.Value:=strtofloat(copy(tbFunc.FieldbyName(´Field1´).asstring,37,8)+´,´+copy(tbFunc.FieldbyName(´Field1´).asstring,46,2));
tbHSBCC_VENC.Value:=edDataCredito.Date;
tbHSBCC_OPERAC.Value:=´I´;
tbHSBCC_AVISO.Value:= ´N´;
tbHSBCC_MOEDA.Value:=´09´;

if edAdiantamento.Checked then
tbHSBCC_TPGTO.Value:= ´31´;
if edPagamento.Checked then
tbHSBCC_TPGTO.Value:= ´30´;
if ed13Salario.Checked then
tbHSBCC_TPGTO.Value:= ´32´;

tbHSBCC_CGCCRED.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,48,11);
tbHSBCC_NOMECRE.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,07,30);
tbHSBCC_BANCO.Value:= ´399´;
tbHSBCC_AGENCIA.Value:=´00418´;
tbHSBCC_CCCRED.Value:=´000418´+copy(tbFunc.fieldbyname(´Field1´).asstring,59,05)+copy(tbFunc.fieldbyname(´Field1´).asstring,65,02);
tbHSBCC_TPCONTA.Value:=´01´;
tbHSBCC_CARTEIRA.Value:=´COB´;
tbHSBCC_VENCREAL.Value:=edDataCredito.Date;
tbHSBC.Post;
dgHSBC.Refresh;
tbFunc.Next;
end;
end;

// Pagamento Cartão
if edTipoCartao.Checked then begin
while (not tbFunc.EOF) do begin
tbHSBC.Insert;
NumDoc:=Trim(copy(tbFunc.fieldbyname(´Field1´).asstring,1,6));
tbHSBCC_NRCTR.Value:=´049786´;
tbHSBCC_CGCDEV.Value:=´01604495000120´;
tbHSBCC_NOMEDEV.Value:=´LABORATORIO ATALAIA SC LTDA´;
tbHSBCC_NRDOC.Value:=NumDoc;
tbHSBCC_VENC.Value:=edDataCredito.Date;
tbHSBCC_OPERAC.Value:=´I´;
tbHSBCC_AVISO.Value:= ´N´;
tbHSBCC_MOEDA.Value:=´09´;
tbHSBCC_TPGTO.Value:= ´37´;
tbHSBCC_BANCO.Value:= ´399´;
tbHSBCC_AGENCIA.Value:=´00000´;
tbHSBCC_CCCRED.Value:=´0000000000000´;
tbHSBCC_TPCONTA.Value:=´01´;
tbHSBCC_COMPLINS.Value:=´CPG4020´;
tbHSBCC_CMD.Value:=´34´;
tbHSBCC_FUNCIO.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,7,19);
tbHSBCC_NUDOC.Value:=NumDoc;
tbHSBCC_NUCART.Value:=copy(tbFunc.FieldbyName(´Field1´).asstring,26,11);
tbHSBCC_VLRCRED.Value:=strtofloat(copy(tbFunc.FieldbyName(´Field1´).asstring,39,12)+´,´+copy(tbFunc.FieldbyName(´Field1´).asstring,52,2));
tbHSBCC_DTCRED.Value:=edDataCredito.Date;
tbHSBC.Post;
dgHSBC.Refresh;
tbFunc.Next;
end;
end;
//Pedido de Cartao................
if edPedCartao.Checked then begin
while (not tbFunc.EOF) do begin
tbHSBC.Insert;
NumDoc:=copy(tbFunc.fieldbyname(´Field1´).asstring,1,6);
tbHSBCC_NRCTR.Value:=´049786´;
tbHSBCC_CGCDEV.Value:=´01604495000120´;
tbHSBCC_NOMEDEV.Value:=´LABORATORIO ATALAIA SC LTDA´;
tbHSBCC_NRDOC.Value:=NumDoc;
tbHSBCC_OPERAC.Value:=´I´;
tbHSBCC_AVISO.Value:= ´N´;
tbHSBCC_MOEDA.Value:=´09´;
tbHSBCC_TPGTO.Value:= ´37´;
tbHSBCC_BANCO.Value:= ´399´;
tbHSBCC_AGENCIA.Value:=´00000´;
tbHSBCC_CCCRED.Value:=´0000000000000´;
tbHSBCC_TPCONTA.Value:=´01´;
tbHSBCC_COMPLINS.Value:=´CPG4020´;
tbHSBCC_CMD.Value:=´01´;
tbHSBCC_EMPRESA.Value:=´LAB ATALAIA LTDA´;
tbHSBCC_FUNCIO.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,7,19);
tbHSBCC_DTNASC.Value:=strtodate(copy(tbFunc.fieldbyname(´Field1´).asstring,29,06)+copy(tbFunc.fieldbyname(´Field1´).asstring,34,02));
tbHSBCC_TEMPO.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,29,10);
tbHSBCC_SEXO.Value:=copy(tbFunc.fieldbyname(´Field1´).asstring,36,01);
tbHSBCC_NUDOC.Value:=NumDoc;
tbHSBCC_TPCARTAO.Value:=´094´;
tbHSBC.Post;
dgHSBC.Refresh;
tbFunc.Next;
end;
end;
qrValorCorrente.Close;
qrValorCartao.Close;
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;

procedure TfmHsbc.btLimparClick(Sender: TObject);
begin
tbHSBC.EmptyTable;
showmessage(´o arquivo C:\CPAGAR\Contas.DBF foi limpo.´);
qrValorCorrente.Close;
qrValorCartao.Close;
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;

procedure TfmHsbc.edArquivoButtonClick(Sender: TObject);
begin
tbFunc.Close;
tbHSBC.Close;
qrValorCorrente.Close;
qrValorCartao.Close;
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;

procedure TfmHsbc.edArquivoAfterDialog(Sender: TObject; var Name: String;
var Action: Boolean);
begin
tbFunc.TableName:=Name;
end;

procedure TfmHsbc.FormCreate(Sender: TObject);
begin
tbHSBC.Close;
tbFunc.Close;
edDataCredito.Date:=Now;
end;

procedure TfmHsbc.edTipoCorrenteClick(Sender: TObject);
begin
if edTipoCorrente.Checked then
pnTipoPgto.Visible:=True
else
pnTipoPgto.Visible:=False;
label2.Caption:=´Valor total da folha de Conta Corrente :´;
end;

procedure TfmHsbc.edPedCartaoClick(Sender: TObject);
begin
if not edTipoCorrente.Checked then pnTipoPgto.Visible:=False;
end;

procedure TfmHsbc.edTipoCartaoClick(Sender: TObject);
begin
if not edTipoCorrente.Checked then pnTipoPgto.Visible:=False;
label2.Caption:=´Valor total da folha de Cartão Salário :´;
end;

procedure TfmHsbc.btSairClick(Sender: TObject);
begin
tbFunc.Close;
tbHSBC.Close;
fmHSBC.Close;
qrValorCorrente.Close;
qrValorCartao.Close;
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;

procedure TfmHsbc.btAbrirClick(Sender: TObject);
begin
tbFunc.Open;
tbHSBC.Open;
showmessage(´Atenção não esqueça de digitar a Data do Crédito Correta !!!!!´);
qrValorCorrente.Close;
qrValorCartao.Close;
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;


procedure TfmHsbc.tbHSBCAfterPost(DataSet: TDataSet);
begin
qrValorCartao.Open;
qrValorCorrente.Open;
lbValorTotal.Caption:=Floattostr(qrValorCorrenteCredValor.Value + qrValorCartaoVLRCredito.Value);
qrValorCorrente.Close;
qrValorCartao.Close;
end;

end.


GOSTEI 0
POSTAR