24
06 Asistentes

Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

06Asistentes

Page 2: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables
Page 3: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

6.1 Asistente para edición de fórmulas

Las fórmulas pueden utilizarse en cualquier cuadro de edición que permitaintroducir expresiones de tipo fórmula. Normalmente haremos uso delAsistente para edición de fórmulas, disponible en el botón Asistente, aun-que también podemos introducirlas manualmente. Se aconseja el uso delasistente ya que detecta errores.

El asistente está presente en todos los controles de edición donde se per-mite emplear fórmulas, de manera que al pulsar el botón Asistente apare-cerá la ventana:

La parte principal es un cuadro de edición donde escribimos la expresiónde la fórmula. En este área del asistente insertaremos identificadores, sím-bolos y funciones a medida que los seleccionamos en las diversas opcio-nes. De igual forma podemos insertar manualmente datos como paréntesis,operadores, campos, etc.

Los botones de la barra permiten acceder a una lista de:

Operadores (F3).

Funciones (F4).

Funciones de dll.

Funciones (objeto visual).

06 Asistentes

ASISTENTE PARA EDICIÓN DE FÓRMULAS

Operadores

Funciones

Funciones de dll

Funciones (objeto visual)

Page 4: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

408 409 VELAZQUEZ VISUAL

Campos (F5).

Variables Globales (F6).

Variables Locales (F7).

Variables del Sistema (F8).

Cortar (Control + X), Copiar (Control + C) y Pegar (Control + V).

Deshacer (Control + Z).

Verificar (F9): este botón comprueba que la sintaxis de la fórmula sea co-rrecta. En caso contrario presentará una ventana con el error cometido.También se verifica al aceptar la fórmula con el botón OK o al pulsar intro.

Ayuda (F1).

Aceptar (Intro): guarda los cambios realizados en la fórmula.

Cancelar (Esc): cancela los cambios llevados a cabo en la fórmula.

6.1.1. Sintaxis de las fórmulas. Operadores y funciones

En una fórmula se permiten expresiones tanto aritméticas (suma, resta, di-visión...) como booleanas (lógicas). Disponemos de una lista de operadores,funciones, accesos a los campos de la tabla de datos en curso y a susmaestros, acceso a las variables globales del proyecto, a las variables lo-cales y a las variables del sistema para poder crear las fórmulas.

OperadoresPulsando el botón operadores aparecerá en pantalla un asistente en elque podremos seleccionar el operador necesario de entre los siguientes:

Expresiones aritméticas: por ejemplo ((4 + 5 + 1) / 2) - (45 / 8). Aquí se hanusado constantes, pero podemos operar con campos y variables globales,además de otras funciones.

Expresiones condicionales:

OPERADORES

Campos

Variables Globales

Variables Locales

Variables del SistemaCortar, Copiar yPegar

Deshacer

Verificar

Ayuda

Aceptar

Cancelar

Operadores

Page 5: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

4 > 2 condición cierta.

4 < (2+2) condición falsa.

4 = (2+2) condición cierta.

4 ! 3 condición cierta

Expresiones booleanas (lógicas):

(4 > 1) & (4 = 5)

En el ejemplo anterior, la primera condición (4>1) es cierta, pero la segunda(4=5) no lo es. El operador & es verdadero si sus condiciones (izquierda yderecha) también lo son, por lo tanto, la condición en su conjunto es falsa.

(4 > 1) | (4 = 5)

En el ejemplo anterior la primera condición (4>1) es cierta pero la segunda(4=5) no lo es. El operador | (ó) es verdadero si una de sus condiciones (iz-quierda y derecha) lo es, por lo tanto, la condición en su conjunto es cierta.

Expresiones unarias

- X: la expresión devuelve el valor negativo de la variable X.

!X: indica NO X. Se trata de la negación de la variable X. Si poseía algún va-lor, lo evalúa como cero, mientras que si poseía el valor 0, lo evalúa como 1.

Es recomendable el uso de los paréntesis en las expresiones de fórmulas,sobre todo cuando no se conoce la forma de evaluación de los operadores,ya que fuerzan a realizar primero las operaciones incluidas en ellos.

Las funcionesPulsando el botón funciones, aparecerá el asistente de funciones. En elanexo II del manual encontraremos un listado con todas las funciones delAsistente de edición de fórmulas de Velázquez Visual. El asistente para laedición de fórmulas puede volver a abrirse por cada parámetro de la fun-ción, de esta manera resultará más fácil su composición.

