Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Boa tarde.

O que eu estou precisando fazer é teoricamente muito simples, mas não está funcionando. Eu preciso validar um XML do eSocial utilizando os arquivos .XSD  que estão na pasta "...\Exemplos\ACBrDFe\Schemas\eSocial\v2_04_01". Fiz testes usando o ExemploEsocial com diferentes valores para o parâmetro SSLXmlSignLib, mas nenhum funcionou.

Criei uma nova TabSheet no pgcEventos e nela um botão para validar o XML. Anexei uma imagem de como ficou a tela. No evento onClick do botão, codifique desta forma a chamada da função Validar:

procedure TFExemploEsocial.Button1Click(Sender: TObject);
var
  erros: String;
begin
  Memo2.Lines.Clear;
  try
    if not ACBreSocial1.SSL.Validar( Memo1.Lines.Text, EditXSD.Text, erros ) then
      Memo2.Lines.Add( erros );
  except on E: Exception do
           Memo2.Lines.Add( E.Message );
  end;
end;

O XML que estou tentando validar é:

<evtTabCargo xmlns="http://www.esocial.gov.br/schema/evt/evtTabCargo/v02_04_01" Id="ID1036136580000002018030705033194714">
  <ideEvento>
    <tpAmb>2</tpAmb>
    <procEmi>1</procEmi>
    <verProc>11.0.0</verProc>
  </ideEvento>
  <ideEmpregador>
    <tpInsc>1</tpInsc>
    <nrInsc>03613658</nrInsc>
  </ideEmpregador>
  <infoCargo>
    <inclusao>
      <ideCargo>
        <codCargo>0001</codCargo>
        <iniValid>2018-03</iniValid>
      </ideCargo>
      <dadosCargo>
        <nmCargo>ASSISTENTE ADMINISTRATIVO</nmCargo>
        <codCBO>444444</codCBO>
      </dadosCargo>
    </inclusao>
  </infoCargo>
</evtTabCargo>

 

O XSD é o "...\Exemplos\ACBrDFe\Schemas\eSocial\v2_04_01\evtTabCargo.xsd" 

Abaixo, os erros que ocorrem de acordo com o parâmetro SSLXmlSignLib:

  - xsXmlSec e xsLibXml2: 1845 - Element '{http://www.esocial.gov.br/schema/evt/evtTabCargo/v02_04_01}evtTabCargo': No matching global declaration available for the validation root.

  - xsMsXml e xsMsXmlCapicom: evtTabCargo.xsd#/schema The 'http://www.esocial.gov.br/servicos/empregador/lote/eventos/envio/v1_1_0' namespace provided differs from the

                                                             schema's  'http://www.esocial.gov.br/schema/evt/evtTabCargo/v02_04_01' targetNamespace

Preciso do apoio de vocês para identificar onde eu estou errando. Que me deem uma orientação de como usar corretamente a função validar.

Antecipadamente, agradeço pela atenção.

ValidacaoXML.jpg

  • Consultores
Postado

Bom dia Luiz,

O seu XML não possui a grupo <eSocial>.

É dentro deste grupo que devemos colocar o grupo <evtTabCargo>.

Faça o que o Daniel sugeriu, use o programa exemplo do eSocial para gerar o XML do respectivo evento e compare com o seu XML.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

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