Ir para conteúdo
  • Cadastre-se

jperim

Membros
  • Total de ítens

    31
  • Registro em

  • Última visita

Posts postados por jperim

  1. Esqueci de mencionar q estou usando ECF + Virtual + PosPrinter

    Eu conseguir resolver o problema da impressão em rede não sair.

    Coloquei o 1º usuário (porta='RAW:\\10.42.43.15\Daruma DR800 Spooler') e no 2º usuário (porta='RAW:Daruma DR800 Spooler')

    Deixei somente ECF.ControlePorta=True e no PosPrinter.ControlePorta=False

    Ai deu certo!!! 

    Se PosPrinter.ControlePorta=True a impressão sair td errada, que era meu 2 problema.

    Mas obrigado pela ajuda.

  2. Pessoal queria saber se alguém teve problemas de impressão em REDE ativando o ControlePorta.

    Um usuário (porta='RAW:\\10.42.43.15\Daruma DR800 Spooler') enviar junto com um outro (porta=COM7) e só sair a 1º impressão a 2ª não imprimir.

    e outra coisa que observei é q por exemplo uma impressão RELATORIO GERENCIAL sair correta com ControlePorta=False e qdo está True a mesma impressão sair cortando alguns caracteres.

    Aguardo retorno e já agradeço a ajuda.

  3. Pessoal, acho que encontrei um erro.

    function TACBrConvenio115Mestre.RegistroEAssinatura(AVersaoAnterior: Boolean): TConvenio115AssinaturaMD5;

    .....

    begin
        SRec := SRec +
              {23} IntToStr(Ord(IndicadorPessoa) + 1) +
              {24} _GetTab11_8_2 +
              {25} '00' + // Telecomunicação é 00
              {26} PadLeft(NumeroTelefonePrincipal, 12) +
              {27} PadLeft(OnlyNumber(FCnpjEmitente), 14, '0') +
              {28} PadRight(NumeroFaturaComercial, 20) +
              {29} PadLeft(TiraPontos(FormatFloat('#,##0.00', OutrosValores)), 12, '0') +    /////  DEVERIA SER ValorFaturaComecial
              {30} DataLeituraAnterior +
              {31} DataLeituraAtual +
              {32} PadRight('', 50) +
              {33} PadRight('', 8, '0') +
              {34} PadRight(Observacoes, 30) +
              {33} PadRight('', 5);
      end;

  4. @cloudcon, bom dia, trabalho com @jefferson01 que já estava conversando com vc sobre o envio para pref. da serra.

    Então, conseguir fazer gerar corretamente o XML, estou usando o usuário e senha que manda o manual,

    Usuário: 555.555.555-55
    Senha: 1234 (Essa senha após aplicar hash fica cRDtpNCeBiql5KOQsKVyrA0sAiA=)

    Usei inscricaomunicipalemissor = 99999 que está no manual tb como exemplo.

    Mas recebo como resposta:

    Erro: Declarante nao autorizado a emitir NFE para o CCM 99999.

    Já tentei vários "inscricaomunicipalemissor" mas a resposta é a mesma.

    Sabe de alguma coisa se mudou? Pode me ajudar?

    Pq o suporte deles é zero...

    Vc pode me passar algum contato deles para eu contactar, pq o q tenho não conseguir muita coisa.

    Já agradeço sua atenção.

  5. ACBrPAF_F
      FER_PAF_ECF: string;     // Versão da Especificação de Requisitos do PAF-ECF
     
    ACBrPAF_F_Class;
      lin. 194 => LFill(COO, IfThen(ER_PAF_ECF='0202',9,6)) +
      lin. 193 => LFill(CCF, IfThen(ER_PAF_ECF='0202',9,6)) +
     
      lin. 234 => LFill(StrUtils.IfThen(RegistroValido, COD_TSER, '??'), 2) +
     
    ACBrPAF_L_Class;
      lin.140 => RFill(MODELO_ECF, 20, ifThen(RegistroValido, ' ', '?')) +
      lin.142 => LFill(COO, IfThen(ER_PAF_ECF='0202',9,6)) +
      
    ACBrPAF_M;
      //M2 - Cupom de embarque
      TRegistroM2 = class
      private
        fRegistroValido: Boolean;
        fPERC_DESC: Currency;            // Percentual do desconto praticado sobre a tarifa
        fCPF_PAS: string;                // Número CPF do passageiro.
        fTEL_PAS: string;                // Número de celular do passageiro
        FER_PAF_ECF: string;             // Versão da Especificação de Requisitos do PAF-ECF
     
    ACBrPAF_M_Class;
      WriteRegistroM2
      lin. 138 => RFill(MODELO_ECF, 20, ifThen(RegistroValido, ' ', '?')) +
      lin. 140 => LFill(CCF, IfThen(ER_PAF_ECF='0202',9,6)) +
      lin. 141 => LFill(COO, IfThen(ER_PAF_ECF='0202',9,6)) +
      lin. adicionadas => LFill(PERC_DESC, 5, 2) +
                          RFill(CPF_PAS, 11) +
                          RFill(TEL_PAS, 14) +
     
    ACBrPAF_R_Class;
      WriteRegistroR02
      lin. 397 =>  LFill(COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      WriteRegistroR04
      lin. 476 =>  LFill(NUM_CONT, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      lin. 477 =>  LFill(COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      WriteRegistroR05
      lin. 526 =>  LFill(RegR04.COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      lin. 527 =>  LFill( IfThen(NUM_CONT=-1, RegR04.NUM_CONT, NUM_CONT), IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      WriteRegistroR06
      lin. 579 =>  LFill(COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      WriteRegistroR07
      lin. 660 =>  LFill(COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      lin. 661 =>  LFill(CCF, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      lin. 676 =>  LFill(COO, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
      lin. 677 =>  LFill(CCF, IfThen(RegR01.ER_PAF_ECF='0202',9,6)) +
  6. O que quis dizer, é que este IF, só funcionará para esses modelos em específico...

     

    Porque precisamos da modificação ? A modificação é necessárias apenas para esses modelos ?

     

    Os modelos 700 e Mach são uma evolução da série 600, e provavelmente usam o mesmo Sw.Básico e protocolo de comandos... e por isso, se a mudança é necessária na série 600, muito provável ela também seja para todos ECFs subsequentes

     

    Se vai servir para outras não sei dizer, só sei que do jeito que estava não funcionava para FS600 que tenho aqui, por isso modifiquei e disponibilizei tentando ajudar.

    Ao meu ver deveria aceitar essa modificação e outros posteriormente que tenham esses outros modelos vão ajudando tb.

  7. Tenho receio de acatar a sua modificação como está... pois não funcionará para os modelos mais novos (MACH1..3)

     

    Não estou entendendo coloquei esse IF justamente para funcionar somente para impressora FS600 e FS2100T e para as demais o código ficou como antes.

     

    Eu acho que meu ACBrECFDaruma.pas estava desatualizado, coloquei ele novamente.

    ACBrECFDaruma.pas

  8. Seu fonte tem outras modificações... você poderia comentar sobre elas ?

     

    A mudança em relação estado de verão pode não funcionar com alguns modelos do ECF (Ex: fsMACH1, fsMACH2, fsMACH3,)

     

    Nãos seria melhor fazer:

    if ( fsModeloDaruma >= fs600)

     

    Desculpe a demora, mas minha modificação foi colocando esse IF

     

    if (fsModeloDaruma in [fs600, fs2100T, fs600USB]) then

     

    Fiz de acordo com o manual que tenho  e que se refere a estes modelos.

  9. Felizmente consegui implemetar para provedor EL, segue algumas observações:
     
    - Este provedor requer autenticação contribuiente antes de enviar o lote rps que retornar um HASH
    - Para enviar é necessário esse HASH
    - Depois de enviar tem que FinalizarSessao(HASH)
     
    Para passar os paramentros para autenticar, usei:
    Configuracoes.WebServices.UserWeb  := _UserWeb;
    Configuracoes.WebServices.SenhaWeb := _PassWeb;
     
     
    Esses procedimentos coloquei todos em "TNFSeEnviarLoteRPS.Executar"
     
    Outra coisa é que esse provedor não retorna as notas, somente:
    dataProcessamento
    idNfseCancelada
    idNota
    idRps
    numero
    rpsNumero
    situacao
     
    Segue em anexo os fontes.

    ACBrNFSe.rar

  10. Ítalo,

     

    Existe a unit do provedor EL, mas não tem nada implementado ref. a ela e está difícil ter suporte deles para podermos ajudar nesta implementação.

    Por isso, perguntei se alguém já tinha conseguido.

  11. Aproveitando o tópico de erro, hj tentei consultar um ct-e e estava dando erro. "LIST INDEX OUT OF BOUNDS (1)".

    Uso somente passando a chave

    CTe.WebServices.Consulta.CTeChave := ChaveAcesso;
    CTe.WebServices.Consulta.Executar;
    -----------------------------------------------------------
     

     

    ACBrCTeWebService.pas

    Linha: 2430 estava assim:

                FConfiguracoes.Geral.Save(FCTeChave+'-CTeDFe.xml', FRetCTeDFe, PathWithDelim(FConfiguracoes.Arquivos.GetPathCTe(TACBrCTe( FACBrCTe ).Conhecimentos.Items.CTe.Ide.dhEmi)));
     
    Alterei para:

    Linha: 2428

           if (FConfiguracoes.Arquivos.Salvar) and (FRetCTeDFe <> '') then
            begin
              if FConfiguracoes.Arquivos.EmissaoPathCTe then begin
                if (TACBrCTe( FACBrCTe ).Conhecimentos.Count <= 0) then
                  TACBrCTe( FACBrCTe ).Conhecimentos.LoadFromString(FRetCTeDFe);
                FConfiguracoes.Geral.Save(FCTeChave+'-CTeDFe.xml', FRetCTeDFe, PathWithDelim(FConfiguracoes.Arquivos.GetPathCTe(TACBrCTe( FACBrCTe ).Conhecimentos.Items[0].CTe.Ide.dhEmi)));
              end else
                FConfiguracoes.Geral.Save(FCTeChave+'-CTeDFe.xml', FRetCTeDFe, PathWithDelim(FConfiguracoes.Arquivos.GetPathCTe));
            end;
  12. Como efetuar transação TEF sem Cupom Fiscal?

     

    Essa minha pergunta tem haver pq, estou implementando Venda de Passagem, e como por exemplo uma pessoa compra 3 bilhetes (poltronas) total R$ 100,00 sairá 3 cupons, mas a pessoa paga 50,00 dinheiro e 50 cartão.

     

    Transação TEF, sairá cupom vinculado somente ao último bilhete (cupom) e o total não vai bater.

     

    Por isso queria efetuar a transação TEF antes dos cupons e depois rateava os valores das formas de pagamento entre eles.

     

    Já agradeço a quem me ajudar.

  13. Alguém pode me ajudar, não estou encontrando a resposta no Manual.
    Se houve alteração no campo BAIRRO "Ide.Toma4.EnderToma.xBairro"
    qual seria o "grupoalterado" que devo informar na CCe?
     
    Seria isso?
     
    <descEvento>Carta de Correcao</descEvento>
    <grupoAlterado>EnderToma</grupoAlterado>
    <campoAlterado>xBairro</campoAlterado>
     
    Ou o grupo seria sempre o principal, "Ide" ???
  14. RESOLVIDO !!!

    Fiz uma função para tratar meus valores antes de inserir no obj ACBrSPED e deu certo agora.

    function DoubleCurrency(Value: Double; Decimal: Integer = 2): Currency;

    begin

    Result := StrToCurrDef(FormatFloat('#0.' + StringOfChar('0', Decimal), SimpleRoundTo(Value, Decimal*-1)), 0);

    end;

    Obrigado pela atenção.

  15. Ola EMBarbosa,

    Descartando minhas alterações, com vc não acontece isso usando currency ?

    alíquota 1,65 e o componente gera o TXT com 1,6501

    No meu sistema uso assim:

    ALIQ_PIS := SimpleRoundTo(RS_ItemNotaImp.GetDoubleByName('ALIQPPIS'));

    Math -> SimpleRoundTo() para arredondar para 2 casas decimais.

    Mesmo assim gera o TXT com 1,6501.

  16. Eu acho q estava postando esse tópico no forum DESATIVADO, então estou postando aqui.

    Uso Delphi2007

    Alguém já teve problema com arredondamento nos valores gerados pelo AcbrSPEDPisCofins

    Estou atrasadíssimo na entrega do SPEDPISCOFINS do meu sistema.

    Sempre tive problema qdo usava Currency e só hj percebi que este componente usa Currency, como por exemplo:

    unit ACBrEPCBloco_A;

    TRegistroA170 = class

    private

    fVL_BC_PIS : Currency;

    fALIQ_PIS : Currency;

    fVL_PIS : Currency;

    Por exemplo, meu sistema envia

    alíquota 1,65 e o componente gera 1,6501

    vlrpis 69,97 e o componente gera 69,98

    Estou colocando as minhas mudanças no mantis do ACBr, mas ninguém está dando bola pra isso.

    http://www.djsystem.com.br/acbr/mantis/view.php?id=1156

    O que estou fazendo de errado?

    Ou os moderadores, ainda estão de férias?

    Pq ninguém nem fala nada, nem que fiz certo nem errado.

    ACBrSPEDPisCofins - Alterados.rar

×
×
  • 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...
The popup will be closed in 10 segundos...