06 Asistentes

Funciones

Page 6: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

410 411 VELAZQUEZ VISUAL

El cuadro Ayuda del Asistente de funciones indica cómo trabaja la función,en Sintaxis vemos cuál es la sintaxis para esa función en particular y en Pa-rámetros aparecen los parámetros que lleva la función. Para introducir esosparámetros podemos recurrir de nuevo al Asistente (botones a la derechade los controles de edición correspondientes a parámetros).

Velázquez Visual presenta los siguientes tipos de funciones:

Numéricas: funciones que trabajan sobre datos numéricos, como Absoluto(devuelve el valor absoluto de un número) o Redondear (devuelve el núme-ro entero o decimal más próximo al valor).

Funciones de cadenas y de conversión de cadenas: trabajan sobre cadenasde caracteres, como es el caso de la función Len (devuelve el número decaracteres de una expresión) o la función Mayúsculas (convierte una funciónalfabética a mayúsculas).

Funciones de fecha: trabajan sobre datos con carácter de fecha, como lafunción Edad (devuelve la diferencia en años entre dos fechas).

Funciones de hora: trabajan con datos de carácter hora, por ejemplo la fun-ción Ahora (que devuelve la hora del sistema).

Funciones Varias: aquí se incluyen funciones de diverso tipo, como puedeser DecidirDato (elige un dato de acuerdo con una condición), o CampoVa-cío (devuelve 1 si el campo que se le pasa como parámetro está vacío y 0si no lo está).

Funciones de cliente-servidor: específicas para la ejecución de aplicacio-nes en arquitectura cliente-servidor. Por ejemplo GetWebAplicación (de-

VENTANA ASISTENTE DE FUNCIONES

Page 7: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

vuelve la url correspondiente a la aplicación que se esté ejecutando en esemomento).

Funciones de códigos: trabajan sobre códigos que les pasamos como pa-rámetros. Un ejemplo es EsEan13, que devuelve 1 si el código es un EAN13y 0 en caso contrario.

Funciones de juegos de caracteres: devuelven los códigos o caracteres co-rrespondientes a los parámetros que se le haya pasado, por ejemplo Get-CharAlfa40 (devuelve el carácter correspondiente al número que se le hayapasado como parámetro en la tabla de caracteres Alfa40).

Funciones de directorios: realizan operaciones sobre directorios y ficheros,como la función AjustaSenda (convierte una senda para que sea interpreta-da correctamente).

Funciones científicas: incluyen las funciones científicas clásicas, como Ar-coSeno (devuelve el arcoseno del argumento).

Funciones Api de Velázquez: devuelven información acerca de aplicacionesde Velázquez. Un ejemplo es GetProyectoNombre (devuelve el nombre deun proyecto de Velázquez).

Las funciones de dllSi en el proyecto se ha creado algún objeto dll con funciones, éstas podránser seleccionadas pulsando el botón funciones de dll de la barra de bo-tones del asistente. Aparecerá el Asistente de funciones de dll.

Las funciones proceso Si en el proyecto hemos creado alguna función, ésta podrá ser selecciona-da pulsando el botón funciones proceso de la barra de botones delasistente. Obtendremos la ventana del Asistente de funciones proceso.

06 Asistentes

ASISTENTE DE FUNCIONES DE DLL

Funciones de dll

Funciones proceso

Page 8: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

412 413 VELAZQUEZ VISUAL

Una función habitualmente usa parámetros. Éstos aparecerán entre parénte-sis tras el nombre de la función, por ejemplo: FuncionNombre( parametro1,parametro2, parámetro3 ). Una vez seleccionada debemos sustituir las cade-nas parámetro1, parámetro2, parámetro3 por los parámetros que vayamos asuministrar a la función, éstos podrán ser constantes o variables, por ejemplo:

Constantes: FunciónNombre( 12, 1, 4 )

Variables: FunciónNombre( %CAMPO-1%, $VARIABLE-1$, ‘VARIABLE1’ )

Para ello hemos de seleccionar la función en el Asistente de funciones pro-ceso, y mediante el Asistente de edición de fórmulas le pasamos los pará-metros necesarios.

