OPUS Expresiones y las columnas
Casi todas las columnas en la vista están referidas a un campo de la base de datos y específicamente a un campo de un archivo. Cada campo de la base tiene un nombre específico, éste puede verse claramente en la lista de las columnas al configurarlas.
Observe que las listas de la parte superior del cuadro central le indican los operadores que pueden incluirse dentro de las expresiones.
Las expresiones se apegan a la sintaxis Dbase. El botón Verificar revisará que la expresión sea válida.
Seleccione cualquiera de las tablas disponibles para identificar los campos que la componen, observe que la lista de los campos muestra el nombre del campo, su tipo que puede ser N para numérico, C para campos tipo carácter (o cadenas), M para campos memo, D para campos fecha y L para campos lógicos ó booleanos. Por último los campos mostrarán su tamaño o longitud y número de decimales (en caso de campos numéricos). De doble clic sobre el campo deseado para que pase a formar parte de la expresión.
Ahora bien, como ya lo hemos mencionado algunas columnas que pueden verse aquí no corresponden a un campo de la base de datos, pensemos por ejemplo en la columna del precio en letra; internamente en OPUS se ejecuta un procedimiento que realiza la conversión del formato del precio unitario de numérico a carácter.
Las columnas que sean generadas como resultado de una expresión no serán actualizables o capturables. Es necesario advertir que si se requiere una columna que signifique otro campo físicamente, éste tendrá que ser añadido a la base de datos.
El nombre de la tabla agrega un sufijo a el nombre de los campos por ejemplo. Seleccione el campo NOMBRE de la tabla P.
Realmente el nombre es P->NOMBRE, este campo corresponde a la clave de los insumos.
Analizando las funciones permitidas, existen expresiones que retornan un número por ejemplo una operación aritmética, también pueden regresar una fecha como valor, otras expresiones que devuelven un valor lógico verdadero o falso, o bien una cadena de caracteres alfanumérica. Dependiendo del valor de una expresión será posible aplicar las funciones destinadas para ello. En esta caja las funciones se dividen en cuatros grupos:
Cadena
‘ ‘ Las comillas encierran cualquier texto
Concatena texto
– Resta texto de otro
LTRIM(expC) Elimina los caracteres en blanco de la expresión expC
STR(expN) Convierte la expresión expN numérica en una cadena
SUBSTR(CAD, ini, cuantos) Regresa una subcadena de la cadena CAD a partir de la posición ini y hasta cuantos-1 caracteres adelante
TRIM(expC) Elimina espacios en blancode toda la cadena expC
UPPER(expC) Convierte caracteres de la expresión expC en mayúsculas
Numéricas
^ Exponenciación
* Multiplicación
/ División
Suma
– Resta
RECNO() Recupera el número de registro en la base de datos
VAL(expC) Convierte la expresión expC alfanumérica en expresión numérica
Lógicas
( ) paréntesis
< menor que
> mayor que
= igual
<> diferente
<= menor o igual
>=mayor o igual
.T. Verdadero
.F. Falso
NOT No ó negación
AND y lógico
OR o lógico
IIF(expL , expv , expf) Si la expresión lógica expL es verdadera entonces regresa la expresión expv, de lo contrario regresa expf. Las expresiones de retorno deben ser del mismo tipo (si las expresiones de regreso son alfanuméricas entonces deben ser del mismo tamaño)
Fecha
CTOD() Convierte una expresión carácter a fecha
DATE() Recupera la fecha actual
DAY() Recupera el año
DTOC(expC) Convierte una expresión carácter a fecha
DTOS(expF) Convierte una fecha expF a cadena
MONTH() Recupera el mes actual
STOD(expC) Convierte una cadena expC a tipo fecha
YEAR(expD) Trae el año de la fecha expD