El elemento codigoExtra/codigo
permite definir código a incluir en las páginas
generadas. El atributo @tipo
indica el tipo de código; puede ser HTML
, PHP
o JAVASCRIPT
. El atributo @ubicacion
indica la ubicación dentro de la página
donde se debe emitir el código; más adelante se encuentran listadas todas las
ubicaciones disponibles para cada tipo de página. En el caso de @tipo="PHP"
,
el código se emite dentro de una función que se define al comienzo de la página
y se invoca en la ubicación indicada; esta función recibe un único parámetro
$params
, el cual es un array que contiene los pares clave=>valor
indicados
en la columna “Parámetros” de los listados de ubicaciones. Dado que el código
extra no tiene alcance global, no es necesario preocuparse por modificar
inadvertidamente el valor de alguna variable usada por XGAP.
<codigoExtra> <codigo tipo="HTML" ubicacion="inicio_body"> <![CDATA[ <div class="mensaje">Esto va al inicio de la pagina.</div> ]]> </codigo> <codigo tipo="JAVASCRIPT" ubicacion="fin_body"> <![CDATA[ alert("Mensaje javascript."); ]]> </codigo> <codigo tipo="PHP" ubicacion="despues_inicializacion"> <![CDATA[ $conexion = $params['conexion']; $idseccion = $_REQUEST['idseccion']; $sql = "SELECT dvalortraducido FROM traduccion" . " WHERE cnombre = 'SECCION' AND cvalor = '$idseccion'"; $descseccion = $conexion->obtenerPrimero($sql); // $params['titulo'] es un parámetro provisto para esta ubicación $params['titulo'] .= ' en ' . XGAP_CONF_APLICACION . " | $descseccion"; ]]> </codigo> <!-- Inválido: ya existe un bloque de código en esta ubicación y con este tipo --> <codigo tipo="PHP" ubicacion="despues_inicializacion"> <![CDATA[ $otra_mas = $_REQUEST['otra_mas']; ]]> </codigo> </codigoExtra>
Ubicaciones
Posibles valores para codigoExtra/codigo/@ubicacion
.
En todos los tipos de página
@ubicacion |
Ubicación en la página | Parámetros (@tipo="PHP" ) |
---|---|---|
|
Al comienzo de la página, antes de inicializar XGAP. (XGAP ≥ 2.11.2) |
- |
|
Antes de inicializar las variables de la página |
- |
|
Luego de cargar el entorno de XGAP, pero antes de definir las variables de la página. (XGAP ≥ r2.12.10.245) |
|
![]() |
El caso particular de @ubicacion="inicio_pagina" sólo se aplica cuando
@tipo="PHP" . El código en esta ubicación no se emite dentro de una función,
sino a nivel global. Esto permite definir elementos globales, como ser
constantes, funciones o clases, lo que no sería posible o no tendría sentido
dentro de una función. |
En listado
, listado_seleccion
, listado_seleccion_m
y listado_master_inline
Referencias para la columna “En”:
l
|
|
s
|
|
sm
|
|
mi
|
|
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
En |
---|---|---|---|
|
Después de inicializar las variables de la página; justo antes de comenzar a emitir a la salida |
|
l, s, sm, mi |
|
Después de terminar de generar salida HTML (después de |
|
l, s, sm |
|
Antes de generar el elemento |
- |
l, s, sm |
|
Justo después de abrir el elemento |
|
l, s, sm |
|
Justo antes de cerrar el elemento |
|
l, s, sm |
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
l, s, sm |
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
l, s, sm |
|
Justo antes de abrir la tabla principal del listado |
|
l, s, sm, mi |
|
Justo después de cerrar la tabla principal del listado |
|
l, s, sm, mi |
|
Justo después de abrir una celda del encabezado de la tabla principal |
|
l, s, sm, mi |
|
Justo antes de cerrar una celda del encabezado de la tabla principal |
|
l, s, sm, mi |
|
Antes de abrir una fila del cuerpo de la tabla principal (XGAP ≥ r2.16.0.700) |
|
l, s, sm, mi |
|
Justo después de abrir una celda del cuerpo de la tabla principal |
|
l, s, sm, mi |
|
Justo antes de cerrar una celda del cuerpo de la tabla principal |
|
l, s, sm, mi |
|
Antes de crear la consulta SQL para obtener los datos para el listado. (XGAP ≥ 2.12.3) |
|
l, s, sm, mi |
|
Despues de ejecutar la consulta SQL para obtener los datos para el listado. (XGAP ≥ r2.16.0.732) |
|
l, s, sm, mi |
|
Permite crear manualmente la consulta SQL para obtener los datos para el
listado. Debe establecer los valores de |
|
l, s, sm, mi |
|
Antes de generar un link en una columna que tiene |
|
l, mi |
En listado_csv
, listado_ods
, listado_pdf
, listado_rtf
y listado_xls
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
---|---|---|
|
Después de inicializar las variables de la página; justo antes de comenzar a emitir a la salida |
|
|
Antes de crear la consulta SQL para obtener los datos para el listado. |
|
|
Despues de ejecutar la consulta SQL para obtener los datos para el listado. En
|
|
En contenido
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' )[El parámetro 'conexión' tiene valor null en todas las
ubicaciones si /pagina/@con-conexion = 'false' .] |
---|---|---|
|
Después de inicializar las variables de la página; justo antes de comenzar a emitir a la salida |
|
|
Después de terminar de generar salida html (después de |
|
|
Antes de generar el elemento |
- |
|
Justo después de abrir el elemento |
|
|
Justo antes de cerrar el elemento |
|
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
En formulario
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
---|---|---|
|
Antes de procesar los campos de tipo "Archivo". (XGAP ≥ r2.16.0.649) ref |
|
|
Después de inicializar las variables de la página, pero antes de comenzar a procesar la acción o la presentación de la página (XGAP ≥ r2.16.0.678) |
|
|
Después de inicializar las variables de la página, justo antes de comenzar a emitir a la salida; no se llega a esta ubicación si el formulario ejecuta correctamente una acción, dado que se redirige a la página destino antes; es decir, sólo se llega si el formulario se muestra |
|
|
Después de terminar de generar salida html (después de |
|
|
El contenido sale dentro del elemento |
- |
|
Justo después de abrir el elemento |
|
|
Justo antes de cerrar el elemento |
|
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
|
Antes de ejecutar la acción, cualquiera sea. Esta ubicación se coloca justo
antes que las ubicaciones |
|
|
Antes de validar los datos y ejecutar la inserción en la BD |
|
|
Después de ejecutar la inserción en la BD |
|
|
Antes de validar los campos y ejecutar la actualización en la BD |
|
|
Después de ejecutar la actualización en la BD |
|
|
Antes de ejecutar el borrado en la BD |
|
|
Después de ejecutar el borrado en la BD |
|
|
Después de ejecutar la acción y antes de redirigir a la página destino. Sólo se ejecuta si la acción se completó correctamente. (XGAP ≥ r2.12.8.65) |
|
|
Después de ejecutar la acción y justo antes de comenzar la carga del formulario. Esta ubicación se coloca después de la redirección que se realiza luego de la ejecución correcta de la acción, por lo que sólo se invoca si la acción no se completa correctamente o se cancela la redirección. (XGAP ≥ r2.16.1.794) |
|
|
Antes de abrir el formulario principal |
|
|
Después de abrir el formulario principal |
|
|
Antes de cerrar el formulario principal |
|
|
Después de cerrar el formulario principal |
|
|
Antes de generar un campo con |
|
![]() |
Referencias
El parámetro "accion", que se pasa en varias ubicaciones, puede tomar uno de los siguientes valores: { 'agregar' | 'agregar-volver' | 'agregar-seguir' | 'modificar' | 'borrar' | 'cancelar' }. El parámetro "campos" de la ubicación "antes_procesar_uploads" es un array que contiene los datos de los campos de tipo "Archivo", en el formato: <?php // Lista de campos indexada por elemento "campo/dato" $params['campos'] = array( '{dato #1}' => array( // [string] nombre del archivo 'nombrearchivo' => '{nombre archivo}', // [boolean|null] ¿se debe conservar el archivo original? // true: si; false; no; null: no aplicable 'conservar' => $c, // [string] valor del elemento "campo/destino" 'destino' => '{destino #1}', // [FormFileUpload] objeto que representa el upload 'upload' => $u ) //, '{dato #2}' => array(...), ... ); |
En formulario_master
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
---|---|---|
|
Después de inicializar las variables de la página; justo antes de comenzar a emitir a la salida |
|
|
Antes de comenzar a generar salida html (antes de |
|
|
Después de terminar de generar salida html (después de |
|
|
El contenido sale dentro del elemento |
- |
|
Justo después de abrir el elemento |
|
|
Justo antes de cerrar el elemento |
|
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
|
Antes de abrir la estructura que contiene los datos de la entidad. |
|
|
Después de abrir la estructura que contiene los datos de la entidad. |
|
|
Antes de cerrar la estructura que contiene los datos de la entidad. |
|
|
Después de cerrar la estructura que contiene los datos de la entidad. |
|
|
Antes de mostrar el título de un campo. |
|
|
Después de mostrar el título de un campo. |
|
|
Antes de mostrar el valor de un campo. |
|
|
Después de mostrar el valor de un campo. |
|
En formulario_reporte
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
---|---|---|
|
Antes de comenzar a generar salida html (antes de |
|
|
Después de terminar de generar salida html (después de |
|
|
El contenido sale dentro del elemento |
- |
|
Justo después de abrir el elemento |
|
|
Justo antes de cerrar el elemento |
|
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
En grafico
@ubicacion |
Ubicación en la página | Parámetros (@tipo='PHP' ) |
---|---|---|
|
Después de inicializar las variables de la página; justo antes de comenzar a emitir a la salida |
|
|
Después de inicializar las variables del gráfico |
|
|
Antes de comenzar a generar salida html (antes de |
|
|
Después de terminar de generar salida html (después de |
|
|
Antes de generar el elemento |
- |
|
Justo después de abrir el elemento |
|
|
Justo antes de cerrar el elemento |
|
|
Justo después de abrir la estructura de la página (al comienzo del contenedor principal) |
|
|
Justo antes de cerrar la estructura de la página (al final del contenedor principal) |
|
En menu
y reporte_odt
En el caso de menu
y reporte_odt
, sólo se aplican las ubicaciones que están
disponibles en todos los tipos de página.
Además, el tipo de código está restringido a @tipo="PHP"
.