Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa noite!
Estou lendo vários arquivos XMLs de uma pasta e estou com o seguinte problema.
Quando leio mais de um arquivos os valores estão retornando errado segue abaixo script.
//BLOCO 1
tipoGlosa_temp:
LOAD codigoGlosa,
descricaoGlosa,
%Key_dadosProcedimento_675CE3F00CE2AC65 // Key to parent table: mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento
FROM [XML BB\01082015_BB_1.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento/relacaoGlosa/tipoGlosa]);
//FROM [XML BB\*.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento/relacaoGlosa/tipoGlosa]);
dadosProcedimento_temp:
LOAD quantidadeExecutada,
valorProcessado,
NUM(replace([relacaoGlosa/valorGlosa],'.',',')) as valorGlosa_BB,
NUM (replace(valorLiberado,'.',',')) AS valorLiberado,
// valorLiberado,
// [relacaoGlosa/valorGlosa] as valorGlosa,
[procedimento/codigo] as codigo,
[procedimento/tipoTabela] as tipoTabela,
[procedimento/descricao] as descricao,
[procedimento/descricaoGrau] as descricaoGrau,
%Key_dadosGuia_932648AE386CACC8, // Key to parent table: mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia
%Key_dadosProcedimento_675CE3F00CE2AC65 // Key for this table: mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento
FROM [XML BB\01082015_BB_1.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento]);
//FROM [XML BB\*.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia/procedimentos/dadosProcedimento]);
LEFT JOIN
LOAD
codigoGlosa,
descricaoGlosa,
%Key_dadosProcedimento_675CE3F00CE2AC65
Resident tipoGlosa_temp;
DROP Table tipoGlosa_temp;
DADOS:
LOAD numeroGuiaPrestador,
dataRealizacao,
valorProcessadoGuia,
valorLiberadoGuia,
valorGlosaGuia,
[beneficiario/numeroCarteira] as numeroCarteira,
[beneficiario/nomeBeneficiario] as nomeBeneficiario,
%Key_mensagemTISS_AE9B42D256CCB348, // Key to parent table: mensagemTISS
%Key_dadosGuia_932648AE386CACC8 // Key for this table: mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia
FROM [XML BB\01082015_BB_1.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia]);
//FROM [XML BB\*.xml] (XmlSimple, Table is [mensagemTISS/operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/guia/dadosGuia]);
MENSAGEM:
LOAD [xmlns:ansTISS],
[epilogo/hash] as hash,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/valorProcessadoGeral] as valorProcessadoGeral,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/valorLiberadoGeral] as valorLiberadoGeral,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/valorGlosaGeral] as valorGlosaGeral,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/numeroFatura] as numeroFatura,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/valorProcessadoFatura] as valorProcessadoFatura,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/valorLiberadoFatura] as valorLiberadoFatura,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/valorGlosaFatura] as valorGlosaFatura,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/numeroLote] as numeroLote,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/dataEnvioLote] as dataEnvioLote,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/numeroProtocolo] as numeroProtocolo,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/valorProtocolo] as valorProtocolo,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/fatura/dadosFatura/lote/dadosLote/valorGlosaProtocolo] as valorGlosaProtocolo,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/dadosPrestador/nomeContratado] as nomeContratado,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/dadosPrestador/numeroCNES] as numeroCNES,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/dadosPrestador/identificacao/CNPJ] as [identificacao/CNPJ],
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/cabecalhoDemonstrativo/numeroDemonstrativo] as numeroDemonstrativo,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/cabecalhoDemonstrativo/dataEmissao] as dataEmissao,
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/identificacaoFontePagadora/operadoraRegulada/registroANS] as [operadoraRegulada/registroANS],
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/identificacaoFontePagadora/operadoraRegulada/CNPJ] as [operadoraRegulada/CNPJ],
[operadoraParaPrestador/demonstrativosRetorno/demonstrativoAnaliseConta/identificacaoFontePagadora/operadoraRegulada/nomeOperadora] as nomeOperadora,
[cabecalho/versaoPadrao] as versaoPadrao,
[cabecalho/identificacaoSoftwareGerador/nomeAplicativo] as nomeAplicativo,
[cabecalho/identificacaoSoftwareGerador/versaoAplicativo] as versaoAplicativo,
[cabecalho/identificacaoSoftwareGerador/fabricanteAplicativo] as fabricanteAplicativo,
[cabecalho/destino/codigoPrestadorNaOperadora/CNPJ] as [codigoPrestadorNaOperadora/CNPJ],
[cabecalho/origem/registroANS] as [origem/registroANS],
[cabecalho/identificacaoTransacao/tipoTransacao] as tipoTransacao,
[cabecalho/identificacaoTransacao/sequencialTransacao] as sequencialTransacao,
[cabecalho/identificacaoTransacao/dataRegistroTransacao] as dataRegistroTransacao,
[cabecalho/identificacaoTransacao/horaRegistroTransacao] as horaRegistroTransacao,
FileBaseName() AS NOMEARQUIVO,
%Key_mensagemTISS_AE9B42D256CCB348 // Key for this table: mensagemTISS
FROM [XML BB\01082015_BB_1.xml] (XmlSimple, Table is [mensagemTISS]);
// End of [01082015_BB_1.xml] LOAD statements
//FROM [XML BB\*.xml] (XmlSimple, Table is [mensagemTISS]);
// End of [01082015_BB_1.xml] LOAD statements
Carlos, você não pode fazer a leitura de múltiplos arquivos com a utilização de JOIN. Desta forma você não vai ter o resultado desejado.
Você deve fazer a leitura múltipla de um determinado padrão de arquivo e armazenar em uma tabela temporária, depois disso você faz o JOIN em um segundo passo.
Você leu o material que te passei? Lá explica passo a passo como fazer isso
Já conseguiu a resposta? Se sim, escolha uma e marque como "Correta" para fechar o tópico e nos ajudar a manter a comunidade organizada