Uso de los camposPara incluir manualmente en una fórmula un campo de la tabla de datos encurso hemos de escribir en mayúsculas el identificador del campo, prece-dido y seguido de un símbolo %. Por ejemplo, para calcular el 16 por cien-to del campo Precio que tiene por identificador PRECIO, escribimos en lafórmula el texto siguiente: (%PRECIO% * 16) / 100.

Es posible usar campos de una tabla de datos enlazada ascendentementecon la primera. En este ejemplo se han usado dos operadores; el operador(*) para la multiplicación y el operador (/) para la división.

Veamos otro ejemplo: para obtener el valor del campo Nombre de la pro-vincia de la población del cliente del albarán en curso, escribimos en la fór-mula el texto siguiente:

ASISTENTE DE FUNCIONES PROCESO (OBJETO VISUAL)

Page 9: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

%CLIENTE.POBLACION.PROVINCIA.NOMBRE%

Todo el texto va entre símbolos de tantos por ciento, mientras que los cam-pos enlazados se separan con un punto (.). Para Velázquez Visual el campoNombre de la tabla de datos enlazada, es tratado como si fuera de la pro-pia tabla de datos. No hay limitación en el número de enlaces.

También podemos movernos por los campos enlazados pinchando en elbotón campos , de modo que se presentará una ventana en la que po-demos seleccionar el campo a incluir en el asistente sin necesidad de es-cribirlo a mano.

Al pulsar las letras del teclado el foco se situará en el campo que comien-ce por las mismas. En el caso de la figura anterior, si pulsáramos P, el focose situaría sobre el campo Perfil.

6.1.2. Operaciones avanzadas

Acceso a campos de otra tabla de datosEn un proceso, para obtener un campo de un registro de una tabla de da-tos que no está en curso ni está enlazada, habiendo guardado anterior-mente el registro en el proceso con la función Guardar ficha, se utiliza la si-guiente sintaxis:

:ID_VAR%CAMPO%

Como prefijo se introduce : (dos puntos), a continuación el identificador dela variable en la que se ha guardado la ficha con la función Guardar ficha, yentre tantos por ciento, el campo de donde se quiere obtener el dato.

De este modo también podemos acceder a los campos de las tablas enla-zadas a la tabla a la que pertenece la ficha que hemos guardado en el pro-ceso con la función Guardar ficha. Por ejemplo, supongamos las tablas en-lazadas PAISES y PROVINCIAS. En un proceso guardamos un registro de la

06 Asistentes

Esta operación sólo puedeser utilizada en un Proceso.

ADVERTENCIA

Campos

Page 10: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

414 415 VELAZQUEZ VISUAL

tabla PROVINCIAS con la función Guardar ficha, utilizando la variable ID_FI-CHA. Desde una tabla no enlazada podemos acceder al nombre del país dela provincia de la ficha que hemos guardado; la sintaxis sería:

:ID_FICHA%PAIS.NOMBRE%

Si existen los mismos identificadores para una ficha guardada y una tablade datos, tendrá prioridad el identificador de la ficha.

Uso de las variables globalesPara introducir manualmente variables globales que estén declaradas en elproyecto hemos de escribir su identificador entre dos símbolos $. Tambiénpodemos introducirlas haciendo uso de la Lista de Variables: Globales queaparece cuando pulsamos el botón variables globales del asistente pa-ra edición de fórmulas.

Por ejemplo: para hacer un cálculo con la variable global IVA y el campoPRECIO, escribimos en la fórmula el texto siguiente: (%PRECIO% * $IVA$)/ 100

Advirtamos que el identificador del campo va entre tantos por ciento (%),mientras que el de la variable global va entre símbolos de dólar ($).

Es posible combinar campos de una tabla de datos enlazada con variablesglobales. Por ejemplo, para hacer un cálculo con la variable global IVA y elcampo PRECIO de la tabla de datos enlazada ARTICULOS, escribimos enla fórmula el texto siguiente: (%ARTICULOS.PRECIO% * $IVA$) / 100

Uso de las variables localesPara introducir manualmente variables locales escribimos su identificadorentre dos apóstrofes (‘). También podemos acceder a ellas mediante el bo-tón variables locales (F7).

Los ámbitos más corrientes de las variables locales son los procesos y los in-formes, aunque también se usan en componentes html, pies de rejilla... Al ter-minar se destruyen, y su uso no es posible desde fuera del proceso o informe.

