Fórum Erro no WebService de Solicitação de Procedimentos #352776
31/01/2008
0
Prezados,
bom dia!
Estou com um problema no envio de solicitações de procedimentos (tanto SADT quanto Internação), através de webservices.
Estou utilizando C# para elaboração do consumidor de webServices, com os mesmos desenvolvidos em Java.
Em meu programa C efetuei a definição de 3 objetos, como abaixo:
Início
Depois vou preenchendo o cabeçalho da maneira abaixo:
Feito isso, inicio o preenchimento do detalhe da solicitação:
Ao término, efetuo o consumo do webService, da maneira abaixo:
Nesse momento recebo o seguinte erro:
Alguém experimentou o mesmo erro?
Todas as sugestões são bem-vindas.
Obrigado! :lol:
bom dia!
Estou com um problema no envio de solicitações de procedimentos (tanto SADT quanto Internação), através de webservices.
Estou utilizando C# para elaboração do consumidor de webServices, com os mesmos desenvolvidos em Java.
Em meu programa C efetuei a definição de 3 objetos, como abaixo:
Início
private tissSolicitacaoProcedimento solicitaSADT; private ws_solicitacaoProcedimento envio; private ws_autorizacaoProcedimento resposta;
Depois vou preenchendo o cabeçalho da maneira abaixo:
this.solicitaSADT = new tissSolicitacaoProcedimento(); this.envio = new ws_solicitacaoProcedimento(); this.envio.cabecalho = new autorizador.cabecalhoTransacao(); this.envio.cabecalho.identificacaoTransacao = new autorizador.cabecalhoTransacaoIdentificacaoTransacao(); this.envio.cabecalho.identificacaoTransacao.tipoTransacao = autorizador.st_tipoTransacao.SOLICITACAO_PROCEDIMENTOS; this.envio.cabecalho.identificacaoTransacao.sequencialTransacao = "0001"; this.envio.cabecalho.identificacaoTransacao.dataRegistroTransacao = new DateTime(2008, 01, 29); this.envio.cabecalho.identificacaoTransacao.horaRegistroTransacao = new DateTime(2008, 01, 29, 12, 00, 00); this.envio.cabecalho.origem = new autorizador.cabecalhoTransacaoOrigem(); this.envio.cabecalho.origem.Item = "123456789012"; this.envio.cabecalho.destino = new autorizador.cabecalhoTransacaoDestino(); this.envio.cabecalho.destino.Item = "000000"; this.envio.cabecalho.versaoPadrao = autorizador.st_versao.Item20102;
Feito isso, inicio o preenchimento do detalhe da solicitação:
this.envio.solicitacaoProcedimento = new ws_solicitacaoProcedimentoSolicitacaoProcedimento();
ct_guiaSolicitacaoSP_SADT guiaAux = new ct_guiaSolicitacaoSP_SADT();
guiaAux.identificacaoGuiaSolicitacaoSADTSP = new ct_cabecalhoSolicitacao();
guiaAux.identificacaoGuiaSolicitacaoSADTSP.registroANS = "000000";
guiaAux.dadosBeneficiario = new ct_beneficiario();
guiaAux.dadosBeneficiario.numeroCarteira = beneficiario;
guiaAux.dadosSolicitante = new ct_solicitante();
guiaAux.dadosSolicitante.contratado = new ct_contratado();
guiaAux.dadosSolicitante.contratado.identificacao = new ct_identificacaoPrestador();
guiaAux.dadosSolicitante.contratado.identificacao.Item = prestador;
guiaAux.dadosSolicitante.contratado.identificacao.ItemElementName = ItemChoiceType.codigoPrestadorNaOperadora;
guiaAux.dadosSolicitante.contratado.nomeContratado = "NOME DO PRESTADOR";
guiaAux.dadosSolicitante.profissional = new ct_identificacaoProfissional();
guiaAux.dadosSolicitante.profissional.conselhoProfissional = new ct_conselhoProfissional();
guiaAux.dadosSolicitante.profissional.conselhoProfissional.siglaConselho = st_conselhoProfissional.CRM;
guiaAux.dadosSolicitante.profissional.conselhoProfissional.numeroConselho = cRM;
guiaAux.dadosSolicitante.profissional.conselhoProfissional.ufConselho = st_UF.SP;
guiaAux.dadosSolicitante.profissional.nomeProfissional = "DR. GEORGE RICHARDSON";
guiaAux.caraterSolicitacao = (caraterSolic.Equals("E") ? st_eletivaEmergencia.E : st_eletivaEmergencia.U);
guiaAux.dataHoraSolicitacao = new DateTime(2008, 01, 30, 14, 00, 00);
guiaAux.Diagnostico = new ct_diagnostico();
guiaAux.Diagnostico.codigoDiagnostico = cID;
guiaAux.Diagnostico.nomeTabela = st_tabelasDiagnostico.CID10;
int qtd = 0;
for (int i = 0; i < procedimentos.Length; i++) {
if (procedimentos[i] == null)
break;
qtd++;
}
guiaAux.procedimentosSolicitados = new ct_procedimentosSolicitadosProcedimentoSolicitado[qtd];
for (int i = 0; i < qtd; i++) {
guiaAux.procedimentosSolicitados[i] = new ct_procedimentosSolicitadosProcedimentoSolicitado();
guiaAux.procedimentosSolicitados[i].procedimento = new ct_tabela();
guiaAux.procedimentosSolicitados[i].procedimento.codigo = procedimentos[i].procedimento.codigo;
guiaAux.procedimentosSolicitados[i].procedimento.descricao = procedimentos[i].procedimento.descricao;
guiaAux.procedimentosSolicitados[i].procedimento.tipoTabela = procedimentos[i].procedimento.tipoTabela;
guiaAux.procedimentosSolicitados[i].quantidadeSolicitada = procedimentos[i].quantidadeSolicitada;
}
this.envio.solicitacaoProcedimento.Items = new object[1];
this.envio.solicitacaoProcedimento.Items[0] = guiaAux;
Ao término, efetuo o consumo do webService, da maneira abaixo:
this.resposta = new ws_autorizacaoProcedimento(); this.resposta = this.solicitaSADT.tissSolicitacaoProcedimento_Operation(this.envio);
Nesse momento recebo o seguinte erro:
O tipo ct_guiaSolicInternacao não era esperado. Use o atributo XmlInclude ou SoapInclude para especificar tipos que não são conhecidos estaticamente.
Alguém experimentou o mesmo erro?
Todas as sugestões são bem-vindas.
Obrigado! :lol:
Grichardson
Curtir tópico
+ 0
Responder
Posts
31/01/2008
Paullsoftware
amigo desculpa, mas acho que o pessoal da moderação vai mover te tópico...
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)