XML NFe

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
everthon
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 14
Registrado em: Qua, 18 Jan 2012 2:43 pm
att,

Everthon Souza
Em Deus, posso todas as coisas!

Boa tarde pessoal, beleza?

Encontrei alguns tópicos aqui mas nenhum respondeu a minha questão, então resolvi abrir um novo.

Estou realizando a seguinte consulta:

Selecionar tudo

SELECT   
        EXTRACTVALUE( VALUE( numl ) , '/LoteRps/NumeroLote' )     NumeroLote 
FROM INFO_XML, 
      
  TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) )  numl 
  WHERE ID = 1;
O problema é que quando eu trabalho com a linha do xml abaixo, minha query retorna NULL. Acredito que seja algo com o XMLSN.
Se eu faço a mesma query, mas retiro do meu .xml essa linha, tudo funciona perfeitamente.

Alguém já passou por esse problema?

Selecionar tudo

<EnviarLoteRpsEnvio xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd">
Muito obrigado.

Até breve.
everthon
Rank: Estagiário Sênior
Rank: Estagiário Sênior
Mensagens: 14
Registrado em: Qua, 18 Jan 2012 2:43 pm
att,

Everthon Souza
Em Deus, posso todas as coisas!

Pessoal, bom dia.

Resolvi meu problema. Bastou modificar um detalhe na query. Segue:

Selecionar tudo

SELECT   
        EXTRACTVALUE( VALUE( numl ) , '/LoteRps/NumeroLote',','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' )     NumeroLote 
FROM INFO_XML, 
      
  TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) )  numl 
  WHERE ID = 1;
Mas agora tenho outro problema que ainda não consegui resolver.

Minha consulta está retornando o erro ORA-19025: EXTRACTVALUE retorna valor de apenas um nó

Alguém sabe como resolver?

Segue o select atual:

Selecionar tudo

SELECT 
    EXTRACTVALUE( VALUE( ITEMLISTA ) , '/Servico/ItemListaServico','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ITEMLISTASERVICO
  , EXTRACTVALUE( VALUE( CODTRIBMUN ) , '/Servico/CodigoTributacaoMunicipio','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) CODIGOTRIBUTACAOMUNICIPIO
  , EXTRACTVALUE( VALUE( DISCRI ) , '/Servico/Discriminacao','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) DISCRIMINACAO
  , EXTRACTVALUE( VALUE( CODMUNI ) , '/Servico/CodigoMunicipio','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) CODIGOMUNICIPIO
  , EXTRACTVALUE( VALUE( inforps ) , '/Rps/InfRps','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) InfRps

FROM INFO_XML, 
    
    TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps/ListaRps/Rps/InfRps/Servico','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) ) ITEMLISTA
  , TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps/ListaRps/Rps/InfRps/Servico','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) ) CODTRIBMUN 
  , TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps/ListaRps/Rps/InfRps/Servico','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) ) DISCRI 
  , TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps/ListaRps/Rps/InfRps/Servico','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) ) CODMUNI 
  , TABLE( XMLSEQUENCE( EXTRACT ( CONTEUDO, '/EnviarLoteRpsEnvio/LoteRps/ListaRps/Rps','xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd"' ) ) ) inforps 

WHERE ID = 1
;
E o meu xml:

Selecionar tudo

<?xml version="1.0" encoding="UTF-8"?>
<EnviarLoteRpsEnvio xmlns="http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd">
	<LoteRps Id="211437">
		<NumeroLote>211437</NumeroLote>
		<Cnpj>10411602000276</Cnpj>
		<InscricaoMunicipal>4197208</InscricaoMunicipal>
		<QuantidadeRps>1</QuantidadeRps>
		<ListaRps>
			<Rps>
				<InfRps Id="142347">
					<IdentificacaoRps>
						<Numero>107981</Numero>
						<Serie>1</Serie>
						<Tipo>2</Tipo>
					</IdentificacaoRps>
					<DataEmissao>2012-07-05T00:00:00</DataEmissao>
					<NaturezaOperacao>1</NaturezaOperacao>
					<OptanteSimplesNacional>2</OptanteSimplesNacional>
					<IncentivadorCultural>2</IncentivadorCultural>
					<Status>1</Status>
					<Servico>
						<Valores>
							<ValorServicos>562.80</ValorServicos>
							<ValorDeducoes>0.00</ValorDeducoes>
							<ValorPis>0.00</ValorPis>
							<ValorCofins>0.00</ValorCofins>
							<ValorInss>0.00</ValorInss>
							<ValorIr>0.00</ValorIr>
							<ValorCsll>0.00</ValorCsll>
							<IssRetido>2</IssRetido>
							<ValorIss>28.14</ValorIss>
							<ValorIssRetido>0.00</ValorIssRetido>
							<OutrasRetencoes>0.00</OutrasRetencoes>
							<BaseCalculo>562.80000</BaseCalculo>
							<Aliquota>0.0500</Aliquota>
							<ValorLiquidoNfse>562.80000</ValorLiquidoNfse>
							<DescontoIncondicionado>0.00000</DescontoIncondicionado>
							<DescontoCondicionado>0.00000</DescontoCondicionado>
						</Valores>
						<ItemListaServico>0901</ItemListaServico>
						<CodigoTributacaoMunicipio>090101</CodigoTributacaoMunicipio>
						<Discriminacao>Hospede: RAUL SANTOS|UH: 0708|Tipo de UH: STD1Q|Reserva: 12596|Checkin: 03/07/12|CheckOut: 05/07/12|DIARIA 536,00|A FATURAR -562,80|ISS 26,80|</Discriminacao>
						<CodigoMunicipio>2611606</CodigoMunicipio>
					</Servico>
					<Prestador>
						<Cnpj>10411602000276</Cnpj>
						<InscricaoMunicipal>4197208</InscricaoMunicipal>
					</Prestador>
					<Tomador>
						<IdentificacaoTomador>
							<CpfCnpj>
								<Cnpj>09127271000187</Cnpj>
							</CpfCnpj>
						</IdentificacaoTomador>
						<RazaoSocial>E - HTL RESERVAS ONLINE DE HOTEIS LTDA</RazaoSocial>
						<Endereco>
							<Endereco>AV IPIRANGA</Endereco>
							<Numero> 104</Numero>
							<Complemento>ANDAR 04 CONJ 124</Complemento>
							<Bairro>Republica</Bairro>
							<CodigoMunicipio>3550308</CodigoMunicipio>
							<Uf>SP</Uf>
							<Cep>01046010</Cep>
						</Endereco>
						<Contato>
							<Telefone>1131385656</Telefone>
						</Contato>
					</Tomador>
				</InfRps>
			</Rps>
		</ListaRps>
	</LoteRps>
</EnviarLoteRpsEnvio>
Até breve!
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 19 visitantes