Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 2635 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Estou tento insistentemente um retorno de "Arquivo ZIP Inválido". No entanto utilizo o Delphi 7 e adaptei o método ZipFile usando o ZipMaster para executar o processo conforme abaixo:

  function ZipFile(const DadosXML: AnsiString; const NomeArquivo: String): AnsiString;
  var
    Z     : TZipMaster;
    SSIn  : TStringList;
    sFile : string;
    ssOut : TFileStream;

    function EncodeBase64(Arquivo: TFileStream): String;
    Var
    Encoder64 : TIDEncoderMime;
    lstFile: TStringList;
    Begin
      try
        try
          Encoder64 := TIDEncoderMime.Create (Nil);
          lstFile := TStringList.Create;
          lstFile.LoadFromStream(Arquivo);
          Result := Encoder64.Encode(lstFile.Text);
        finally
          Encoder64.Free;
          lstFile.Free;
        end;
      except on E: Exception do
        //Nada
      end;
    end;
  begin
     try
        Z := TZipMaster.Create(nil);
        SSIn  := TStringList.Create;
        sFile := ApplicationPath + NomeArquivo;
        SSIn.Text := DadosXML;
        SSIn.SaveToFile(sFile);

        //Ver se Precisa
        Z.ZipFileName := Copy(sFile,1,Pos('.',sFile)-1) + '.zip';
        Z.FSpecArgs.Clear;
        Z.FSpecArgs.Add(sFile);
        Z.Add;

        ssOut := TFileStream.Create(Copy(sFile,1,Pos('.',sFile)-1) + '.zip',fmOpenRead);
        Result := EncodeBase64(ssOut);
     finally
        Z.Free;
        SSIn.Free;
     end;
  end;

Alguém teve o mesmo problema com este método utilizando o Delphi 7?

Postado

Sim estou sim. O ZIPFile é o método que está em: unit ACBrBlocoX_WebServices

O trecho que recebe o resultado de ZipFile fica no GetXMLZipado conforme segue abaixo:

    if FXML <> '' then
    begin
      AZip := ZipFile(FXML, FPBodyElement+'.xml');
      if AZip = '' then
        raise Exception.Create('O seu compilador não tem suporte nativo a ZipFile.'+sLineBreak+
                               'Informe o XML já Zipado + Base64 em "XMLZipado"');

      FXMLZipado := AZip; //EncodeBase64(AZip);
    end;

Alguém conseguiu fazer funcionar a transmissão do arquivo no Delphi 7 com XML zipado? Se conseguiu enviar sem erros de XML inválido, me dá uma luz por favor!

 

  • Moderadores
Postado
1 hora atrás, André Augusto dos Santos disse:

Sim estou sim. O ZIPFile é o método que está em: unit ACBrBlocoX_WebServices

O trecho que recebe o resultado de ZipFile fica no GetXMLZipado conforme segue abaixo:

    if FXML <> '' then
    begin
      AZip := ZipFile(FXML, FPBodyElement+'.xml');
      if AZip = '' then
        raise Exception.Create('O seu compilador não tem suporte nativo a ZipFile.'+sLineBreak+
                               'Informe o XML já Zipado + Base64 em "XMLZipado"');

      FXMLZipado := AZip; //EncodeBase64(AZip);
    end;

Alguém conseguiu fazer funcionar a transmissão do arquivo no Delphi 7 com XML zipado? Se conseguiu enviar sem erros de XML inválido, me dá uma luz por favor!

 

Você faz parte do projeto piloto de testes no estado de SC?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Na verdade estou implementando alterações para o er_paf_ecf 02.05 para homologação.

Me deparei com o bloco X e estou implementando utilizando os web services e endereços repassados para realizar testes e desenvolvimento. Pelo menos a geração do arquivo e tentativa de receber retorno positivo do webservice... desconsiderando a validação do paf_ecf e o certificado com cnpj diferente do estabelecimento.

Quanto ao dados corrigi todos os campos e parou de apontar erros na validação do Xml no site. mas diz que meu Aqruivo ZIP compactado é inválido.

  • Moderadores
Postado
1 minuto atrás, André Augusto dos Santos disse:

Na verdade estou implementando alterações para o er_paf_ecf 02.05 para homologação.

Me deparei com o bloco X e estou implementando utilizando os web services e endereços repassados para realizar testes e desenvolvimento. Pelo menos a geração do arquivo e tentativa de receber retorno positivo do webservice... desconsiderando a validação do paf_ecf e o certificado com cnpj diferente do estabelecimento.

Assim tem um projeto piloto que as empresas puderam participar para envio dos arquivos.. para os demais ainda não !

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Moderadores
Postado
5 minutos atrás, André Augusto dos Santos disse:

Isso quer dizer que talvez não seja obrigatório para fins de homologação na até a Data de Hoje, de certa forma, a implementação completa de envio e apenas do XML?

Vou conversar com a homologadora sobre esse projeto piloto e o envio.

Exato. tu precisa gerar e assinar mas enviar não está disponível nada.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • 1 mês depois ...
  • 2 meses depois ...
  • Moderadores
Postado
30 minutos atrás, Gean Tonet disse:

Boa tarde,

Estou com o mesmo problema, inclusive utilizando a função adaptada para o zipmaster do André. Alguma solução?

Viram que foi subido alterações nos componentes para tratar arquivos zip certo?

olhem também que no projeto do monitor tem uma parte do bloco x e tem mais um projeto na pasta somente do bloco. x

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

  • Este tópico foi criado há 2635 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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