[SOLUCIONADO]Interaccion de un Formulario con un Formulario ML - javascript

Estoy teniendo un inconveniente con Calificaciones, tengo dos formularios… un formulario comun y el otro un formulario multilinea, la idea es que el total de calificaciones, aparte de sumar por la columna, reflejar el resultado del mismo en el textbox para guardarlo.
Alguna sugerencia de como hacerlo???..

Envio una imagen adjunta para tener una idea…


A lo mejor te respondo una burrada.
Cuando se produce alguna modificación el el ML, si lo actualizas por JS, evidentemente el this. dentro del código va a estar haciendo referencia al formulario ML, por lo tanto, para referirte al textbox del fotro formulario vas a tener que utilizar DOM de manera tal que, refiriéndote al textbox puedas modificarle el contenido (la propiedad .value) con el obtenido desde el ML.

En caso de que te resulte dificultos obtener el id. del textbox, podrias formatearlo con un layout y, editando el html del mismo, ponerle un “id” o un “name”.
Es la forma en que se me ocurre que se puede encarar, no te garantizo que se pueda hacer así.

Yo hice algo parecido, pero en sentido inverso; a partir de un primer formulario, limitar los datos que se pueden cargar en el ML, pero actualicé mediante php, no java.

Ahora estoy en casa y no tengo los códigos a mano, mañana en el laburo me fijo lo que hice y te tiro alguna aclaración si creo que te va a ayudar.

Espero haberte sido de alguna ayuda.

Un cordial saludo.

Hola Fernando,

una consulta a titulo de chusma nomas, es necesario que el valor se calcule en el cliente?.. digo tambien se podria calcular en el servidor al momento de guardar el registro. De todas maneras, si queres calcularlo en el cliente tendrias que hacer lo siguiente:

  • Primero obtener el valor del ef en cuestion en su columna totalizada. Tene en cuenta que este valor esta formateado, asi que puede llegar a incluir caracteres de moneda, etc.

  • Segundo asignarle ese valor al ef del otro formulario, para ellos tenes que subir hasta el CI y luego bajar a la otra dependencia.

Supongamos que tenemos los formularios form1 y form2, seria algo asi la cosa:


<?php
echo " {$this->objeto_js}.reasingar_total = function ()
          {
                   //primero obtengo el total de la columna.
                   var elem = this.ef('calificacion').ir_a_fila(apex_ef_total);
                   var valor = document.getElementById(elem._id_form).innerHTML;

                   //asigno el valor al otro formulario
                   this.controlador.dep('form1').ef('total_calificacion').set_estado(valor);
           }";
?>

Saludos

Buenas a todos, y gracias por la ayuda… lo pude solucionar así:

{$this->objeto_js}.evt__calificacion__procesar = function(es_inicial, fila) { var valor = this.total('calificacion'); if (valor!=0) { this.controlador.dep('frm_calificaciones').ef('total_calificacion').set_estado(valor); }
	}</blockquote>