VENTANA LISTA DE VARIABLES GLOBALES

Variables globales

Variables locales

Page 11: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

No es necesario declarar el tipo de las variables locales ya que éste será elde su contenido. Por ejemplo, una misma variable puede ser en un mo-mento dado alfabética y luego numérica.

Uso de las variables de sistemaPara introducir manualmente variables de sistema escribimos el identifica-dor de la variable en minúsculas, sin prefijos ni sufijos, o hacemos clic en elbotón variables de sistema, obteniendo en este caso la ventana Lista deVariables: Sistema en la que se da un listado de todas las variables de sis-tema.

ConstantesLas constantes tienen un valor fijo predefinido por el programador. Depen-diendo del tipo constante se especificarán de una u otra forma:

• Constantes numéricas: se escribirá el número, precedido por el signo -si es negativo, y utilizando el punto (.) como separador decimal. Porejemplo, para pasar a una fórmula el número -1.231,35 hemos de escri-bir: -1231.35

• Constantes alfabéticas: se escribirá el contenido entrecomillado. Porejemplo, si se desea tener el texto Pesetas como constante, la fórmulasería: “Pesetas”.

• Constantes de tipo hora: su contenido se especificará separando las ho-ras, minutos y segundos por un espacio en blanco o un carácter comopuede ser un punto (.), dos puntos (:), etc. Por ejemplo para especificarlas 3:04:30 como constante, la fórmula sería: 3 4 30 o 3:4:40 o 03:04:40.

• Constantes de tipo fecha: su contenido puede especificarse de variasformas. Por ejemplo, para la fecha 1-enero-1999 podemos escribir co-mo fórmula: 010199 o 1-1-1999 o 1-ene-1999.

• Constantes de tipo booleano: su contenido puede especificarse con unnúmero o con un texto: 1 Sí, 0 No.

06 Asistentes

VENTANA LISTA DE VARIABLES: SISTEMA

Variables de sistema

Page 12: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

416 417 VELAZQUEZ VISUAL

Subcadenas de formatoLas subcadenas de formato ajustan la visualización de la información (porejemplo, forzar a que un campo numérico se visualice con cinco caracteres,alineado a la derecha y rellenando con ceros por la izquierda, como 00021).

¿Cómo se pueden usar desde el Asistente de edición de fórmulas? Supon-gamos una línea de proceso en la que mandamos un mensaje que incluyeel contenido de un campo del proyecto (no nos preocupemos por no habervisto aún los procesos; esto es solo un ejemplo).

Queremos incluir el mensaje “El precio del libro es PVP”, donde PVP es elprecio, guardado en el campo P.V.P. En el control de edición Mensaje escri-bimos “El precio del libro es” y pulsamos el botón Asistente, apareciendo elasistente para edición de fórmulas. En él pulsamos el botón Campos y ele-gimos el campo P.V.P. En esta última ventana (Seleccione campo de:) esdonde damos formato al campo (controles Justificar y longitud).

VENTANA DE EDICIÓN PARA LA FUNCIÓN DE PROCESOS MENSAJE

Page 13: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

Al final obtendremos la siguiente ventana de línea de proceso:

06 Asistentes

Page 14: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

418 419 VELAZQUEZ VISUAL

Conversión automática de datosCuando pasamos datos de un tipo a otro, Velázquez realiza una conversiónautomática de los mismos. Así tenemos:

• Dato numérico en una cadena de texto: cuando en una expresión de tex-to utilizamos un dato numérico, éste se toma con el signo y con los de-cimales. Por ejemplo, el número -26.125,55 al incluirlo en una fórmula detexto se convertirá a -26125.55. Cuando en una fórmula intervienen da-tos numéricos y el operador +, la operación a realizar (suma o concate-nación) dependerá del primero de los valores especificados. Si es un nú-mero, se tomará como una suma, si es una cadena, como una concate-nación. Por ejemplo, si en un campo o variable de tipo alfabético se es-cribe la fórmula: 1+1, puesto que el primer dato es numérico, se tomarácomo una suma, por lo que se devolverá 2. Si lo que queremos es con-catenar ambas cifras, para indicar que se trata de una concatenaciónbasta con que al principio de la expresión se escriba “ ” (comillas - co-millas) con lo que la fórmula sería “”+1+1, lo que devolvería 11. En am-bos casos el resultado es una cadena de texto, aunque en el primer ca-so se devuelve como cadena la suma de ambas cifras y en el segundola concatenación de las mismas.

