ERRO NO LAÇO DE REPETIÇÃO

24/01/2020

0

begin
if F_informacoes_nfe.txt_forma_pagamento.Text = 'PRAZO' then
begin
dm.ACBrNFe1.NotasFiscais[0].NFe.pag.Clear;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag.Add;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].indPag := ipPrazo;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].tPag := fpCreditoLoja;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].vPag := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.vOrig := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.vLiq := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.nFat := 'fATURA Nº ' +txt_numero_nfe.Text;
SQL_buscar_faturas.Open;
SQL_buscar_faturas.First;

while not SQL_buscar_faturas.Eof do
begin
with notaf.NFe.Cobr.Dup.Add do
begin
notaf.NFe.Cobr.Dup.add.nDup := FormatFloat('000', SQL_buscar_faturasnumero_parcela.AsInteger);
notaf.NFe.Cobr.Dup.add.dVenc := SQL_buscar_faturasdata_vencimento.Value;
notaf.NFe.Cobr.Dup.add.vDup := (SQL_buscar_faturasvalor.AsFloat);
end;
SQL_buscar_faturas.Next;
end;



end;

end;

FICA UM LAÇO DE REPETIÇÃO EM TODOS OS REGITROS

TENTEI ASSIM TAMBEM


FOR D := 1 to SQL_buscar_faturas.RecordCount do
begin
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Dup.Add;
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Dup[0].nDup := FormatFloat('000', SQL_buscar_faturasnumero_parcela.AsInteger);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Dup[0].dVenc := SQL_buscar_faturasdata_vencimento.Value;
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Dup[0].vDup := (SQL_buscar_faturasvalor.AsFloat);
end;
SQL_buscar_faturas.Next;

END;
Murilo Bragança

Murilo Bragança

Responder

Posts

24/01/2020

Raimundo Pereira

Tente assim

// SQL_buscar_faturas.FetchAll;
SQL_buscar_faturas.First;
if SQL_buscar_faturas.RecordCount=0 then
begin
ShowMessage('Nenhum registro');
end
else
begin
if not SQL_buscar_faturas.Eof then
repeat
with notaf.NFe.Cobr.Dup.Add do
begin
notaf.NFe.Cobr.Dup.add.nDup := FormatFloat('000', SQL_buscar_faturasnumero_parcela.AsInteger);
notaf.NFe.Cobr.Dup.add.dVenc := SQL_buscar_faturasdata_vencimento.Value;
notaf.NFe.Cobr.Dup.add.vDup := (SQL_buscar_faturasvalor.AsFloat);
END;
END;
SQL_buscar_faturas.Next;
until (SQL_buscar_faturas.Eof);
end;
Responder

25/01/2020

Murilo Bragança

Não deu certo, estou batendo cabeça. Não entendo porque ele fica no loop dentro do tabela duplicatas_nfe que e aonde eu guardo as duplicatas. Ele rodas todas as linhas da tabela e monta o xml de maneira errada
<?xml version="1.0" encoding="UTF-8"?>

-<NFe xmlns="http://www.portalfiscal.inf.br/nfe">


-<infNFe Id="NFe33200129641651000142550200000000691650893205" versao="4.00">


-<ide>

<cUF>33</cUF>

<cNF>65089320</cNF>

<natOp>VENDA DE MERCADORIAS DENTRO DO ESTADO ALTERADO</natOp>

<mod>55</mod>

<serie>20</serie>

<nNF>69</nNF>

<dhEmi>2020-01-24T18:14:36-03:00</dhEmi>

<dhSaiEnt>2020-01-24T18:14:36-03:00</dhSaiEnt>

<tpNF>1</tpNF>

<idDest>1</idDest>

<cMunFG>3302304</cMunFG>

<tpImp>1</tpImp>

<tpEmis>1</tpEmis>

<cDV>5</cDV>

<tpAmb>2</tpAmb>

<finNFe>1</finNFe>

<indFinal>0</indFinal>

<indPres>0</indPres>

<procEmi>0</procEmi>

<verProc>itasoftware_01_nfe</verProc>

</ide>


-<emit>

<CNPJ>29641651000142</CNPJ>

<xNome>ADERBAL DE SOUZA XIMENES MERCEARIA</xNome>

<xFant>ADERBAL DE SOUZA XIMENES MERCEARIA</xFant>


-<enderEmit>

<xLgr>RUA JOSE PEREIRA DE PINHO</xLgr>

<nro>1036</nro>

