procedure TForm1.Button2Click(Sender: TObject); var id:Integer; i:Integer; mult:integer; begin Button2.Enabled:=false; btnSair.Enabled:=false; //********************************************************************* //Deleta os registro da tabela ECFCUPOM with DataModule1.queryEcfCupons do //DataModule1.IBTransaction1.StartTransaction; try DataModule1.queryEcfCupons.ExecSQL except on Exc:Exception do begin showMessage('Erro na gravação do cupom...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; //********************************************************************* //Deleta os registro da tabela ECFCUPOM_ITENS with DataModule1.queryEcfCuponsItens do //DataModule1.IBTransaction1.StartTransaction; try DataModule1.queryEcfCuponsItens.ExecSQL except on Exc:Exception do begin showMessage('Erro na gravação do iten do cupom...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; //********************************************************************* //Deleta os registro da tabela ECFREDUCAOZ with DataModule1.queryEcfReducaoZ do //DataModule1.IBTransaction1.StartTransaction; try DataModule1.queryEcfReducaoZ.ExecSQL except on Exc:Exception do begin showMessage('Erro na gravação da redução do cupom...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; //********************************************************************* progresso.MaxValue:=StrToInt(Edit5.Text); for i:=1 to StrToInt(Edit5.Text) do begin //DataModule1.IBTransaction1.StartTransaction; with DataModule1.queryEcfCuponsSalvar do try SQL.Clear; SQL.Add('INSERT INTO ECFCUPOM (ID, ECF_CX, COD_SIT, NUM_DOC, DT_DOC, VL_DOC, CPFCNPJ, NOM_ADQ) VALUES ('); SQL.Append(IntToStr(i)+','); //ID SQL.Append('3,'); //ECF_CX Numero do caixa atribuido ao ECF SQL.Append('''00'','); //COD_SIT Codigo da situaaco do documento fiscal SQL.Append(IntToStr(i)+','); //NUM_DOC Numero do documento fiscal SQL.Append('''01/01/2011'','); //DT_DOC Data da emissao do documento fiscal(MM/DD/YYYY) SQL.Append('78.00,'); //VL_DOC Valor total do documento fiscal SQL.Append('''02060533000194'','); //CPFCNPJ CPF ou CNPJ do adquirente SQL.Append('''A MOVELAR - ALTAMIRA'');'); //NOM_ADQ Nome do adquirente DataModule1.queryEcfCuponsSalvar.ExecSQL; except on Exc:Exception do begin showMessage('Erro na gravação do cupom...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; //****************************************************************************** with DataModule1.queryEcfCuponsSalvar do try SQL.Clear; SQL.Add('INSERT INTO ECFCUPOM_ITENS (ID, ECFCUPOM_ID, COD_ITEM, DESCRICAO, QTD, QTD_CANC, UNID, VL_ITEM, VL_DESCONTO, CFOP, ALIQ_ICMS, VL_PIS, VL_COFINS, CST_ICMS, COD_TOT_PARC, NCM) VALUES ('); SQL.Append(IntToStr(i)+','); //ID SQL.Append(IntToStr(i)+','); //ECFCUPOM_ID REFERE-SE AO [ECFCUPOM].[ID], VINCULANDO OS DADOS. SQL.Append('0000000011236,'); //COD_ITEM Codigo do Item SQL.Append('''LIQUID. MALLORY EXPART'','); //DESCRICAO Descricao do Item SQL.Append('1000,'); //QTD Quantidade do Item SQL.Append('1000,'); //QTD_CANC Quantidade cancelado SQL.Append('''UN'','); //UNID Unidade SQL.Append('70.00,'); //VL_ITEM Valor do item (quantidade * unitario), COM desconto. SQL.Append('8.00,'); //VL_DESCONTO Valor do desconto dado para este item (desconto_unitario * quantidade). SQL.Append('5102,'); //cfop Codigo Fiscal de Operacoes e Prestacoes. Utilizar Tabela de CFOP. SQL.Append('17.00,'); //ALIQ_ICMS Percentual de Aliquota SQL.Append('0.46,'); //VL_PIS Valor total do PIS para este registro. SQL.Append('2.10,'); //VL_COFINS Valor total do COFINS para este registro. SQL.Append('''000'','); //CST_ICMS CODIGO DE SITUACAO TRIBUTARIA. SQL.Append('''01T1700'','); //COD_TOT_PARC 4.4.6 - Tabela de Codigos dos Totalizadores Parciais da REDUCAO Z SQL.Append('null);'); //NCM nao tem descricao DataModule1.queryEcfCuponsSalvar.ExecSQL; except on Exc:Exception do begin showMessage('Erro na gravação do iten do cupom...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; progresso.Progress:=i; end; //****************************************************************************** with DataModule1.queryEcfCuponsSalvar do try SQL.Clear; SQL.Add('INSERT INTO ECFREDUCAOZ (ID, ECF_CX, DT_DOC, CRO, CRZ, NUM_COO_FIN, GT_FIN, COD_MOD, ECF_MOD, ECF_SERIE) VALUES ('); SQL.Append('1,'); //ID SQL.Append('3,'); //Numero do caixa atribuido ao ECF SQL.Append('''01/01/2011'','); //Data do movimento a que se refere a Reducao Z SQL.Append('3,'); //Posicao do Contador de Reinicio de Operacao SQL.Append(Edit5.Text+','); //Posicao do Contador de Reducao Z SQL.Append(Edit5.Text+','); //Numero do Contador de Ordem de Operacao do ultimo documento emitido no dia. mult:=(StrToInt(Edit5.Text)*78); SQL.Append(IntToStr(mult)+','); //Valor do Grande Total final SQL.Append('''BE'','); //Codigo do modelo do equipamento SQL.Append('''MP-2100 TH FI'','); //Modelo do equipamento SQL.Append('''BE050769200007013427'');'); //Numero de serie de fabricacao do ECF DataModule1.queryEcfCuponsSalvar.ExecSQL; except on Exc:Exception do begin showMessage('Erro na gravação da reducaoz...'+Exc.Message); DataModule1.IBTransaction1.Rollback; Button2.Enabled:=true; btnSair.Enabled:=true; end; end; DataModule1.IBTransaction1.Commit; //****************************************************************************** ShowMessage('Cupons Inseridos!'); Button2.Enabled:=true; btnSair.Enabled:=true; progresso.Progress:=0; DataModule1.ibDatabase1.Close; end;