Ir para conteúdo
  • Cadastre-se

Hetosoft Sistemas

Membros Pro
  • Total de ítens

    496
  • Registro em

  • Última visita

Community Answers

  1. Hetosoft Sistemas's post in cardse este não é um código picpay válido was marked as the answer   
    Descobrir 
    esta vindo certo do sitef
    é so mudar 
        //QRCode.Encoding := qrUTF8NoBOM;
        QRCode.Encoding := qrUTF8BOM;   esse monta o qrcode sem o ?
  2. Hetosoft Sistemas's post in Habilitar Seleção Certificado TWebBrowser Delphi was marked as the answer   
    Consegui realizar o Download do XML da NF-e pelo WebBrowser,
       foi somente setar a Propriedade do TWebBrowser.Silent = False;
    A partir dai a opção para selecionar o certificado ja aparece, e é só salvar para arquivo.
     
  3. Hetosoft Sistemas's post in WebService SOAP Delphi was marked as the answer   
    Era isso Mesmo, segue abaixo como consegui pegar caminho exato:
     
    uses
      Winapi.Windows
     
    function TWM.GetModuleFileSpec: String;
    var
      cret: integer;
      ModName: array[0..MAX_PATH - 1] of Char;
    begin
      GetModuleFileName(HInstance, ModName, SizeOf(ModName));
      cret := GetLongPathName(ModName, ModName, SizeOf(ModName));
      SetString(Result, ModName, cret);
    end;
     
    function TWM.GetModulePath: String;
    begin
      Result := ExtractFilePath(GetModuleFileSpec);
    end;
     
     
    var Caminho := GetModulePath;
  4. Hetosoft Sistemas's post in Nf-E 3.10 was marked as the answer   
    Resolvir assim
     
        Ide.dEmi      := StrToDate(DM12.Client_NotaFiscalC_EMISSAO.Text);//  Date;
        Ide.dSaiEnt   := StrToDate(DM12.Client_NotaFiscalC_ENTREGA.Text);//  Date;
        Ide.hSaiEnt   := Now;

        Ide.dEmi      := StrToDateTime(DM12.Client_NotaFiscalC_EMISSAO.Text+' '+FormatDateTime('hh:mm:ss',Now));
        Ide.dSaiEnt   := StrToDateTime(DM12.Client_NotaFiscalC_ENTREGA.Text+' '+FormatDateTime('hh:mm:ss',Now));

     
  5. Hetosoft Sistemas's post in Iss.net Erro Ao Enviar was marked as the answer   
    Desativei o CONSULTALOTEAPOSENVIO = False
     
    e mudei minha rotina de enviar
     
     
     
         try
           if Form_NFSe.ACBrNFSe1.Enviar(vNumLote) then
           begin
              //MessagemH( 0, 'Form_NFSe.ACBrNFSe1.Enviar(vNumLote)' );

              DM12.Client_NotaFiscal.edit;

              DM12.Client_NotaFiscalNFS_PROTOCOLO.Text:= Form_NFSe.ACBrNFSe1.WebServices.Enviar.Protocolo;
              DM12.Client_NotaFiscalNFS_PROTOCOLO_LOTE.Text:= Form_NFSe.ACBrNFSe1.WebServices.ConsLote.Protocolo;

              DM12.Client_NotaFiscalNFS_CODVERIFICACAO.Text:= Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.CodigoVerificacao;
              DM12.Client_NotaFiscalNUMERO.Text:= Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.Numero;


              DM12.Client_NotaFiscal.ApplyUpdates(-1);
              Form_NFSe.ACBrNFSe1.NotasFiscais.Clear;


              //COSNULTA  1 SEGUNDOS 5 TENTATIVA
              //CONSUTA RPS   RPS + 12 - RPS.XML
              //
              //
              try
                     Form_NFSe.ACBrNFSe1.NotasFiscais.Clear;
                     Form_NFSe.ACBrNFSe1.NotasFiscais.LoadFromFile(
                       RAIZ+'\Controles_SQL\NFSe\EnvioDeResposta\'+
                       Copy( DM12.Client_NotaFiscalC_EMISSAO.Text,7,4 )+
                       Copy( DM12.Client_NotaFiscalC_EMISSAO.Text,4,2 )+
                       '\RPS\'+DM12.Client_NotaFiscalNFS_RPS.Text+Form_NFSe.Edit2.Text+'-RPS.XML'
                     );

                     Form_NFSe.ACBrNFSe1.ConsultarNFSeporRps(Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.IdentificacaoRps.Numero,
                                                  Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.IdentificacaoRps.Serie,
                                                  TipoRPSToStr(Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.IdentificacaoRps.Tipo),
                                                  Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.Prestador.Cnpj,
                                                  Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.Prestador.InscricaoMunicipal);

                     Form_NFSe.MemoResp.Lines.Text   := UTF8Encode(Form_NFSe.ACBrNFSe1.WebServices.ConsNfseRps.RetWS);
                     Form_NFSe.memoRespWS.Lines.Text := UTF8Encode(Form_NFSe.ACBrNFSe1.WebServices.ConsNfseRps.RetWS);
                     Form_NFSe.LoadXML(Form_NFSe.MemoResp, Form_NFSe.WBResposta);



                      DM12.Client_NotaFiscal.edit;
                      DM12.Client_NotaFiscalNFS_CODVERIFICACAO.Text:= Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.CodigoVerificacao;
                      DM12.Client_NotaFiscalNUMERO.Text:= Form_NFSe.ACBrNFSe1.NotasFiscais.Items[0].NFSe.Numero;


                      DM12.Client_NotaFiscal.ApplyUpdates(-1);


                      if Tipo=0 then
                      begin
                        //IMPRIMIR
                        Form_NotaFiscal.BitBtn99Click(nil);
                      end;

                      
                      Form_NFSe.ACBrNFSe1.NotasFiscais.Clear;
              except

                MessagemH(2,'NFS-e  NºPED:'+DM12.Client_NotaFiscalCOD.Text+'  RPS:'+FormatFloat('#########0', StrToInt(NumNFSe))+''+#13+
                'Sem Retorno !');
                Abort;
              end;





           end else
           begin

             MessagemH(2,'NFS-e  NºPED:'+DM12.Client_NotaFiscalCOD.Text+'  RPS:'+FormatFloat('#########0', StrToInt(NumNFSe))+''+#13+
             'Não Enviada !');
             Abort;
           end;
         except

              on E: Exception do
              begin

                 MessagemH(2,'NFS-e  NºPED:'+DM12.Client_NotaFiscalCOD.Text+'  RPS:'+FormatFloat('#########0', StrToInt(NumNFSe))+''+#13+
                 'Não Enviada !'+#13+
                 E.Message);

                 Form_NFSe.ACBrNFSe1.NotasFiscais.Clear;
                 Abort;
              end;


         end;
     
  6. Hetosoft Sistemas's post in Danfe & Acbrnfemonitor was marked as the answer   
    Senhores,
    Consegui resolver o problema faltou simplesmente colocar onde esta:
    Errado: NFe.ImprimirDanfe("'+odOpenNFe.FileName+'","MP4200TH01",1)
    Certo:   NFe.ImprimirDanfe("'+odOpenNFe.FileName+'","\\ESTACAO01\MP4200TH01")
  7. Hetosoft Sistemas's post in Nome Computador Da Conexao Remota was marked as the answer   
    Conseguir
    USERNAME     = nome do usuario conexao remota
    CLIENTNAME   = nome da maquina que abrio a conexao remota
    USERPROFILE  = caminho da pasta de meus documentos do usuario


    Edit1.Text  := GetEnv('USERNAME');



    function TForm1.GetEnv(Variable: string): string;
    var Buffer : Integer;
    begin
      Buffer := GetEnvironmentVariable(PChar(Variable), nil, 0);
      if Buffer > 0 then
         begin
         SetLength(Result, Buffer - 1);
         GetEnvironmentVariable(PChar(Variable), PChar(Result), Buffer);
         end
      else
         Result := '';
    end;
     
     
    essa é pra saber se esta em uma conexao remota ou desktop
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
       if IsRemoteSession=True then
        Edit1.Text:='Conexao Remota'  else
        Edit1.Text:= 'Desktop' ;
    end;


    function TForm1.IsRemoteSession: boolean;
    var res : integer;
    begin
      res := GetSystemMetrics (SM_REMOTESESSION);
      Result := (res <> 0);
    end;
     
  8. Hetosoft Sistemas's post in Qrcode Em Off-Line was marked as the answer   
    blz,
     
                 Barcode2D_QRCode1.Barcode:= NotaUtil.GetURLQRCode(
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Ide.cUF,
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Ide.tpAmb,
                   copy( Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4,44 ),
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Dest.CNPJCPF,
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Ide.dEmi,
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Total.ICMSTot.vNF,
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.Total.ICMSTot.vICMS,
                   Form_NFe.ACBrNFe1.NotasFiscais.Items[0].NFe.signature.DigestValue,
                   IDTOKEN,
                   TOKEN );
     
     
    Brigadoooooooo.
  9. Hetosoft Sistemas's post in Manifestar - Manifestação Do Destinatário was marked as the answer   
    Obrigado André pela ajuda consegui enviar.
  10. Hetosoft Sistemas's post in Retorno Acbrnfemonitor - Manifestação Do Destinatário was marked as the answer   
    Para esclarecer melhor a duvida por exemplo ao fazer a consulta sem usar o monitor é usado este comando:
     
     MemoResp.Lines.Text := UTF8Encode(ACBrNFe1.WebServices.ConsNFeDest.RetWS);
      memoRespWS.Lines.Text := UTF8Encode(ACBrNFe1.WebServices.ConsNFeDest.RetornoWS);
    //  ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].XXXX
      LoadXML(MemoResp, WBResposta);
     
    quando eu uso o socket com monitor a maquina cliente não acesso o WebServices como obter a resposta da consulta na maquina cliente?
  11. Hetosoft Sistemas's post in Manifestação Do Destinatário was marked as the answer   
    Juliomar após rever o link que vc passo consegui enviar o comando para o monitor. Obrigado pela ajuda.
  12. Hetosoft Sistemas's post in 100 - Qr Code Inválido was marked as the answer   
    Obrigado pela ajuda fiz a atualização e resolveu o problema. Tive que gerar tb um CSC para homologação caso alguém precise veja nestes links:
    http://www.sefaz.mt.gov.br/portal/?action=noti&codg_Noticia=32240
    http://www.sefaz.mt.gov.br/portal/nfce/
  13. Hetosoft Sistemas's post in Acbrnfedanfeqr1 Pdf was marked as the answer   
    RESOLVI
    colocando estes codigos
     
    unit ACBrNFeDANFeQR;
     
     
            if APreview
             then begin
               QRNFe.PrinterSettings.Copies := FNumCopias; // Incluido por Italo em 15/10/2010

              // Incluido por Italo em 13/01/2011
             {$IFDEF QReport_PDF}
               QRNFe.PrevShowSearch      := False;
               QRNFe.PrevShowThumbs      := False;
               QRNFe.PreviewInitialState := wsMaximized;
               QRNFe.PrevInitialZoom     := qrZoomToWidth;
               QRNFe.PreviewDefaultSaveType := stPDF;
               QRExportFilterLibrary.AddFilter(TQRPDFDocumentFilter);
             {$ENDIF}
     
  14. Hetosoft Sistemas's post in Nfc-E 3.10 was marked as the answer   
    Dest.indIEDest         := inNaoContribuinte;
  15. Hetosoft Sistemas's post in Boleto Data De Multa_Juros Errada was marked as the answer   
    Resolvir,
     
    mudando este codigo
    na unit ACBrBoleto;
     

  16. Hetosoft Sistemas's post in Arquivo Remessa Quantidade De Linhas A Menos was marked as the answer   
    abra o arquivo ACBrCaixaEconomica.pas, coloque um breakpoint na linha 511 e verifique o que ele faz ao gerar o boleto!
     

     
    Resolvido
  17. Hetosoft Sistemas's post in Acbrboleto1.lerretorno was marked as the answer   
    procedure TfrmDemo.Button8Click(Sender: TObject);
    Var
     i: integer;
     Titulo : TACBrTitulo;
    begin


       ACBrBoleto1.LerRetorno;



       try
           For I := 0 to ACBrBoleto1.ListadeBoletos.Count - 1 do
           begin
            Titulo := ACBrBoleto1.ListadeBoletos.Objects;

            Memo1.Lines.Add('Numero do Documento = ' + Titulo.NumeroDocumento);
            Memo1.Lines.Add('Valor Recebido      = ' + FloatToStr(Titulo.ValorRecebido));
            Memo1.Lines.Add('Nosso Numero        = ' + Titulo.NossoNumero);
            Memo1.Lines.Add('Nome do Cliente     = ' + Titulo.ACBrBoleto.Name);
           end;
       finally


       end;



    end;
  18. Hetosoft Sistemas's post in Nao Gera Pdf Boleto was marked as the answer   
    Esqueci de um detalhe ativa o codigo.
     
    unit ACBrBoletoFCQuickFr;
     
    uses
      SysUtils, StdCtrls, Classes, Graphics, Controls, Forms, Dialogs, ACBrBoleto,
      QRMultiExport, QRCtrls, QuickRpt, ExtCtrls, QRExport, ACBrBarCode,
      QRWebFilt, QRPDFFilt;
     
     
    procedure TACBrBoletoFCQuick.Imprimir;
    var
      frACBrBoletoQuick : TACBRBoletoFCQuickFr;
      RLLayout: TQuickRep;
      MultiExport : TQRMultiExport ;
      FiltroExportacao: TQRPAbstractExportFilter;
      //HTMLFilter  : TQRHTMLDocumentFilter ;
    begin
      inherited Imprimir;    // Executa verificações padroes

      frACBrBoletoQuick := TACBrBoletoFCQuickFr.Create(Self);
      try
         with frACBrBoletoQuick do
         begin
            case LayOut of
               lCarne  : RLLayout:= BoletoCarne;
               lPadraoEntrega  : RLLayout:= LayoutPadraoEntrega;
            else
               RLLayout := LayoutBoleto;
            end;

            RLLayout.PrinterSettings.Copies := NumCopias ;

            case Filtro of
              fiPDF  :
                begin
                  FiltroExportacao := TQRPDFDocumentFilter.Create(NomeArquivo);
                  try
                    TQRPDFDocumentFilter(FiltroExportacao).CompressionOn := true;
                    RLLayout.ExportToFilter(FiltroExportacao);
                  finally
                    FiltroExportacao.Free;
                  end;
                   MultiExport := TQRMultiExport.Create(self);
                   try
                      MultiExport.Report       := RLLayout ;
                      MultiExport.ExportFormat := qrxPDF ;
                      MultiExport.FileName     := NomeArquivo ;
                      MultiExport.ShowDialog   := MostrarSetup ;
                      MultiExport.DPI          := 300 ;
                      MultiExport.DoExport ;
                   finally
                      MultiExport.Free ;
                   end ;
                end ;

              fiHTML :
                begin
                   (*  Codigo abaixo comentado pois  não funciona...
                   HTMLFilter := TQRHTMLDocumentFilter.Create( NomeArquivo );
                   try
                      RLLayout.ExportToFilter( HTMLFilter );
                   finally
                      HTMLFilter.Free ;
                   end ;
                   *)
                   raise Exception.Create( ACBrStr('Exportação para HTML não implementada no QuickReport') ) ;
                end ;
            else
              begin
                if MostrarPreview then
                   RLLayout.PreviewModal
                else
                 begin
                   if MostrarSetup then
                      RLLayout.PrinterSetup ;

                   if (RLLayout.Tag = 0) then
                      RLLayout.Print;
                 end ;
              end
            end ;
         end ;
      finally
         frACBrBoletoQuick.Free ;
      end;
    end;
  19. Hetosoft Sistemas's post in Manifesto De Destinatario Erro Data was marked as the answer   
    Depois de 20 dias
    Conseguir resolver
     
    Pesquisei no google e achei esse tópico.
     

    que o Liandrocs resolveu  o  problema
     
    -----------------------
    Estao meu codigo ficou assim....
     
     
     
     
    function TForm_Manifesto.Manifestar(tipo: Integer): Boolean;
    var
     Chave, idLote, CNPJ, vXMotivo: string;
     lMsg: string;
    begin

     try

        Chave:=DM11.Client_ManifestoCHAVE_NFE.Text;

        CNPJ:=Form_NFe.edtEmitCNPJ.Text;


        Chave := Trim(OnlyNumber(Chave));
        idLote := '1';


        Form_NFe.ACBrNFe1.EventoNFe.Evento.Clear;
        with Form_NFe.ACBrNFe1.EventoNFe.Evento.Add do
         begin
           infEvento.chNFe := Chave;
           infEvento.CNPJ   := CNPJ;
           infEvento.dhEvento := now;


           
           if tipo=1 then
              infEvento.tpEvento := teManifDestConfirmacao else
           if tipo=2 then
              infEvento.tpEvento := teManifDestDesconhecimento else
           if tipo=3 then
              infEvento.tpEvento := teManifDestOperNaoRealizada else
           if tipo=4 then
              infEvento.tpEvento := teManifDestCiencia;


           //novo 2014
           //infEvento.cOrgao:= StrToInt( Form_NFe.edtCodUF.Text );
           //infEvento.nSeqEvento:=1;
           //infEvento.versaoEvento:='1.00';

           //infEvento.DescEvento:='Confirmacao da Operacao';
           //infEvento.xJust:='';//Operacao nao Realizada


         end;
        //Form_NFe.ACBrNFe1.EnviarEventoNFe(StrToInt(IDLote));


        try
          Form_NFe.ACBrNFe1.EnviarEventoNFe(StrToInt(IDLote));

          if Form_NFe.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 657 then
          begin
            Form_NFe.ACBrNFe1.EventoNFe.Evento.Items[0].InfEvento.cOrgao := Form_NFe.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.cOrgao;
            if not Form_NFe.ACBrNFe1.EnviarEventoNFe(StrToInt(IDLote)) then
            begin
              with Form_NFe.ACBrNFe1.WebServices.EnvEvento do
              begin
                raise Exception.Create('Ocorreram erros ao tentar efetuar a manifestação:' + sLineBreak +
                                       'Lote: ' + IntToStr(EventoRetorno.idLote) + sLineBreak +
                                       'Ambiente: ' + TpAmbToStr(EventoRetorno.tpAmb) + sLineBreak +
                                       'Orgao: ' + IntToStr(EventoRetorno.cOrgao) + sLineBreak +
                                       'Status: ' + IntToStr(EventoRetorno.cStat) + sLineBreak +
                                       'Motivo: ' + EventoRetorno.xMotivo);
              end;
            end;
          end;

        except
          //SE ERRO DE DATA MUDA O cOrgao
          Form_NFe.ACBrNFe1.EventoNFe.Evento.Items[0].InfEvento.cOrgao := 91;

          Form_NFe.ACBrNFe1.EnviarEventoNFe(StrToInt(IDLote));

          if Form_NFe.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 657 then
          begin
            Form_NFe.ACBrNFe1.EventoNFe.Evento.Items[0].InfEvento.cOrgao := Form_NFe.ACBrNFe1.WebServices.EnvEvento.EventoRetorno.cOrgao;
            if not Form_NFe.ACBrNFe1.EnviarEventoNFe(StrToInt(IDLote)) then
            begin
              with Form_NFe.ACBrNFe1.WebServices.EnvEvento do
              begin
                raise Exception.Create('Ocorreram erros ao tentar efetuar a manifestação:' + sLineBreak +
                                       'Lote: ' + IntToStr(EventoRetorno.idLote) + sLineBreak +
                                       'Ambiente: ' + TpAmbToStr(EventoRetorno.tpAmb) + sLineBreak +
                                       'Orgao: ' + IntToStr(EventoRetorno.cOrgao) + sLineBreak +
                                       'Status: ' + IntToStr(EventoRetorno.cStat) + sLineBreak +
                                       'Motivo: ' + EventoRetorno.xMotivo);
              end;
            end;
          end;


        end;


            with Form_NFe.AcbrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento do
            begin
              vXMotivo:=xMotivo;
              lMsg:=
              'Id: '+Id+#13+
              'tpAmb: '+TpAmbToStr(tpAmb)+#13+
              'verAplic: '+verAplic+#13+
              'cOrgao: '+IntToStr(cOrgao)+#13+
              'cStat: '+IntToStr(cStat)+#13+
              'xMotivo: '+xMotivo+#13+
              'chNFe: '+chNFe+#13+
              'tpEvento: '+TpEventoToStr(tpEvento)+#13+
              'xEvento: '+xEvento+#13+
              'nSeqEvento: '+IntToStr(nSeqEvento)+#13+
              'CNPJDest: '+CNPJDest+#13+
              'emailDest: '+emailDest+#13+
              'dhRegEvento: '+DateTimeToStr(dhRegEvento)+#13+
              'nProt: '+nProt;
            end;


            if Pos('registrado e vinculado', vXMotivo )>0 then
            begin

              {
              DM11.Client_Manifesto.Edit;
              DM11.Client_ManifestoSEL.Text:='False';
              DM11.Client_ManifestoDATAMANIFESTO.AsDateTime:=Now;
              DM11.Client_ManifestoTIPOMANIFESTO.Text:=IntToStr(tipo);
              DM11.Client_Manifesto.ApplyUpdates(-1);
              }


              try

              DM.SQL_PRATUDO.Close;
              DM.SQL_PRATUDO.CommandText:=
              'UPDATE N_MANIFESTO SET DATAMANIFESTO=:A, TIPOMANIFESTO='+IntToStr(tipo)+' '+
              'WHERE ID='+DM11.Client_ManifestoID.Text+' ';
              DM.SQL_PRATUDO.ParamByName('A').AsDate:= StrToDate(  FormatDateTime('dd/mm/yyyy',Now)  );
              DM.SQL_PRATUDO.ExecSQL;

              DM.SQL_PRATUDO.Close;
              DM.SQL_PRATUDO.CommandText:=
              'commit';
              DM.SQL_PRATUDO.ExecSQL;

              except
                 MessagemH(1,'Erro ao salvar o evento do manifesto !');
              end;

            end else
            begin
               if tipo=1 then
                  NFEM_CancelarProcesso:=1;

               ShowMessage(lMsg);
            end;

        Form_NFe.MemoResp.Lines.Text := UTF8Encode(Form_NFe.ACBrNFe1.WebServices.EnvEvento.RetWS);
        Form_NFe.memoRespWS.Lines.Text := UTF8Encode(Form_NFe.ACBrNFe1.WebServices.EnvEvento.RetornoWS);
      //  ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].XXXX
        Form_NFe.LoadXML(Form_NFe.MemoResp, Form_NFe.WBResposta);

     except

              on E: Exception do
              begin

                if tipo=1 then
                   NFEM_CancelarProcesso:=1;

                 MessagemH(2,'Erro ao enviar evento de manifesto !'+#13+
                 E.Message);

              end;




     end;

    end;
  20. Hetosoft Sistemas's post in Recuperar Xml - Xml2.00 was marked as the answer   
    Blz,
     
    mais fiz  a correções se alguém quiser .... ta ai.
    RecuperarXML.rar
  21. Hetosoft Sistemas's post in Caminho Do Servidor Para Baixar Todas As Pasta Acbr was marked as the answer   
    Post 
     
     
     
    Falei tanto que esqueci de postar a "solução".
     
    Na unit ACBrHTMLtoXML,
     
    alterar a linha:
     if Trim(Versao)<>'2.00' then
     
    para:
     if (Trim(Versao)<>'2.00') and (Trim(Versao)<>'XML2.00') then
     
     
    Pelo que vi, na consulta completa mudou somente a versão: de "2.00" para "XML2.00"
     
     
    []´s
    Edson.
  22. Hetosoft Sistemas's post in Acbrboleto1.gerarpdf Nao Funciona Mais was marked as the answer   
    Descomentei
     
    ACBrBoletoFCQuickFr


    uses
      SysUtils, StdCtrls, Classes, Graphics, Controls, Forms, Dialogs, ACBrBoleto,
      QRMultiExport, QRCtrls, QuickRpt, ExtCtrls, QRExport, ACBrBarCode, QRWebFilt, QRPDFFilt;
    //  RLFilters, RLPDFFilter ;
     
     
     
     


          case Filtro of
              fiPDF  :
                begin
                  FiltroExportacao := TQRPDFDocumentFilter.Create(NomeArquivo);
                  try
                    TQRPDFDocumentFilter(FiltroExportacao).CompressionOn := true;
                    RLLayout.ExportToFilter(FiltroExportacao);
                  finally
                    FiltroExportacao.Free;
                  end;
                   MultiExport := TQRMultiExport.Create(self);
                   try
                      MultiExport.Report       := RLLayout ;
                      MultiExport.ExportFormat := qrxPDF ;
                      MultiExport.FileName     := NomeArquivo ;
                      MultiExport.ShowDialog   := MostrarSetup ;
                      MultiExport.DPI          := 300 ;
                      MultiExport.DoExport ;
                   finally
                      MultiExport.Free ;
                   end ;
                end ;
     
  23. Hetosoft Sistemas's post in Nao Gerar O Pdf was marked as the answer   
    Descomentei
     
    ACBrBoletoFCQuickFr


    uses
      SysUtils, StdCtrls, Classes, Graphics, Controls, Forms, Dialogs, ACBrBoleto,
      QRMultiExport, QRCtrls, QuickRpt, ExtCtrls, QRExport, ACBrBarCode, QRWebFilt, QRPDFFilt;
    //  RLFilters, RLPDFFilter ;
     
     
     
     


          case Filtro of
              fiPDF  :
                begin
                  FiltroExportacao := TQRPDFDocumentFilter.Create(NomeArquivo);
                  try
                    TQRPDFDocumentFilter(FiltroExportacao).CompressionOn := true;
                    RLLayout.ExportToFilter(FiltroExportacao);
                  finally
                    FiltroExportacao.Free;
                  end;
                   MultiExport := TQRMultiExport.Create(self);
                   try
                      MultiExport.Report       := RLLayout ;
                      MultiExport.ExportFormat := qrxPDF ;
                      MultiExport.FileName     := NomeArquivo ;
                      MultiExport.ShowDialog   := MostrarSetup ;
                      MultiExport.DPI          := 300 ;
                      MultiExport.DoExport ;
                   finally
                      MultiExport.Free ;
                   end ;
                end ;
     
  24. Hetosoft Sistemas's post in Homologação Sitef was marked as the answer   
    eu conseguir na verdade fis isso
    fCancelado:=False; 
     
     
    ////////////////////////////////////////////////////
     
                     20 :
                       begin
                         if Mensagem = '' then
                            Mensagem := 'CONFIRMA ?';

                         Resposta := ifThen( (DoExibeMsg( opmYesNo, Mensagem ) = mrYes), '0', '1' ) ;
                         {Digitado := ( Resposta <> '1') ;}

                         fCancelado:=False;
                       end ;
     
     
     
    //Cabei de ser homologado na Certified CIELO e com Cielo Premia
    tive que fazer alguma modificacoes mais tudo ok.
     
    fazer com que o dinheiro sempre seja imprimirdo por ultimo na impressora fiscal
    desabilitei eta funcao
    opeImprimePagamentos :
     
     
     
    procedure TForm1TEFD.ACBrTEFD1ComandaECF(Operacao : TACBrTEFDOperacaoECF;
       Resp : TACBrTEFDResp; var RetornoECF : Integer );
    Var
       Est : TACBrECFEstado ;
       P   : Integer;
       Linha, CodFPG : String ;
       ValorFPG : Double ;
    begin
      Memo1.Lines.Add('ComandaECF: '+GetEnumName( TypeInfo(TACBrTEFDOperacaoECF), integer(Operacao) ));


      try
        Est := Form1_ACBrECF.ACBrECF1.Estado;

        case Operacao of
          opeAbreGerencial :
             Form1_ACBrECF.ACBrECF1.AbreRelatorioGerencial;

          opeCancelaCupom :
             if Est = estNaoFiscal then
             begin
                Form1_ACBrECF.ACBrECF1.CancelaNaoFiscal;
             end else
             begin
               Form1_ACBrECF.ACBrECF1.CancelaCupom;//2
               Form_PDV.Cancelar_Cupom_REGISTROS_TefFim(-1);
             end;


          opeFechaCupom :
             if Est = estNaoFiscal then
                Form1_ACBrECF.ACBrECF1.FechaNaoFiscal('') //'Projeto ACBr|http://acbr.sf.net'
             else
             begin
                Form_PDV.Finalizar_ACBrECF_Memo;
                Form1_ACBrECF.ACBrECF1.FechaCupom( Form_PDV.DBMemo2.Text);   //'Projeto ACBr|http://acbr.sf.net'
             end;


          opeSubTotalizaCupom :
             if Est = estNaoFiscal then
                Form1_ACBrECF.ACBrECF1.SubtotalizaNaoFiscal( 0, '' )  //'Projeto ACBr|http://acbr.sf.net'
             else
                Form1_ACBrECF.ACBrECF1.SubtotalizaCupom( 0, '' );  //'Projeto ACBr|http://acbr.sf.net'

          opeFechaGerencial, opeFechaVinculado :
            Form1_ACBrECF.ACBrECF1.FechaRelatorio ;

          opePulaLinhas :
            begin
              Form1_ACBrECF.ACBrECF1.PulaLinhas( Form1_ACBrECF.ACBrECF1.LinhasEntreCupons );
              Form1_ACBrECF.ACBrECF1.CortaPapel( True );
              //Sleep(200);
            end;

          opeImprimePagamentos :
            begin
              {while mPagamentos.Lines.Count > 0 do
              begin
                 Linha := mPagamentos.Lines[0] ;

                 P     := pos('|',Linha) ;
                 if P > 0 then
                 begin
                    CodFPG   := Trim(copy(Linha,1,P-1)) ;
                    ValorFPG := StringToFloatDef( copy(Linha, P+1, Length(Linha) ), 0 );
                    ShowMessage(CodFPG+' - '+FloatToStr(ValorFPG));
                    if (CodFPG <> '') and (ValorFPG > 0) then
                       Form1_ACBrECF.ACBrECF1.EfetuaPagamento( CodFPG, ValorFPG );
                 end;
                 mPagamentos.Lines.Delete(0);
              end; }
            end;
        end;

        RetornoECF := 1 ;
      except
        RetornoECF := 0 ;
      end;
    end;
     
     
     
    //E COLOQUEI AQUI
                          'P' :
                            begin
                              if not AutoEfetuarPagamento then
     
     
     
     
    procedure TACBrTEFD.FinalizarCupom(DesbloquearMouseTecladoNoTermino: Boolean);
    Var
      I, J, Ordem : Integer;
      Est, EstNaoFiscal  : AnsiChar;
      ImpressaoOk : Boolean ;
      GrupoFPG    : TACBrTEFDArrayGrupoRespostasPendentes ;


       P   : Integer;
       Linha, CodFPG : String ;
       ValorFPG : Double ;

    begin
      ImpressaoOk := False ;
      fTefClass.GravaLog( 'FinalizarCupom'+IfThen(DesbloquearMouseTecladoNoTermino,
                          ', DesbloquearMouseTecladoNoTermino','') ) ;

      try
         while not ImpressaoOk do
         begin
            try
               BloquearMouseTeclado( True );

               try
                  EstNaoFiscal := 'N';
                  Est          := EstadoECF;
                  while Est <> 'L' do
                  begin
                     // É não fiscal ? Se SIM, vamos passar por todas as fases...
                     if Est = 'N' then
                     begin
                        case EstNaoFiscal of
                          'N' : EstNaoFiscal := 'V' ;
                          'V' : EstNaoFiscal := 'P' ;
                          'P' : EstNaoFiscal := 'N' ;
                        end ;

                        Est := EstNaoFiscal ;
                     end ;

                     try
                        Case Est of
                          'V' : ECFSubtotaliza( RespostasPendentes.TotalDesconto );

                          'P' :
                            begin
                              if not AutoEfetuarPagamento then
                              begin
                                 //FORMAS TEF
                                 GrupoFPG := nil ;
                                 AgruparRespostasPendentes( GrupoFPG );
                                 Ordem := 0 ;

                                 For I := 0 to Length( GrupoFPG )-1 do
                                 begin
                                    if GrupoFPG.OrdemPagamento = 0 then
                                     begin
                                       Inc( Ordem ) ;

                                       if InfoECFAsDouble(ineSubTotal) > 0 then
                                          ECFPagamento( GrupoFPG.IndiceFPG_ECF, GrupoFPG.Total );

                                       For J := 0 to RespostasPendentes.Count-1 do
                                          if RespostasPendentes[J].IndiceFPG_ECF = GrupoFPG.IndiceFPG_ECF then
                                          begin
                                            if (RespostasPendentes[J].Header = 'CHQ') and CHQEmGerencial then
                                             begin
                                               RespostasPendentes[J].OrdemPagamento := 999;
                                               Dec( Ordem ) ;
                                             end
                                            else
                                               RespostasPendentes[J].OrdemPagamento := Ordem;
                                          end;
                                     end
                                    else
                                       Ordem := GrupoFPG.OrdemPagamento ;
                                 end;



                                  if vTEFDjaExPag<>1 then
                                  begin
                                  //////////////////////////////////////
                                  //FORMA NAO TEF
                                  while Form1TEFD.mPagamentos.Lines.Count > 0 do
                                  begin
                                     Linha := Form1TEFD.mPagamentos.Lines[0] ;

                                     P     := pos('|',Linha) ;
                                     if P > 0 then
                                     begin
                                        CodFPG   := Trim(copy(Linha,1,P-1)) ;
                                        ValorFPG := StringToFloatDef( copy(Linha, P+1, Length(Linha) ), 0 );
                                        if (CodFPG <> '') and (ValorFPG > 0) then
                                        begin
                                           //Form1_ACBrECF.ACBrECF1.EfetuaPagamento( CodFPG, ValorFPG );
                                           //ShowMessage('desligue a impressora');
                                           vTEFDjaExPag:=1;
                                           ECFPagamento( CodFPG, ValorFPG );
                                        end;
                                     end;
                                     Form1TEFD.mPagamentos.Lines.Delete(0);
                                  end;
                                  //////////////////////////////////////
                                  end;


                              end;
  25. Hetosoft Sistemas's post in Tef Dedicado Atalho Com F? was marked as the answer   
    resolvir fazendo isso
     
     
    if key = vk_F1 then
    begin
      BitBtn3.Click;
    end;
     
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...