Ir para conteúdo
  • Cadastre-se

wilson.duvidas

Membros
  • Total de ítens

    86
  • Registro em

  • Última visita

Posts postados por wilson.duvidas

  1. Resolvi assim, alterando em \fontes\ACBrDFe\ACBrNFSe\ACBrNFSeNotasFiscais.pas

    function TNotasFiscais.LoadFromString(AXMLString: String;
      AGerarNFSe: Boolean = True): Boolean;
    var
      VersaoNFSe: TVersaoNFSe;
      Ok: Boolean;
      AXML: AnsiString;
      N: integer;
      vTipo: Integer;

      function PosNfseCancelamento: Integer;
      begin
        Result := Pos('</NfseCancelamento>', AXMLString);
      end;

      function PosNFSe: Integer;
      begin
        Result := Pos('</Nfse>', AXMLString);
      end;

      function PosRPS: Integer;
      begin
        if VersaoNFSe < ve200 then
          Result := Pos('</Rps>', AXMLString)
        else
        begin
          // Se a versão do XML do RPS for 2.00 ou posterior existem 2 TAGs <Rps>,
          // neste caso devemos buscar a posição da segunda.
          Result := Pos('</Rps>', AXMLString);
          Result := PosEx('</Rps>', AXMLString, Result + 1);
        end;
      end;

    begin
      VersaoNFSe := StrToVersaoNFSe(Ok, TACBrNFSe(FACBrNFSe).Configuracoes.Geral.ConfigXML.VersaoXML);

      AXMLString := StringReplace(StringReplace( AXMLString, '&lt;', '<', [rfReplaceAll]), '&gt;', '>', [rfReplaceAll]);
      AXMLString := RetirarPrefixos(AXMLString);
    (*
      // Converte de UTF8 para a String nativa da IDE //
      AXMLString := RetirarPrefixos(DecodeToString(AXMLString, True));
    *)
      Result := False;
      
      N := PosNfseCancelamento;
      if N > 0 then
        vtipo := 0;

      if N = 0 then
      begin

        N := PosNFSe;
        if N > 0 then
          vTipo := 1;
      end;

      if N > 0 then
      begin
        // Ler os XMLs das NFS-e
        while N > 0 do
        begin
          if vTipo = 0 then
          begin
            AXML := copy(AXMLString, 1, N + 18);
            AXMLString := Trim(copy(AXMLString, N + 19, length(AXMLString)));
          end;

          if vTipo = 1 then
          begin

            AXML := copy(AXMLString, 1, N + 6);
            AXMLString := Trim(copy(AXMLString, N + 7, length(AXMLString)));
          end;

          with Self.Add do
          begin
            LerXML(AXML);

            if AGerarNFSe then // Recalcula o XML
              GerarXML;
          end;

          if vTipo = 0 then
            N := PosNfseCancelamento;

          if vTipo = 1 then
            N := PosNFSe;
        end;
      end
      else begin
        N := PosRPS;
        // Ler os XMLs dos RPS
        while N > 0 do
        begin
          AXML := copy(AXMLString, 1, N + 5);
          AXMLString := Trim(copy(AXMLString, N + 6, length(AXMLString)));
          with Self.Add do
          begin
            LerXML(AXML);

            if AGerarNFSe then // Recalcula o XML
              GerarXML;
          end;

          N := PosRPS;
        end;
      end;
    end;

  2. Para que o danfe da nfs-e saia com a tarja de cancelamento, você deve alterar a propriedade do componente danfe:

    ACBrNFSe1.NotasFiscais.Clear;
    ACBrNFSe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName);
    if ACBrNFSe1.NotasFiscais.Items[0].NFSe.NfseCancelamento.DataHora <> 0 then
      ACBrNFSe1.DANFSE.NFSeCancelada := True;
    ACBrNFSe1.NotasFiscais.Imprimir;

    Contudo, a propriedade DataHora está vindo zerada após o carregamento do xml.

  3. Resolvi desinstalando tudo e fazendo uma nova instalação.

    Obrigado Juliomar, pela atenção.

    Resolvi desinstalando tudo e fazendo uma nova instalação.

    Obrigado Juliomar, pela atenção.

  4. Agora, Juliomar Marchetti disse:

    Sim recompilar os pacotes!

    Sim. Mas é justamente na hora de recompilar os pacotes que está dando o erro.

    Agora, Juliomar Marchetti disse:

    Sim recompilar os pacotes!

    Sim. Mas é justamente na hora de recompilar os pacotes que está dando o erro.

  5. Bom dia Italo.

    Atualizei os fontes e começou a dar o erro no ACBrNFSeWebServices.pas: Method 'Clear' not found in base class.

    Além de atualizar tenho que fazer alguma outra coisa? 

  6. 1 hora atrás, Alexsandro Lopes disse:

    o problema foi solucionado ????

    ja tentaram executar como administrador....!!!

    ate agora nao tive problemas no wim10 nao sei no oito vou testar aqui e mando resposta...ok 

     

    Boa tarde Alexsandro.

    No meu caso, já tentamos executar como administrador e alteramos o modo de compatibilidade mas nada deu certo ainda.

  7. Em 23/12/2015 at 10:32, Dercide Alvarez disse:

    EasySoft,

    Ontem ao baixar as atualizações e compilar o problema voltou.

    Verifique se o Libary Path do Fortes Report esta na pasta correta.

    Eu acabei mudando da Binary\LibD7 para fortesreport-ce-master\Source e ai deu certo.

    É alguma coisa neste sentido, tive de apagar tudo e compilar umas 3x, ai funcionou.

    Dercide.

    Eu já estava atualizado com o Trunk 2.

    Atualizei o ACBr hoje (18/12/2015) e na compilação apresentou o erro citado.

    Para mim, resolveu fazendo a alteração do Library Path, conforme acima.

  8. Em 15/12/2015 at 18:18, Fox_Desenvolvimento disse:

    Estou com uma dúvida quanto a diferença do ICMS. Até agora vi somente exemplos com alíquotas "cheias", por exemplo, em uma venda do PR para BA:

    Alíquota Interestadual PR - BA = 7%

    Alíquota Interna BA = 17&

    Diferença = 10%

    E se o produto sofre alguma redução de alíquota interna, o cálculo continua o mesmo?

    Por exemplo em SP o ICMS é 18%, mas alguns produtos são vendidos a 12%, ou a 7%... Nestes casos vale a tabela interestadual para cálculo da diferença ou será necessário algum ajuste?

    De acordo com o que li no Convênio ICMS 153/15 (https://www.confaz.fazenda.gov.br/legislacao/convenios/convenio-icms/2015/convenio-icms-153-15), os benefícios de redução de base de cálculo e isenção devem ser considerados no cálculo.

    É uma confusão total!

  9. 4 horas atrás, dannymazzo disse:

    Wilson, bom dia.

    O correto então seria conforme abaixo ?

    vBCUFDest          1.000,00 
    pFCPUFDest                2%
    pICMSUFDest            19%
    pICMSInter                  12%
    pICMSInterPart          40%
    vFCPUFDest            20,00 
    vICMSUFDest          48,00 
    vICMSUFRemet       42,00 

     

    Só não sei sei na tag vICMSUFDest tem que adicionar o valor de vFCPUFDest.

    Lembrando que ainda não foi liberada nenhuma norma técnica nova e, portanto, o que  está valendo é a maneira do cálculo da NT 2015/003 v1.40.

     

     

  10. Eu acho que deveria ser assim:

    pICMSUFDest = 19 (Alíquota adotada nas operações internas na UF de destino para o produto / mercadoria)

    pICMSInter = 12 (Alíquota interestadual das UF envolvidas: - 4% alíquota interestadual para produtos importados; 7% para os Estados de origem do Sul e Sudeste (exceto ES), destinado para os Estados do Norte, Nordeste, Centro-Oeste e Espírito Santo; 12% para os demais casos)

    Os demais campos ok.

×
×
  • 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.