• Fecha en una cadena de texto: cuando en una cadena de texto incluimosun dato de tipo fecha, lo devuelve en formato de día-nombre del mesabreviado-año completo. Por ejemplo, 12/12/1998 es incluido en la ca-dena de texto como 12-dic-1998.

Page 15: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

• Hora en una cadena de texto: cuando se pasa un dato de tipo hora a unacadena de texto, se convierte automáticamente en formato hh:mm:ss.Por ejemplo: 12:15:33.

• Hora en numérico: al pasar un dato de tipo hora a un campo o variablenumérico, este último convierte la hora en segundos. Así, por ejemplo:10:44:01 pasa a ser 38641.

Secuencias de escape en cadenas de caracteresPara introducir en el interior de una cadena de caracteres algunos caracte-res especiales imposibles de representar mediante texto, utilizamos lo quecomúnmente se denominan secuencias de escape. Todas ellas comienzancon una barra invertida seguida de otro carácter. Las secuencias de esca-pe se sustituyen en tiempo de ejecución por los caracteres adecuados. És-tas son las secuencias de escape aceptadas:

\a Campana: es el pitido del sistema.

\b Retroceso: produce el mismo efecto que pulsar la tecla de Retrocesodestructivo.

\c Comilla: provoca la introducción de una comilla.

\f Salto de página: provoca el salto de una página.

\n Nueva línea: provoca el salto a la línea siguiente.

\r Retorno de carro: provoca el retroceso al comienzo de la línea.

\t Tabulador: produce el mismo efecto que pulsar la tecla del Tabulador.

\v Tabulador Vertical.

\\ Barra invertida.

Las secuencias de escape \r y \n pueden ser utilizadas en textos estáticosmultilíneas (menús, formularios, etc.).

06 Asistentes

Cuestiones1. Supongamos una aplicación en la que tenemos una tabla que con-

tiene los campos valor1 y valor 2 (numéricos). También tenemos de-finidas dos variables globales: variable1 y variable2 (numéricas).Queremos que el contenido inicial del campo valor1 sea variable1 sise cumple que valor2 > 10. En caso contrario el contenido inicial devalor1 debe ser la variable2. Usar para ello la función DecidirDato(dentro de la carpeta Varias).

2. Supuesto el siguiente esquema de tablas, ¿cuál sería la sintaxis pa-ra obtener el nombre de la región a la que pertenece el lugar de in-terés en el que se encuentra la casa rural en curso?

Page 16: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

420 421 VELAZQUEZ VISUAL

ResumenPodemos utilizar fórmulas en cualquier cuadro de edición que admita ex-presiones de tipo fórmula. Aunque se pueden introducir a mano se reco-mienda utilizar el Asistente para edición de fórmulas.

En las fórmulas se admiten expresiones tanto aritméticas como booleanas.Para construirlas disponemos de una lista de operadores, funciones, acce-sos a los campos de la tabla de datos en curso y a sus maestros, acceso alas variables globales del proyecto, a las variables locales, a las variables delsistema y a constantes.

En el asistente encontramos funciones numéricas, de cadenas, de conver-sión de cadenas, de fecha, de hora, varias, Api de Velázquez, cliente - ser-

3. Supongamos una aplicación con tres tablas: CLIENTES, ARTÍCULOS yLÍNEAS DE VENTA. En la tabla CLIENTES hemos incluido el campoDescuento, que guarda el descuento a aplicar según el cliente. La tablaARTÍCULOS contiene el campo Precio, y además hemos incluido en elproyecto la variable global IVA. En la tabla LÍNEAS DE VENTA hemosañadido el campo Total (lo que finalmente debe pagar el cliente). Que-remos que el contenido del campo Total sea el precio del artículo me-nos el descuento por cliente, sin olvidarnos de aplicar el IVA. Escribir elcontenido inicial del campo Total usando las funciones del asistente.

Page 17: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

vidor, de códigos, de juegos de caracteres, de directorios y científicas, to-das ellas con un asistente de funciones. También podemos introducir fun-ciones de dll y de procesos si éstas han sido creadas en el proyecto.

