30 private function createClient() {
31 $opcionesClienteWS = array (
32 'soap_version' => SOAP_1_1,
33 'user_agent' =>
'WSSSoapClient',
35 'cache_wsdl' => self::$MYSOAPOP_WSDL_CACHE,
36 'trace' => self::$MYSOAPOP_TRACE
40 $this->
__clienteOn(self::KEYCLIENTE_REGDEPARTAMENTAL,
false, $opcionesClienteWS);
41 $clienteWS = $this->
__getClient(self::KEYCLIENTE_REGDEPARTAMENTAL);
58 private function doConsultaRD($codigoRegistro, $fechaRegistro, $fieldName, $ns) {
60 $oAux->setCodigoRegistro($codigoRegistro);
61 $oAux->setFechaRegistro($fechaRegistro);
62 $regDepWS = $oAux->toSoap($fieldName, $ns);
66 $mainWS->append($regDepWS);
86 $clienteWS = $this->createClient();
89 $mainWS = $this->doConsultaRD($codigoRegistro, $fechaRegistro,
'codigoRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
92 $miSoapRQ =
new SoapVar($mainWS, SOAP_ENC_OBJECT,null,null,
'consultaHistorico', self::$NAMESPACE_REGDEPARTAMENTAL);
93 $respuesta = $clienteWS->consultaHistorico($miSoapRQ);
96 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
101 $vRetorno = $this->tratarInnerException($clienteWS, $e);
104 $oRetorno = consultaHistoricoResponse::fromSoap($vRetorno);
126 $clienteWS = $this->createClient();
129 $mainWS = $this->doConsultaRD($codigoRegistro, $fechaRegistro,
'codigoRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
130 $mainWS->append(
new SoapVar($devolverDocumentos, XSD_BOOLEAN, null, null,
'devolverDocumentos', self::$NAMESPACE_REGDEPARTAMENTAL));
133 $miSoapRQ =
new SoapVar($mainWS, SOAP_ENC_OBJECT,null,null,
'consultaRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
134 $respuesta = $clienteWS->consultaRegistroDepartamental($miSoapRQ);
137 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
142 $vRetorno = $this->tratarInnerException($clienteWS, $e);
145 $oRetorno = consultaRegistroDepartamentalResponse::fromSoap($vRetorno);
177 $tipoRegistroDepartamental, $codigoAsuntoHabitual, $asunto, $observacionesDepartamentales,
178 $observacionesGenerales, $datosIdentificativos, $destinos, $datosRegistroGeneralSalida,
179 $otraUnidadDeProcedencia, $descripcionOtraUnidadDeProcedencia, $datosRegistroDepartamentalOrigen,
180 $tipoTransporte, $datosExpediente, $documentos)
185 $clienteWS = $this->createClient();
190 $newItem->setCodigoOrganismoUnidadDepartamental($codigoOrganismoUnidadDepartamental);
191 $newItem->setCodigoUnidadDepartamental($codigoUnidadDepartamental);
192 $newItem->setTipoRegistroDepartamental($tipoRegistroDepartamental);
193 if (isset($codigoAsuntoHabitual)) {
194 $newItem->setCodigoAsuntoHabitual($codigoAsuntoHabitual);
196 $newItem->setAsunto($asunto);
197 if (isset($observacionesDepartamentales)) {
198 $newItem->setObservacionesDepartamentales($observacionesDepartamentales);
200 if (isset($observacionesGenerales)) {
201 $newItem->setObservacionesGenerales($observacionesGenerales);
203 $newItem->setDatosIdentificativos($datosIdentificativos);
204 if (isset($destinos)) {
205 $newItem->setDestinos($destinos);
207 if (isset($datosRegistroGeneralSalida)) {
208 $newItem->setDatosRegistroGeneralSalida($datosRegistroGeneralSalida);
210 if (isset($otraUnidadDeProcedencia)) {
211 $newItem->setOtraUnidadDeProcedencia($otraUnidadDeProcedencia);
213 if (isset($descripcionOtraUnidadDeProcedencia)) {
214 $newItem->setDescripcionOtraUnidadDeProcedencia($descripcionOtraUnidadDeProcedencia);
216 if (isset($datosRegistroDepartamentalOrigen)) {
217 $newItem->setDatosRegistroDepartamentalOrigen($datosRegistroDepartamentalOrigen);
219 if (isset($tipoTransporte)) {
220 $newItem->setTipoTransporte($tipoTransporte);
222 if (isset($datosExpediente)) {
223 $newItem->setDatosExpediente($datosExpediente);
225 if (isset($documentos)) {
226 $newItem->setDocumentos($documentos);
230 $miSoapRQ = $newItem->toSoap(
'creacionRegistroDepartamental', self::$NAMESPACE_REGDEPARTAMENTAL);
231 $respuesta = $clienteWS->creacionRegistroDepartamental($miSoapRQ);
234 throw new Exception(
'Formato de las respuestas modificado. Debe modificarse el tratamiento de las respuestas del WS (MTOM)');
239 $vRetorno = $this->tratarInnerException($clienteWS, $e);
242 $oRetorno = creacionRegistroDepartamentalResponse::fromSoap($vRetorno);
255 private function tratarInnerException($clienteWS, $e)
258 $mensaje = $e->getMessage();
259 $mensaje = trim(strtolower($mensaje));
262 case 'looks like we got no xml document' :
264 $response = $clienteWS->__getLastResponse();
270 $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)