Refrescar interfaces en el mismo punto

Buenas tardes,

Como puedo refrescar las interfaces, sin necesidad de tener que salir y volver a seleccionar un registro ?

El caso es que cuando doy de Alta un registro en una interfaz (formulario), con estos datos se alimenta otra interfaz (ML) del mismo CI creando nuevos registros, pero para ver el cambio me toca salir y volver a ingresar y visualizar los datos en la segunda interfaz (ML).

MIl gracias

Hola Jhon,

con el alta del formulario se viaja al servidor, por lo tanto al volver la pantalla ya posee los nuevos datos para el ML, que informacion le estas suministrando al mismo en su metodo de configuracion?.

Saludos

Richar, es correcto si miro por debajo la base de datos los almacena bien en postgres, pero NO los muestra en la interfaz de EDICION, hasta tanto no salga a SELECCION y vuelva a dicha interfaz, de esta forma si los carga, lo que queremos es que se carguen en la misma EDICION; en el ML tengo:

//esta función lo hace bíen al dar alta sube y guarda los datos del encabezado y al final se crea por código lo detalles en el ML
function evt__form_comprobantes__alta($registro) {
$this->get_relacion()->tabla(‘comprobantes’)->nueva_fila($registro);
$this->controlador()->get_relacion()->sincronizar();
ci_edicion::set_detalle_contable($registro);
}

//el ML muestra la carga, siempre y cuando se regrese a SELECCIÓN, despues del Alta.
function conf__form_detalle() {
return $this->get_relacion()->tabla(‘credito_detalle’)->get_filas(null, true);
}

MIl gracias si me puedes colaborar

Hola Jhon,

la verdad mucho no entiendo que es lo que estas haciendo, me pasaste el codigo del alta del comprobante que trabaja sobre una tabla y del conf del formulario ML que trabaja sobre otra, en que momento se agregan registros a la tabla ‘credito_detalle’?

Me es dificil entender a que nivel de la operacion se encuentra la relacion, ya que accedes a la misma de manera local para agregar los datos, sin embargo luego llamas al Ci controlador para sincronizar y finalmente haces una llamada estatica a un Ci de edicion, que estimo no es el actual tampoco. Aclarame como esta armada la cosa, porque se esta volviendo engorroso determinar en que archivo esta este codigo que me pasaste.

Saludos

Hola, podrian decirme si este problema se soluciono, yo tengo el mismo inconveniente, en un formulario ML cargo registros a los cuales debo verificar que no se repitan entre ellos antes de guardar, si se repiten debo ignorar uno de ellos sin guardar, hasta ahí espectacular, el problema es que despues de guardar en la pantalla se siguen mostrando todos los registros incluidos los repetidos , si le hago F5 refresca la pantalla y se visualiza correctamente.
Yo quisiera justamente refrescar desde programa sin tener que avisarle al usuario que debe presionar la tecla F5 para actualizar.
Se entiende ???
Muchas gracias

Hola Olga,

si quitaste el registro duplicado antes de guardar, no deberia estar mostrandose… a menos que el componente este recibiendo sus datos de una variable de clase y no desde la bd.

El refresco con F5 puede ser un sintoma de otra cosa, por ahi los datos se recuperan con posterioridad a la configuracion del componente y se requiere otro pedido de pagina para que se envien los datos correctos. En ese caso tendras que ver como recuperar los datos de otra manera o en una temporalidad anterior. Por otro lado, en cada pedido de pagina cambia la url por lo que aun si tuvieras un proxy-cache entre medio, deberia ir a pedir el contenido nuevamente.

Otra opcion podria ser que se produjera un error al interpretar al respuesta del servidor y por tanto no se refresque la interface, en dicho caso normalmente aparece una ventana avisando el inconveniente o la pantalla queda en blanco. Pudiste ver via alguna herramienta del browser si hay un error en JS?, ahi mismo en la pestaña de Red suele decirte tambien que cosas levanta desde cache y cuales efectivamente fue a pedir al servidor, podria ser una ayuda para diagnosticar algo medio extraño.

Saludos

Hola, les comento que finalmente lo solucione asi :

           $url = toba::vinculador()->get_url();
            echo "<META HTTP-EQUIV='refresh' CONTENT='0 ; URL=$url'>";

Despues del proceso en el que necesito que refresque. A esto lo encontre en este mismo foro buscando “refresh”
Muchas gracias

Hola Olga,

lo extraño de todo esto, es que toba envia el header para que la pagina no se cachee, por lo cual no deberia ser necesario que tengas que recurrir a ese echo.
Esto solo te va a “solucionar” el sintoma pero habria que ver por que razon le esta llegando al browser que debe cachear dicha pagina, o por que decide ignorarlo.

Saludos