La tabla "Edit Sales" como en el caso de la tabla "Edit Offices", la tabla se ha creado en una página de nivel superior separada. Cuando la solución se ejecuta, a esta página se accede desde la página de nivel superior (consulte la captura de pantalla a la izquierda). Haciendo clic en el botón Tabla "Edit Sales" se carga la tabla "Edit Sales" (captura de pantalla de la derecha). La tabla "Sales" presenta filas múltiples, cada una de las cuales tienen una columna "ID" (elementos de ventas) que se puede editar, una oficina editable y columnas de Mes, Año y de Licencias y un control "Eliminar" (siguiente captura de pantalla a la derecha). Además existe un control "Anexar fila" debajo de la última fila, un botón Enviar localizado en la barra de la tabla "Edit Sales" y un botón Atrás para regresar a la página anterior (sería la página de nivel superior en este caso).
A ambos botones Editar del diseño (siguiente captura de pantalla) les ha sido asignada la acción "Ir a la página" en sus eventos respectivos AlPulsarBotón(haga clic con el botón derecho y seleccione Acciones de control para AlPulsarBotón). Estas acciones de "Ir a la página" (segunda captura de pantalla) cargan las páginas de destino correspondientes.
La tabla "Sales" de la BD tiene la estructura que se muestra en la estructura jerárquica de datos de $DB2 (siguiente captura de pantalla). Debido a que el atributo @id es la clave primaria, no se puede cambiar. Esto significa que cuando se anexa un nuevo registro, el usuario final no puede introducir un valor @id usando la solución. El valor @id debe generarse de forma automática usando una expresión XQuery. La expresión XQuery se inserta usando el comando del menú contextual, Comprobar existencia antes de la página se cargue (Valor XPath):
let $all := $DB2/DB/RowSet/Row/@id
let $ids := remove($all, index-of($all, ""))
let $id := if (empty($ids)) then 1 else max($ids) + 1
return $id
En el diseño haremos lo siguiente:
Actividad |
Método |
Mostrar todas las filas (Sales) |
Agregar una tabla de repetición con la fila Sales como elemento de repetición. |
Incluir controles para agregar y eliminar filas |
Cuando se agrega la tabla, se habilita la inclusión automática de los controles Eliminar/Anexar |
Activar la edición de valores editables |
Agregar un cuadro combinado y los controles de campo "Editar" que tienen enlaces de fuente de página. |
Volver a guardar cambios en la BD |
Agrega la acción Guardar en el evento AlPulsarBotónEnviar de la página. Con el botón derecho $DB2 y active Crear GrupoOriginaldeFilas |
Regresar a la página de nivel superior |
Agregar la acción "Ir a la página" al evento AlPulsarBotónAtrás de la página. |