29 private function createClient() {
30 $opcionesClienteWS = array (
31 'soap_version' => SOAP_1_1,
32 'user_agent' =>
'WSSSoapClient',
34 'cache_wsdl' => self::$MYSOAPOP_WSDL_CACHE,
35 'trace' => self::$MYSOAPOP_TRACE
39 $this->
__clienteOn(self::KEYCLIENTE_REGDEPARTAMENTAL,
false, $opcionesClienteWS);
40 $clienteWS = $this->
__getClient(self::KEYCLIENTE_REGDEPARTAMENTAL);
57 private function doConsultaRD($codigoRegistro, $fechaRegistro, $fieldName, $ns) {
59 $oAux->setCodigoRegistro($codigoRegistro);
60 $oAux->setFechaRegistro($fechaRegistro);
61 $regDepWS = $oAux->toSoap($fieldName, $ns);
65 $mainWS->append($regDepWS);
85 $clienteWS = $this->createClient();
88 $mainWS = $this->doConsultaRD($codigoRegistro, $fechaRegistro,
'codigoRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
91 $miSoapRQ =
new SoapVar($mainWS, SOAP_ENC_OBJECT,null,null,
'consultaHistorico', self::$NAMESPACE_REGDEPARTAMENTAL);
92 $clienteWS->consultaHistorico($miSoapRQ);
95 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
100 $vRetorno = $this->tratarInnerException($clienteWS, $e);
103 $oRetorno = consultaHistoricoResponse::fromSoap($vRetorno);
125 $clienteWS = $this->createClient();
128 $mainWS = $this->doConsultaRD($codigoRegistro, $fechaRegistro,
'codigoRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
129 $mainWS->append(
new SoapVar($devolverDocumentos, XSD_BOOLEAN, null, null,
'devolverDocumentos', self::$NAMESPACE_REGDEPARTAMENTAL));
132 $miSoapRQ =
new SoapVar($mainWS, SOAP_ENC_OBJECT,null,null,
'consultaRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
133 $clienteWS->consultaRegistroDepartamental($miSoapRQ);
136 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
141 $vRetorno = $this->tratarInnerException($clienteWS, $e);
144 $oRetorno = consultaRegistroDepartamentalResponse::fromSoap($vRetorno);
176 $tipoRegistroDepartamental, $codigoAsuntoHabitual, $asunto, $observacionesDepartamentales,
177 $observacionesGenerales, $datosIdentificativos, $destinos, $datosRegistroGeneralSalida,
178 $otraUnidadDeProcedencia, $descripcionOtraUnidadDeProcedencia, $datosRegistroDepartamentalOrigen,
179 $tipoTransporte, $datosExpediente, $documentos)
184 $clienteWS = $this->createClient();
189 $newItem->setCodigoOrganismoUnidadDepartamental($codigoOrganismoUnidadDepartamental);
190 $newItem->setCodigoUnidadDepartamental($codigoUnidadDepartamental);
191 $newItem->setTipoRegistroDepartamental($tipoRegistroDepartamental);
192 if (isset($codigoAsuntoHabitual)) {
193 $newItem->setCodigoAsuntoHabitual($codigoAsuntoHabitual);
195 $newItem->setAsunto($asunto);
196 if (isset($observacionesDepartamentales)) {
197 $newItem->setObservacionesDepartamentales($observacionesDepartamentales);
199 if (isset($observacionesGenerales)) {
200 $newItem->setObservacionesGenerales($observacionesGenerales);
202 $newItem->setDatosIdentificativos($datosIdentificativos);
203 if (isset($destinos)) {
204 $newItem->setDestinos($destinos);
206 if (isset($datosRegistroGeneralSalida)) {
207 $newItem->setDatosRegistroGeneralSalida($datosRegistroGeneralSalida);
209 if (isset($otraUnidadDeProcedencia)) {
210 $newItem->setOtraUnidadDeProcedencia($otraUnidadDeProcedencia);
212 if (isset($descripcionOtraUnidadDeProcedencia)) {
213 $newItem->setDescripcionOtraUnidadDeProcedencia($descripcionOtraUnidadDeProcedencia);
215 if (isset($datosRegistroDepartamentalOrigen)) {
216 $newItem->setDatosRegistroDepartamentalOrigen($datosRegistroDepartamentalOrigen);
218 if (isset($tipoTransporte)) {
219 $newItem->setTipoTransporte($tipoTransporte);
221 if (isset($datosExpediente)) {
222 $newItem->setDatosExpediente($datosExpediente);
224 if (isset($documentos)) {
225 $newItem->setDocumentos($documentos);
229 $miSoapRQ = $newItem->toSoap(
'creacionRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
230 $clienteWS->creacionRegistroDepartamental($miSoapRQ);
233 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
238 $vRetorno = $this->tratarInnerException($clienteWS, $e);
241 $oRetorno = creacionRegistroDepartamentalResponse::fromSoap($vRetorno);
254 private function tratarInnerException($clienteWS, $e)
257 $mensaje = $e->getMessage();
258 $mensaje = trim(strtolower($mensaje));
261 case 'looks like we got no xml document' :
263 $response = $clienteWS->__getLastResponse();
269 $this->tratarExcepcionEstandar($e, $clienteWS);
tratarMTOMEstandar($response, $itemToReturn=null)
creacionRegistroDepartamental($codigoOrganismoUnidadDepartamental, $codigoUnidadDepartamental, $tipoRegistroDepartamental, $codigoAsuntoHabitual, $asunto, $observacionesDepartamentales, $observacionesGenerales, $datosIdentificativos, $destinos, $datosRegistroGeneralSalida, $otraUnidadDeProcedencia, $descripcionOtraUnidadDeProcedencia, $datosRegistroDepartamentalOrigen, $tipoTransporte, $datosExpediente, $documentos)
consultaHistorico($codigoRegistro, $fechaRegistro)
__clienteOn($tipo, $trazabilidadPai=true, $opcionesClienteWS=null)
consultaRegistroDepartamental($codigoRegistro, $fechaRegistro, $devolverDocumentos)