<xCpl>MERCADO MILLER</xCpl>

<xBairro>Centro</xBairro>

<cMun>3302304</cMun>

<xMun>APERIBE</xMun>

<UF>RJ</UF>

<CEP>28495000</CEP>

<cPais>1058</cPais>

<xPais>BRASIL</xPais>

<fone>2238640065</fone>

</enderEmit>

<IE>81144060</IE>

<CRT>1</CRT>

</emit>


-<dest>

<CNPJ>29641651000142</CNPJ>

<xNome>NF-E EMITIDA EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</xNome>


-<enderDest>

<xLgr>R GARCIA PEREIRA</xLgr>

<nro>041</nro>

<xBairro>CENTRO</xBairro>

<cMun>3302304</cMun>

<xMun>LAJE DO MURIAE</xMun>

<UF>RJ</UF>

<CEP>28495000</CEP>

<cPais>1058</cPais>

<xPais>BRASIL</xPais>

<fone>222222222222</fone>

</enderDest>

<indIEDest>1</indIEDest>

<IE>81144060</IE>

</dest>


-<autXML>

<CPF>14122814740</CPF>

</autXML>


-<det nItem="1">


-<prod>

<cProd>1</cProd>

<cEAN>SEM GTIN</cEAN>

<xProd>CARTEIRA DE COURO BRANCA</xProd>

<NCM>10061092</NCM>

<CEST>0000000</CEST>

<CFOP>5102</CFOP>

<uCom>UN</uCom>

<qCom>1.0000</qCom>

<vUnCom>20.0000000000</vUnCom>

<vProd>20.00</vProd>

<cEANTrib>SEM GTIN</cEANTrib>

<uTrib>UN</uTrib>

<qTrib>1.0000</qTrib>

<vUnTrib>20.0000000000</vUnTrib>

<indTot>1</indTot>

</prod>


-<imposto>


-<ICMS>


-<ICMSSN500>

<orig>0</orig>

<CSOSN>500</CSOSN>

</ICMSSN500>

</ICMS>


-<PIS>


-<PISAliq>

<CST>01</CST>

<vBC>0.00</vBC>

<pPIS>0.0000</pPIS>

<vPIS>0.00</vPIS>

</PISAliq>

</PIS>


-<COFINS>


-<COFINSAliq>

<CST>01</CST>

<vBC>0.00</vBC>

<pCOFINS>0.0000</pCOFINS>

<vCOFINS>0.00</vCOFINS>

</COFINSAliq>

</COFINS>

</imposto>

</det>


-<total>


-<ICMSTot>

<vBC>0.00</vBC>

<vICMS>0.00</vICMS>

<vICMSDeson>0.00</vICMSDeson>

<vFCP>0.00</vFCP>

<vBCST>0.00</vBCST>

<vST>0.00</vST>

<vFCPST>0.00</vFCPST>

<vFCPSTRet>0.00</vFCPSTRet>

<vProd>20.00</vProd>

<vFrete>0.00</vFrete>

<vSeg>0.00</vSeg>

<vDesc>0.00</vDesc>

<vII>0.00</vII>

<vIPI>0.00</vIPI>

<vIPIDevol>0.00</vIPIDevol>

<vPIS>0.00</vPIS>

<vCOFINS>0.00</vCOFINS>

<vOutro>0.00</vOutro>

<vNF>20.00</vNF>

</ICMSTot>

</total>


-<transp>

<modFrete>0</modFrete>


-<transporta>

<CPF>14122814740</CPF>

<xNome>NOME</xNome>

<xEnder>RUA JOSE PEREIRA DE PINHO</xEnder>

</transporta>

</transp>


-<cobr>


-<fat>

<nFat>fATURA N 69</nFat>

<vOrig>20.00</vOrig>

<vDesc>0.00</vDesc>

<vLiq>20.00</vLiq>

</fat>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>002</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-08</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>002</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>002</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-08</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>20.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>001</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup>002</nDup>

<dVenc/>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc>2020-01-24</dVenc>

<vDup>0.00</vDup>

</dup>


-<dup>

<nDup/>

<dVenc/>

<vDup>10.00</vDup>

</dup>

</cobr>


-<pag>


-<detPag>

<indPag>1</indPag>

<tPag>05</tPag>

<vPag>20.00</vPag>

</detPag>

</pag>


-<infAdic>

<infCpl>EMPRESA DO SIMPLES NACIONAL NAO PERMITE APROVEITAMENTO DE CREDITO.</infCpl>