Gracias a las subcadenas de formato podemos ajustar la visualización de lainformación.

Cuando pasamos datos de un tipo a otro, Velázquez realiza una conversión auto-mática de los mismos. Podemos convertir: datos numéricos en cadenas de tex-to, fechas en cadenas de texto, horas en cadenas de texto y horas en numérico.

Gracias a las secuencias de escape introducimos, en el interior de cadenasde caracteres, algunos caracteres especiales que no se pueden represen-tar mediante texto (retrocesos, comillas, saltos de página, etc.).

6.2 Uso de las cadenas de formato

Las cadenas de formato pueden usarse en ciertos controles, y sirven paraconcatenar textos y campos sin utilizar operadores aritméticos, formateandola visualización de la información. Los controles donde se pueden usar son:

• Rejillas: cuando se activa la casilla de verificación Manual en las propie-dades de cuerpo (ventana Columna de rejilla).

• Tubos de ficha y tubos de lista: en los Capilares de campos alfabéticos.

• Formularios: cuando se activa la casilla de verificación Manual en loscontroles de edición de campo.

• En la especificación del texto en controles de casilla de verificación deformularios y menús formulario.

• En la especificación del texto y del dato fijo en controles de botones deradio de formularios y menús formulario.

6.2.1. Sintaxis de las cadenas de formato

En las cadenas de formato todos los caracteres que no estén posicionadosentre tantos por ciento son interpretados como texto a concatenar. Losidentificadores de los campos se escriben como en las fórmulas, es decir,entre tantos por ciento. Por ejemplo:

Tel.: %CLIENTE.TELEFONO% Fax: %CLIENTE.FAX%

Da como resultado la cadena siguiente: Tel.: TTT Fax: FFF, donde TTT seríael teléfono del cliente y FFF el fax del cliente. Advirtamos que no se utilizael operador +. El equivalente a una expresión fórmula sería:

06 Asistentes

Page 18: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

422 423 VELAZQUEZ VISUAL

“Tel.: “+%CLIENTE.TELEFONO%+” Fax:”+%CLIENTE.FAX%.

6.2.2. El asistente para la edición de cadenas6.2.2. de formato

El asistente de cadenas de formato está presente en todos los controles deedición donde está permitido emplear cadenas de formato. Al pulsar el bo-tón Asistente visualizaremos la ventana del asistente.

Principalmente se compone de un cuadro de edición donde se escribe laexpresión de la cadena de formato. En este área el asistente insertará iden-tificadores de campo, de variables globales, etc. Los botones Operadores yFunciones no están activos, pues para las cadenas de formato no se pue-den utilizar ni los operadores ni las funciones de fórmulas.

Los botones de la barra del asistente permiten acceder a una lista de:

Campos (F5).

Variables Globales (F6).

Variables Locales (F7).

Variables del Sistema (F8).

Cortar (Control + X), Copiar (Control + C) y Pegar (Control + V).

Deshacer (Control + Z).

ASISTENTE PARA EDICIÓN DE CADENAS DE FORMATO

Campos

Variables Globales

Variables Locales

Variables del Sistema

Cortar, Copiar yPegar

Deshacer

Page 19: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

Verificar (F9): este botón comprueba que la sintaxis de la fórmula sea co-rrecta. En caso contrario presentará una ventana con el error cometido.

Ayuda (F1).

Aceptar (Intro): guarda los cambios realizados en la fórmula.

Cancelar (Esc): cancela los cambios llevados a cabo en la fórmula.

6.2.3. Subcadenas de formato

Mediante las subcadenas de formato ajustamos la visualización de la infor-mación. Para ello disponemos de unos formateadores que son utilizadosconjuntamente con el identificador del campo, precedidos del símbolo # (AltGr + 3). La sintaxis es la siguiente:

%ID_CAMPO#F%

ID_CAMPO: es el identificador del campo.

F: es el formateador.

Para crear una subcadena de formato tenemos dos opciones: escribirla direc-tamente o a través de la opción correspondiente que aparece al seleccionar uncampo, tanto en el asistente para la edición de fórmulas como en el asistente pa-ra la edición de cadenas de formato. En función del tipo de campo selecciona-do se presentarán las opciones de subcadenas de formato que correspondan.

Cuando se hace a través de la opción del asistente, al ir seleccionando lasdistintas subcadenas de formato, Velázquez irá componiendo la fórmulaque corresponda.

