Capítulo
6 FORMULARIOS: PROYECTO Y
DESENVOLVIMIENTO. Los
formularios pueden ser generados por los
asistentes y/o desarrollados por el
usuario.
Existen
algunos recursos para auxiliar esta tarea
en la ventana de proyecto:
- La lista de
propiedades del control
seleccionado
- La lista de campos
de la tabla o consulta
- Las barras de
herramientas
- El cuadro de
herramientas.
La lista
de propiedades permite ajustar
características específicas de cada
control. Para exhibirla se debe
seleccionar el objeto, el menú Ver
y opción Propiedades o accionar
el botón de propiedades en la barra de
herramientas. El mismo efecto también es
obtenido picando dos veces el objeto al
seleccionarlo. Al digitar el valor de una
propiedad puede ser que el área sea
insuficiente, utilice SHIFT + F2 para
mostrar el cuadro de zoom de la
propiedad.
Para
exhibir la lista de campos se debe
accionar el menú Ver y opción Lista
de campos. También se puede accionar
el botón de la lista de campos en la
barra de herramientas.
Existen
paletas de colores par el fondo /
relleno, para el primer plano /
fuente y para líneas / bordes.
La utilización de esas paletas es
realizada a través de la barra de
herramienta formato que, en caso de no
estar activa, debe ser accionada vía
menú Ver opción Barra de
herramientas y Formato.
El cuadro
de herramientas en general ya viene
exhibida cuando alternamos para la
ventana de estructura. En caso de ser
necesario forzar la exhibición del
cuadro de herramientas, se debe usar el
menú Ver opción Cuadro de
herramientas,
FIGURA 6.1 Recursos del
cuadro de herramientas.
En el
formulario creamos y manipulamos
controles que pueden ser de tres tipos:
- Control asociado a
algún campo de tabla o consulta
y que exhibirá automáticamente
el contenido de este campo.
- Control sin
asociación como es el caso de
rectas, rectángulos, encabezados
y cuadros de texto para la
entrada de datos que no van para
la tabla.
- Control calculado
que quedará ligado a una
expresión.
6.1.
Creación de controles asociados a
campos.
Se generan
controles de este tipo a partir de la
lista de campos (Ver opción lista
de campos o su botón
correspondiente). Basta seleccionar los
campos y arrastrarlos para la posición
deseada del formulario. En principio el
Access siempre crea una cuadro de texto y
su rótulo para cada campo seleccionado.
En caso de que se desee crear otro tipo
de control, se debe seleccionar su botón
en el cuadro de herramientas antes de
seleccionar los campos en la lista de
campos.
Eventualmente
si desea asociar un campo a un control
que fue creado en el formulario sin
asociación. En este caso es necesario
abrir la ventana de propiedades del
control y atribuir el nombre del campo a
la propiedad Origen del Control.
6.2.
Creación de controles no asociados o
calculados.
En este
caso la generación es a partir del
cuadro de herramientas. Se selecciona el
botón del control deseado y enseguida se
debe picar el lugar del formulario donde
el control debe quedar.
Después
de picar ya es posible digitar la
expresión de cálculo o texto deseado
par el campo. Si el objetivo fuera apenas
diseñar el control entonces se debe,
después de picar en el formulario,
arrastrar el Mouse hasta obtener el
formato deseado.
Controles
del tipo rótulo pueden almacenar varias
líneas de texto. Se debe observar que el
cambio de línea se efectúa insertando
un carácter de cambio de línea en el
texto a través del accionamiento
simultáneo de las teclas CTRL y ENTER.
Para
almacenar una expresión en un cuadro de
texto calculada se debe iniciar la
expresión con el signo igual (=). Por
ejemplo, para mostrar la fecha corriente
en la pantalla se puede utilizar =Date().
También conviene recordar que nombres
de campos de tablas en expresiones deben
ir entre corchetes. Estas
recomendaciones también valen para
cuadros de combinaciones y cuadros de
lista.
6.3.
Definición de propiedades de controles.
Podemos
definir y redefinir propiedades del
control seleccionado a través de la
ventana de la lista de propiedades. Basta
seleccionar el control, abrir la ventana
y efectuar las definiciones deseadas. Las
propiedades que usualmente se alteran
son:
Formato:
permite especificar un formato para la
presentación de valores en los cuadros.
Lugares
decimales: cuantos decimales serán
presentados.
Texto de
la barra de estado:
texto a ser exhibido en la barra de
estado en la parte inferior de la
pantalla cuando el control sea activado
en el formulario.
Valor
predeterminado: valor predeterminado que
toma inicialmente el control.
Regla de
validación: test de la consistencia
sobre el dato alimentado, por ejemplo 0 y < 100.
Bloqueado:
indica que este control no puede recibir
cualquier entrada de datos.
6.4. Cuadros
con listas de selección.
Cuando
alimentamos datos tales como la sigla de
un departamento o el código de un cargo
estamos, en principio, obligados a
recordar de la lista los posibles
valores. Una forma de facilitar la tarea
del usuario es presentarle a la lista
junto con el formulario. Hay dos
alternativas para eso: cuadros de
combinaciones y cuadros de listas.
Para
mostrar su sistemática de uso, vamos a
tomar el formulario PADRÓN DE
EMPLEADOS creado por el asistente y
reconfigurarlo con un cuadro de
combinación para el Código de
cargo y con un cuadro de lista
para el campo Sigla del
departamento (figura 6.2.)
FIGURA 6.2 Estructura
del formulario con listas de selección.
a)
CUADRO COMBINADO PARA CÓDIGO
DEL CARGO
Inicialmente
se debe seleccionar y remover el rótulo
y el cuadro de texto correspondiente al código
del cargo pues vamos a
substituirlos por el cuadro de
combinación. Proceder conforme indicado:
- Elegir cuadro de
combinación en el cuadro de
herramientas
- Diseñar el área
de Detalle
- En el rótulo
asociado digitar
"código"
- Seleccionar el
cuadro combinado y abrir la
ventana de propiedades definido:
Tipo de
origen de la fila como siendo Tabla/Consulta,
pues iremos a obtener los códigos de los
cargos de la tabla PADRÓN DE CARGOS Y
SALARIOS, solamente los códigos
allá empadronados podrán ser elegidos
por el usuario.
Origen
de la fila como siendo PADRÓN DE
CARGOS Y SALARIOS, pues es la tabla
donde están los códigos válidos.
Número
de columnas como siendo 3,
pues queremos presentar los tres primeros
campos que constituyen la tabla PADRÓN
DE CARGOS Y SALARIOS.
Encabezado
de columnas como si, pues
deseamos identificar por lo menos dos
campos de la tabla origen a las columnas
del cuadro de combinación.
Ancho
de las columnas como siendo 1cm;2,71cm;2cm,
pues deseamos evitar que el cuadro de
combinación venga con barras de
desplazamiento horizontal.
Columna
dependiente como siendo 1 pues
es el primer campo de la tabla PADRÓN
DE CARGOS Y SALARIOS que contiene el
código del cargo que puede ser elegido
por el usuario.
Limitar
a la lista como si, pues
queremos impedir que el usuario digite un
valor para el Código del cargo,
él apenas puede elegir entre los datos
de la lista.
Finalmente,
y esto debe ser entendido claramente, es
necesario indicar de donde viene el valor
presentado en el cuadro de combinación
(o para donde va el valor elegido de la
lista que se abre debajo del cuadro de
combinación). Para eso es necesario
definir la propiedad Origen del
control como siendo: Código
del cargo. Ese Código del
cargo es el campo de la tabla PADRÓN
DE EMPLEADOS para el cual estamos
proyectando este formulario.
b)CUADRO
DE LISTA PARA LAS SIGLAS DEL DEPARTAMENTO
Los
cuadros de listas quedan permanentemente
abiertos en el formulario contrariamente
a los cuadros de combinaciones que el
usuario "abre" picando el
botón asociado. Por lo tanto los cuadro
de lista precisan de un área libre en el
formulario, a pesar de contar con sus
barras de desplazamiento.
En este
ejemplo no iremos a remover el cuadro de
texto para la sigla del departamento. El
objetivo es mostrar una lista de posibles
siglas entre las cuales el usuario elige
una.
Además de
eso, no iremos a crear esta lista a
partir de la tabla PADRÓN DE
DEPARTAMENTOS (lo que sería más
correcto) pues el ejemplo busca mostrar
la posibilidad de definir a la lista de
valores en la ventana de propiedades.
Procedimiento :
- Elija el cuadro de
lista en el cuadro de
herramientas
- Diséñelo en el
área de detalle
- Mover el rótulo
que vino junto para arriba del
cuadro de lista y alterar su
texto par: "Relación de
siglas"
- Seleccionar el
cuadro de lista y abrir la
ventana de propiedades
definiendo:
Tipo de
origen de la fila como siendo Lista
de valores, pues deseamos listar los
valores manualmente a seguir.
Origen
de la línea como fin;mkt;pro.(debemos
tipear estos valores).
Origen
del control como siendo Sigla del
departamento. Ese es otro campo de la
tabla PADRÓN DE EMPLEADOS que es
la base del formulario que está siendo
desarrollado.
FIGURA 6.3 Ventana del
formulario con el cuadro de combinación
abierto.
6.5
Subformularios.
Es posible
crear formularios contenidos dentro de
formularios. Por ejemplo, podemos listar
para cada departamento los empleados que
allí trabajan. A nivel de departamento
se crea un formulario de columna simple
al cual incorporamos un subformulario a
nivel de empleado en forma tabular.
El
procedimiento para la creación del
ejemplo consiste de tres partes:
- La creación de
una consulta, para el
subformulario,
- La creación del
subformulario, a partir de esta
consulta y
- Finalmente la
creación del formulario
principal e incorporación del
subformulario. En todos los
procesos comprendiendo la
creación de formularios se
utilizó el asistente
realizándose los ajustes
necesarios al final.
1)
Creación de la consulta salarios y
descuentos por func. Por depto.
Esta
consulta envuelve dos tablas pues la Sigla
del departamento y el Nombre del
empleado constan en una tabla
(PADRÓN DE EMPLEADOS), mientras que el Salario
de él consta en otra tabla (PADRÓN DE
CARGOS Y SALARIOS). La relación entre
ellas precisa ser establecida a través
del atributo Código del cargo. Se
elige una relación con la propiedad de
asociación indicando que deben ser
incluidos todos los registros del PADRÓN
DE EMPLEADOS. Para activar la ventana
de propiedad de la relación se debe
seleccionar la relación y activar el
menú Ver opción Propiedades
de la combinación. Este tipo re
relación fuerza la entrada de todos los
empleados inclusive aquellos que
momentáneamente estén sin cargo. La
ventana del proyecto correspondiente es
presentada en la figura 6.4.
El
descuento fue computado a través de la
fórmula Cmoneda(IIf(Esnulo([salario
del cargo]);0;[salario del cargo]*0,08)).
A la
consulta se le asigna el nombre de:
Consulta
salarios y descuentos por func
por depto .
FIGURA 6.4 Consulta salarios
y descuentos por func por depto.
2) Creación
del formulario salarios y descuentos por
func Por depto (sub).
Se utiliza
el asistente generador de formularios a
partir de la consulta creada
anteriormente: salarios y
descuentos por func por depto.
Utilizar un asistente para el formato
Tabular incluidos todos los
campos, estilo Estándar y título
"salarios y descuentos por
func Por depto (sub).
En el
formulario generado son necesarios varios
ajustes:
- Ajustar los
títulos de las columnas en los
cuadros del rótulo del
encabezado.
- Ajustar el tamaño
de los cuadros de texto en línea
detalle
- Reposicionar las
columnas.
- Incluir en el pié
de página una línea de
totalización de los salarios y
descuentos a través de la
formula =Suma([salario del
cargo]) y =Suma([Descuento])
FIGURA 6.5. Formulario
salarios y descuentos por func. Por
depto.(sub)
3) Creación
del formulario salarios y descuentos por
func Por depto (prin)
Este
formulario también es creado por el
asistente a partir de la tabla PADRÓN
DE DEPARTAMENTOS. Emplear formato de
En Columnas y atribuir el título "salarios
y descuentos por func Por depto
(prin)". Al final son
necesarios algunos ajustes en el área de
detalle:
- Ajustar la
posición de los controles que
permanecen.
- Incluir un control
de subformulario a partir del
cuadro de herramientas, en la
sección detalles.
Al alinear
el área para el subformulario es
accionando el asistente para la creación
del subformulario- Este asistente hace
tres preguntas:
- Si desea usar un
formulario, ya creado
anteriormente, como
subformulario. Elija la opción
formulario y especifique el
nombre a partir de la lista
presentada (salarios y
descuentos por func Por depto
(sub)). Cuidando la
elección porque el texto es
truncado por el Access. A
posteriori de la elección
activar el zoom vía SHIFT/F2
para ver si el nombre correcto
fue elegido.
- Si desea definir
los campos de vinculación entre
los 2 formularios o se desea
elegir de la lista. Elija de la
lista la opción " exhibir
salarios y descuentos por func.
Por depto. Para cada
registro...".
- Cual es el nombre
que desea dar al subformulario.
Especifique el nombre salarios
y descuentos por func por depto
(sub) igual al formulario
que lo originó.
Finalizado
el asistente podemos quitar el rótulo
que vino acompañado al área diseñada
para el subformulario pues el no será
usado. Basta abrir el formulario
principal para visualizar el conjunto
creado.
Finalmente,
en caso que se desee impedir la
alteración y entrada de datos en el
subformulario, basta ligar la propiedad
bloqueado para todos los campos que lo
constituyen
FIGURA 6.6 Formulario
salarios y descuentos por func. Por
depto. (prin).
FIGURA 6.7
Presentación final del formulario y su
subformulario.
|