</infAdic>

</infNFe>


-<Signature xmlns="http://www.w3.org/2000/09/xmldsig#">


-<SignedInfo>

<CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>

<SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>


-<Reference URI="#NFe33200129641651000142550200000000691650893205">


-<Transforms>

<Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>

<Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>

</Transforms>

<DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<DigestValue>Ar+DEzAaSlXyJ7liXWdu2FMQGlg=</DigestValue>

</Reference>

</SignedInfo>

<SignatureValue>vnlSwNA/Iez0K4b26e7Ovu79/RR6WZXI1TbgRVTnZKAjMi2iFF7sUYtc6bai1zNm5IIOEB1P7Ejw4A7D6nwhesFyxyMspcrIRDvADbD1A1DK0o47lKtC+ScMI9zv5LTgj9c0IhS27KGFozn/C3MZZV3B0jVBG7wLMduZgS4Pnn7V1yUHSfv1Bee1vsfZUdnjG8EjdKOSdmrtnwHgTXWAUL9NWgyHDxROBpr6MOWWH4wq/7e9IMo6ozITXvqdaxK1xidPciOZVvlhZGclV1XjPNrZ016LXOR2pccBu1GMwW27O7OcGywfRycX/WqkEWQwFaCzNuL7DSu5oUok8mnp0g==</SignatureValue>


-<KeyInfo>


-<X509Data>

<X509Certificate>MIIH/zCCBeegAwIBAgIQX1nGPW3eZyLtql9CjblSIjANBgkqhkiG9w0BAQsFADB4MQswCQYDVQQGEwJCUjETMBEGA1UEChMKSUNQLUJyYXNpbDE2MDQGA1UECxMtU2VjcmV0YXJpYSBkYSBSZWNlaXRhIEZlZGVyYWwgZG8gQnJhc2lsIC0gUkZCMRwwGgYDVQQDExNBQyBDZXJ0aXNpZ24gUkZCIEc1MB4XDTE5MDQyNjEyMzI0OVoXDTIwMDQyNTEyMzI0OVowge0xCzAJBgNVBAYTAkJSMRMwEQYDVQQKDApJQ1AtQnJhc2lsMQswCQYDVQQIDAJSSjEXMBUGA1UEBwwOTGFqZSBkbyBNdXJpYWUxNjA0BgNVBAsMLVNlY3JldGFyaWEgZGEgUmVjZWl0YSBGZWRlcmFsIGRvIEJyYXNpbCAtIFJGQjEWMBQGA1UECwwNUkZCIGUtQ05QSiBBMTEXMBUGA1UECwwOMjkwMTE3NTAwMDA4MTcxOjA4BgNVBAMMMUFERVJCQUwgREUgU09VWkEgWElNRU5FUyBNRVJDRUFSSUE6Mjk2NDE2NTEwMDAxNDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDUkbNM
Responder

26/01/2020

Murilo Bragança

RESOLVIDO ASSIM

begin
if F_informacoes_nfe.txt_forma_pagamento.Text = ''PRAZO'' then
begin
dm.ACBrNFe1.NotasFiscais[0].NFe.pag.Clear;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag.Add;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].indPag := ipPrazo;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].tPag := fpCreditoLoja;
dm.ACBrNFe1.NotasFiscais[0].NFe.pag[0].vPag := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.vOrig := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.vLiq := strtofloat(lb_valor_total.Caption);
dm.ACBrNFe1.NotasFiscais[0].NFe.Cobr.Fat.nFat := ''FATURA Nº '' +txt_numero_nfe.Text;

D := 1;
SQL_buscar_faturas.Close;
SQL_buscar_faturas.SQL.Clear;
SQL_buscar_faturas.SQL.Add(''select * from duplicatanfe WHERE numero_nfe = :num order by numero_parcela asc'') ;
SQL_buscar_faturas.ParamByName(''num'').Value := txt_numero_nfe.text;
SQL_buscar_faturas.Open;
SQL_buscar_faturas.First;
while not SQL_buscar_faturas.eof do
begin
with NotaF.NFe.Cobr.Dup.Add do
begin
nDup := FormatFloat(''000'', SQL_buscar_faturasnumero_parcela.AsInteger);
dVenc := SQL_buscar_faturasdata_vencimento.Value;
vDup := (SQL_buscar_faturasvalor.AsFloat);
D := D + 1;
SQL_buscar_faturas.Next;
end;

end;

end;
end;
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar