DDA - Propiedades Comunes a Todos los Controles

Creado por David Miralpeix, Modificado el Fri, 16 Feb 2024 a las 12:26 PM por David Miralpeix

Las propiedades nombre y campo son comunes a todos los controles pero no deben de crearnos confusión puesto que cada una sirve para diferentes menesteres. Las diferencias son que la propiedad nombre se utiliza como identificador único del control en el DDA, mientras que la propiedad campo nos está diciendo el nombre del campo que se almacena en la base de datos. Esta propiedad debe de ir acompañada obligatoriamente por el tipo de dato y su longitud.

También tenemos dos propiedades comunes a todos los controles estos son propiedad y propiedad objeto. Estas propiedades solamente se van a poder rellenar si el DDA está vinculado a un Objeto.

  • Propiedad: Aparece un cuadro de lista con todos las propiedades de los objetos a los que está vinculado el DDA. Al seleccionar una propiedad estamos diciendo que en la carga del DDA vamos a coger el valor de la propiedad del objeto y escribirla en nuestro control del DDA.
Imagen
  • Propiedad Objeto: Si el DDA es el formulario asociado a un objeto nuevo creado desde el programa ADMON, podremos ver un cuadro de lista con todas las propiedades del nuevo objeto y seleccionaremos la propiedad que queremos guardar en ese campo.


Si el DDA proviene de un objeto nuevo podemos tener rellenados los dos campos tanto propiedad como propiedad objeto. Puesto que al cargar el DDA visualizaremos el campo propiedad y al guardarlo lo haremos sobre el campo Propiedad Objeto. 

Añadir Etiquetas

Debemos de considerar que las cajas de texto llevan sus propias etiquetas, por tanto si lo que queremos añadir es un título podemos usar este control etiqueta. 

Las propiedades obligatorias que debemos de rellenar para este tipo de control son:

  • Nombre
  • Tamaño de Letra

 

Añadir Cajas de Texto

La caja de texto es el control más habitual de los formularios nos permite introducir valores de cualquier tipo ya sea texto, números, fecha.

Propiedades a destacar: Multilínea: Si tenemos activado esta propiedad sobre el control de texto, hace que podamos pulsar la tecla intro sobre la caja y el foco no se vaya a otro control. Normalmente se utiliza para añadir un campo de notas o comentarios en el formulario.

Añadir Desplegables al DDA

Después de pintar el control combo en la cuadrícula podemos observar como tenemos una multitud de propiedades que se repiten. Lo primero que tenemos que hacer es rellenar dentro de la sección de DATOS el campo SQL con una SELECT de las columnas que queramos visualizar. A continuación nos iremos a la sección COLUMNAS e iremos rellenando las propiedades de anchura, tipo del campo y nombre. La propiedad nombre debe de coincidir tanto en orden como con el nombre de la columna de la SQL. 

Ejemplo

DATOS:

Propiedad SQL: SELECT IdEmpleado, Nombre + ‘ ’ + Apellidos as Empleado FROM Empleados_Datos

COLUMNAS:

Columna1 anchura: 1000 Columna1 nombre: IdEmpleado Columna1 tipo: Entero Columna2 anchura: 2000 Columna2 nombre: Empleado Columna2 tipo: Texto ColumnaActiva: 1 - Estamos indicando que el valor de esta columna es el que vamos a guardar en la tabla.

Por último podemos activar la propiedad Etiqueta Link para de esta forma obtener un hipervínculo a un asistente donde nos mostrará los registros de la consulta SQL.

 

¿Cómo se Acceden a los Valores de la Combo mediante vbscript?

Como hemos dicho anteriormente todos los controles son accesibles gracias al editor de pantallas que se obtiene a través de la combinación de teclas Ctrl+F10 a través de la propiedad gform.ControlesDDA(“NombreCombo”).Columns(0).Value. También podemos acceder a estos valores del desplegable usando los eventos de los controles que tengamos en nuestro DDA. 

Añadir Cuadro Contenedor o Frame

Este control dibuja un cuadro alrededor de los controles quedando estos contenidos en el cuadro. También podemos usarlo como separador dentro de un formulario para ello cambiaremos la propiedad estilo del recuadro a línea superior.

Es altamente recomendable insertar este control el último en nuestro formulario puesto que de lo contrario no podremos diseñar ningún control por encima de él. 

Añadir Pestañas al Formulario DDA

Si nos fijamos, la cuadricula tiene una pestaña que por defecto que viene con el nombre de principal, si pulsamos sobre ella podemos cambiar el nombre de su lista de propiedades pero lo interesante es que podemos pulsar el botón derecho del ratón para agregar más pestañas. 

Si solamente tenemos una pestaña a la hora de visualizar o simular el DDA aparecerá como si de un formulario único se tratase es decir, sin pestañas. 

Añadir Control Imagen

Mediante la propiedad fichero podemos visualizar una imagen de extensión .jpeg al cargar el DDA. También podemos cambiar la imagen programando un evento AfterUpdate en otra caja de texto que tengamos en el formulario quedando de la siguiente forma: 

Si nuestro control se llama PicFoto podemos usar la siguiente sentencia para cargar una foto, cada vez que se modifique una caja de texto llamada txtIdEmpleado

‘a la funcion LoadPicture le pasamos una ruta Set gform.ControlesDDA("PicFoto").Picture = LoadPicture(gcn.DameValorCampo("SELECT Foto FROM Empleados_Datos WHERE IdEmpleado="& gform.ControlesDDA("txtIdEmpleado").text))

 

Añadir un Control de Tipo Grid

Comentar que el control grid no se carga en simulación. Antes de elegir de la barra de herramientas el control de tipo grid y pintarlo en la cuadricula, lo primero que tenemos que hacer es guardar el DDA, a continuación una vez guardado ya podemos pintarlo sobre la cuadricula. Debemos de volver a guardar el DDA para que se habilite la opción del menú contextual, Editar Grid. 

Pulsando con el botón derecho sobre la rejilla obtenemos los siguientes menús contextuales:

  • Menú Eliminar:
    Elimina la grid, todos los controles del dda tienen esta opción de menú para poder eliminar el control.
  • Menú Copiar
    Al copiar tendremos una copia exacta del grid. El origen de datos será el mismo para la copia del grid y este no se puede cambiar.
  • Menú Vincular Tabla:
    Este menú sólo saldrá si la grid no tiene ya una tabla vinculada, esta opción no se recomienda por que es mas fácil crear la tabla desde la propia edición de la grid, pero si decidimos vincular tabla esta debe tener como clave un campo llamado iddoc, al vincularla el DDA le inserta un índice propio IdDDA indicando así que esta tabla sólo es de este DDA y no para otro

Al pulsar sobre este menú podremos seleccionar una tabla o vista de nuestra base de datos a través de la siguiente pantalla:

Imagen
  • Menú Editar Grid:
    Permite editar, añadir o eliminar los campos de la tabla y crea la tabla, aparecerá el siguiente formulario:
Imagen

Donde:

  • Nombre Tabla: es el nombre que le da a la tabla que crea o vincula
  • Nombre: Es el nombre del campo dentro de la tabla de la grid
  • Tipo: Es el Tipo de campo es obligatorio definirlo
  • Longitud: Es la longitud en el caso de que el campo sea texto
  • Sql: Podemos poner una sql para que pulsando F3 sobre este campo de la grid me salga el resultado del SQL en un asistente.


Ejemplo:

SELECT IdEmpleado, IdEmpleado as ID, Nombre FROM Empleados_Datos


De momento las grids tienen un pequeño inconveniente y es que una vez guardada la grid en la base de datos, no se pueden eliminar los campos que hemos creado. Podemos añadir campos nuevos, cambiar el tipo o tamaño de campo truncando este. Si queremos eliminar un campo podemos ir directamente a la tabla en SQL SERVER y realizar las modificaciones oportunas. La sentencia SQL se guarda en la descripción del campo dentro de la tabla de la grid.

Campos: En la creación de campos debemos tener en cuenta que es obligatorio introducir el nombre del campo, el tipo de dato y la longitud en el caso de que este sea de texto, sino no nos dejará guardar el DDA, ya que son datos necesarios para crear el campo asociado en la tabla asociada al DDA. Mediante los botones de más y menos podemos ir añadiendo eliminando campos, con la salvedad antes comentada.


Si deseas que el buscador generado forme parte de la colección de buscadores predefinidos, aprende cómo hacerlo consultando este enlace.


¿Le ha sido útil este artículo?

¡Qué bien!

Gracias por sus comentarios

¡Sentimos mucho no haber sido de ayuda!

Gracias por sus comentarios

¡Háganos saber cómo podemos mejorar este artículo!

Seleccione al menos una de las razones
Se requiere la verificación del CAPTCHA.

Sus comentarios se han enviado

Agradecemos su esfuerzo e intentaremos corregir el artículo