1 2 3 //Obtenemos el control visor HTML var html = theRoot .dataView ().control ( "VISOR_HTML" ); //Leemos el código fuente del objeto HTML donde tenemos la etiqueta DIV que usamos de contenedor para enlazar HTML y V7 4 5 6 7 8 9 10 var codigo = html .sourceCode (); 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 var diaHora = new Date (); //Sacamos el contenido de la etiquet DIV que usamos como contenedor var contenido = codigo .match (/<div id="contenedorV7">([\s\S]*)<\/div>/ )[1 ]; theRoot .setVar ( "URL" , contenido ); //Capturamos el ID del albarán de venta para crear el registro extendido var idAlbaran = theRegisterIn .fieldToInt ( "ID" ); //Formatamos día, mes, hora, minutos, segundos para grabar en el campo de tipo Tiempo (es el campo que guardamos la fecha/hora de la firma) //En JavaScript la función que devuelve el mes empieza desde 0, por eso le sumaremos +1 var var var var var var var var var var mes = (diaHora .getMonth ())+1 ; mes = mes .toString (); dia = diaHora .getDate (); dia = dia .toString (); hr = diaHora .getHours (); hr = hr .toString (); mi = diaHora .getMinutes (); mi = mi .toString (); se = diaHora .getSeconds (); se = se .toString (); if (mes .length < 2 ) { mes = "0" +mes ; } if (dia .length < 2 ) { dia = "0" +dia ; } if (hr .length < 2 ) { hr = "0" +hr ; } if (mi .length < 2 ) { mi = "0" +mi ; } if (se .length < 2 ) { se = "0" +se ; } //Montamos la cadena de texto formatada para rellenar el campo Fecha/Hora de la firma (campo de tipo Tiempo) var tiempo = "" +diaHora .getFullYear ()+"/" +mes +"/" +dia +" " +hr +":" +mi +":" +se ; //Preparamos transacción theRoot .beginTrans ( "Alta registro extendido VTA_ALB_G_EXT Firma digitalizada" ); //Preparamos el registro nuevo a grabar en la tabla extendida var registro = new VRegister ( theRoot ); registro .setTable ( "mcs_erp_dat/ALB_VTA_G_EXT" ); //Modificamos los campos registro .setField ( "ID" , idAlbaran ); registro .setField ( "FIR_DIG" , contenido ); registro .setField ( "FIR_DIG_FCH_HOR" , tiempo ); //Damos de alta el nuevo registro registro .addRegister (); //Finalizamos la transacción theRoot .commitTrans (); // Cerramos el albarán de venta var formulario = theRoot .dataView ().mainForm (); 62 formulario.cancel();