Buenas, dentro de un proyecto que maneja varias zonas tenemos el siguiente problema:
Tenemos dos zonas (A y B para simplificar), y en una operación de la zona A se debe generar una url con el metodo get_url del vinculador. Al estar en una zona, este método activa la propagación de la misma (parámetro tz en la URL). Pero la operación destino pertenece a la zona B. Esto hace que al momento de usar el link, no funcione como debe.
Revisando la implementacion del get_url del vinculador, en el archivo php/nucleo/lib/toba_vinculador.php, en la linea 74 pregunta si no esta seteada la opción de la zona, la setea con True.
Cosas que se probaron:
Al momento de generar la url, se seteo el valor ‘zona’ a false en el array $opciones que recibe el get_url, y esto no funciono.
Copiamos la url generada con get_url, y borramos el parámetro tz. El link funcionó bien.
Cambiamos el valor asignado en la linea 74 de true a false, y al menos en las pruebas que hicimos funciono ok.
probamos setear el parametro apex_modo_propagacion_zona a false en los conf e ini de la operación de la zona A, para ver si era consumida a bajo nivel cuando el vinculador genere la url, pero no funciono.
las zonas siempre se pensaron como compartimentos donde los datos se propagaban de manera automatica… pero no recuerdo que se haya probado pasarlos de una zona a otra, con lo cual si funciona es un extra. Igualmente, en que version de Toba estas? te consulto porque no me coinciden los nros de linea que marcas.
* Al momento de generar la url, se seteo el valor 'zona' a false en el array $opciones que recibe el get_url, y esto no funciono.
Cambiamos el valor asignado en la linea 74 de true a false, y al menos en las pruebas que hicimos funciono ok.
Aca tenes una contradiccion, en ambos casos el valor asignado tiene false pero en uno te funciona y en el otro no, no es raro?.
* Copiamos la url generada con get_url, y borramos el parámetro tz. El link funcionó bien.
Si no esta el indicador de propagacion de la zona en la URL, lo que pasa es que se corta la propagacion (ya sea por URL o memoria).
Asi que deberias estar fuera de la zona de pasarte esto, lo que no quiere decir que no vaya a la operacion solicitada.
* probamos setear el parametro apex_modo_propagacion_zona a false en los conf e ini de la operación de la zona A, para ver si era consumida a bajo nivel cuando el vinculador genere la url, pero no funciono.
Ese parametro se maneja de manera interna en la zona, lo que marca es si la propagacion se hace via URL o via sesion.
Hasta donde veo no pareciera haber algo explicito que prohiba la comunicacion de una zona con otra, estimo igualmente que ambas zonas tienen una subclase con un metodo que carga la info de la misma, fijense si dicho metodo no esta trayendo problemas con algunas SQL’s que no devuelvan el mismo resultado.
Si sigue sin funcionarte, vemos con mayor profundidad el ejemplo a ver si lo podemos trazear.