FlávioDelesposte
-
Total de ítens
6 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por FlávioDelesposte
-
-
Boa tarde, amigos.
Estou tendo problema com a consulta cadastro. Alguém pode ajudar? Os detalhes seguem abaixo.
Utilizo Delphi 2007, ACBr e Schemas atualizados dia 10/08/2015.
Obrigado.
Erro: Could not find a part of the path '\\s3a699\S3A71018P0_DotNet\dotnet\Internet\ConsultaCadastroService\App_Data\consCad_v2.00.xsd'.
Retorno do WebService:
- <retConsCad versao="2.00" xmlns="http://www.portalfiscal.inf.br/nfe"> - <infCons> <cStat>99</cStat> <xMotivo>Could not find a part of the path '\\s3a699\S3A71018P0_DotNet\dotnet\Internet\ConsultaCadastroService\App_Data\consCad_v2.00.xsd'.</xMotivo> </infCons> </retConsCad>
-
-
Estou tentando realizar o download de uma NF-e da Sefaz, tudo funciona perfeitamente até executar a função ACBrUtil.ParseText, mais precisamente na chamada a função Utf8Decode que retorna vazio.
A função Utf8Decode faz chamada a função Utf8ToUnicode que devolve -1. Ou seja, ocorreu algum erro na conversão. Debugando... consegui encontrar que o problema ocorre quando a função Utf8ToUnicode passa pelo caractere BELL. Já tentei criar uma outra função para remover o BELL antes de chamar a função Utf8Decode, mas não deu certo.
Como “alternativa” fui na função ACBrUtil.ParseText e realizei algumas mudanças conforme abaixo, está resolvendo por enquanto, mas creio que não é uma boa opção, rs.
Segue em anexo o XML da NF-e que consegui após realizar a modificação na função ACBrUtil.ParseText.
Estou usando Delphi 2007.
Agradeço a quem puder ajudar.
function ParseText( Texto : AnsiString; Decode : Boolean = True; IsUTF8: Boolean = True ) : AnsiString; var {Adicionado para resolver o problema de conversão} TextoTemp: AnsiString; begin if Decode then begin Texto := AnsiString(StringReplace(String(Texto), '&', '&', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '<', '<', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '>', '>', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '"', '"', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), ''', #39, [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'á', 'á', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Á', 'Á', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'â' , 'â', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Â' , 'Â', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ã', 'ã', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ã', 'Ã', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'à', 'à', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'À', 'À', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'é', 'é', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'É', 'É', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ê' , 'ê', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ê' , 'Ê', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'í', 'í', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Í', 'Í', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ó', 'ó', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ó', 'Ó', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'õ', 'õ', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Õ', 'Õ', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ô' , 'ô', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ô' , 'Ô', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ú', 'ú', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ú', 'Ú', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ü' , 'ü', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ü' , 'Ü', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'ç', 'ç', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), 'Ç', 'Ç', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), ''', '''', [rfReplaceAll])); {Adicionado para resolver o problema de conversão} TextoTemp := Texto; if IsUTF8 then begin {$IFDEF DELPHI12_UP} // delphi 2009 em diante Texto := AnsiString(UTF8ToString(Texto)); {$ELSE} Texto := Utf8ToAnsi(Texto); {$ENDIF} end; end else begin Texto := AnsiString(StringReplace(String(Texto), '&', '&', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '<', '<', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '>', '>', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), '"', '"', [rfReplaceAll])); Texto := AnsiString(StringReplace(String(Texto), #39, ''', [rfReplaceAll])); if IsUTF8 then begin {$IFDEF DELPHI12_UP} // delphi 2009 em diante Texto := AnsiString(UTF8ToString(Texto)); {$ELSE} Texto := AnsiString(UTF8Decode(Texto)); {$ENDIF} end ; end; {Adicionado para resolver o problema de conversão} if Texto = '' then begin Result := TextoTemp; end else begin Result := Texto; end; end;
-
Tive o mesmo problema: Pacote "synapse.dpk" não Encontrado
Resolvi removendo a contra-barra conforme abaixo.
Errado - D:\Projetos\Componentes\ACBr\
Correto - D:\Projetos\Componentes\ACBr -
Somando com o que o Valério Bezerra disse, o número de Drawback pode ter validade de até 03 anos (conforme prorrogação) e a função válida com apenas 01.
Lembrando que o número não muda quando prorrogado.
Links utilizados para consulta:
Consultacadastro Versão 3.10
em ACBrNFe
Postado
Vou aguardar e tentar novamente.
Obrigado, Italo.