En el anexo I del manual encontraremos una relación de los formateadorescon los que podemos trabajar en Velázquez Visual.

Ejemplo: Subcadenas de formato

Queremos visualizar en un formulario el campo CODIGO (numérico), con unalongitud de 8 caracteres, alineado a la derecha y rellenando con ceros por laizquierda (ej.: 00000158). Para ello habrá que seguir los pasos siguientes:

06 Asistentes

Verificar

Ayuda

Aceptar

Cancelar

e

Cuestiones1. En una aplicación queremos ver un precio en tres monedas distintas: eu-

ros, libras y dólares. Para ello creamos un formulario en el que introdu-cimos el precio en euros, de modo que los campos precio en libras yprecio en dólares sean de tipo fórmula y se calculen directamente al me-ter el precio en euros. En el formulario queremos que aparezcan los tresprecios en tres cadenas de formato que nos indiquen la moneda que es.

Page 20: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

424 425 VELAZQUEZ VISUAL

Insertamos un control de edición de campo en el formulario.

En las propiedades de dicho control de edición seleccionamos la opciónManual.

Pulsamos el botón Asistente para abrir el asistente de creación de cadenasde formato.

Una vez abierto, pulsamos el botón Campos de la barra de botones pa-ra acceder a la lista de campos.

Seleccionamos el campo %CODIGO%. En la parte inferior de la ventana sepresentan las distintas opciones para formatear campos numéricos.

Campos

e

Page 21: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

En Justificar seleccionamos la opción Derecha con ceros a la izquierda.

En Longitud escribimos 8.

06 Asistentes

e

Page 22: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

426 427 VELAZQUEZ VISUAL

Al aceptar, la fórmula se habrá convertido en %CODIGO#C8%.

Con esto, el campo código aparecerá en el formulario con el formato querequeríamos.

e

Page 23: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables

6.2.4 Conversión automática de datos y secuenciasde escape en cadenas de caracteres

Velázquez Visual realiza una conversión automática cuando pasamos datosde un tipo a datos de otro tipo (dato numérico en una cadena de texto, fechaen una cadena de texto, hora en una cadena de texto, hora en numérico).

Por otro lado, para introducir en el interior de una cadena de caracteres al-gunos caracteres especiales imposibles de representar mediante texto, uti-lizaremos las secuencias de escape. En tiempo de ejecución, éstas se sus-tituyen por los caracteres adecuados.

ResumenLas cadenas de formato sirven para concatenar textos y campos sin utilizaroperadores aritméticos, formateando la visualización de la información. Sepueden usar en rejillas, en tubos de lista, tubos de ficha, formularios, etc.

Para editar las cadenas de formato contamos con el Asistente para ediciónde cadenas de formato. Desde él tenemos acceso a campos de la tabla yde tablas enlazadas, variables globales, variables locales y variables de sis-tema del proyecto.

Con las subcadenas de formato ajustamos la visualización de la informa-ción, para lo que disponemos de formateadores. Podemos escribirlas di-rectamente o al seleccionar un campo, tanto en el asistente para la ediciónde fórmulas como en el asistente para la edición de cadenas de formato.

Velázquez Visual cuenta con formateadores alfabéticos, numéricos, de fe-chas y de horas. También hay subcadenas específicas para informes.

Cuando pasamos datos de un tipo a datos de otro tipo, Velázquez realizauna conversión automática de los mismos.

Gracias a las secuencias de escape introducimos, en el interior de cadenasde caracteres, algunos caracteres especiales que no se pueden represen-tar mediante texto (retrocesos, comillas, saltos de página, etc.).

06 Asistentes

Cuestiones1. Escribir la subcadena de formato necesaria para ver el contenido de

un campo Precio con dos decimales, separador de miles, de modoque aparezca pegado a la derecha y rellenando con ceros a la iz-quierda hasta llegar a diez caracteres.

2. Escribir la cadena de formato para que un campo Fecha de un re-gistro, que contiene la fecha 2-8-1998 (domingo), se vea en una reji-lla como “La fecha es dom 2 de agosto de ‘98”.

Page 24: Asistentes - Velneo...2008/09/06  · funciones, accesos a los campos de la tabla de datos en curso y a sus maestros, acceso a las variables globales del proyecto, a las variables