A continuación se detallan las funciones que pueden ser utilizadas dentro de un elemento de tipo expresión.
En la explicación de la forma de utilización, se utilizará la siguiente sintaxis básica:
NombreFunción ( <parametro1>, [parametro2] … <parámetro n>)
En esta sintaxis los parámetros señalizados como <> son obligatorios. Por otra parte los parámetros enmarcados con [ ] son opcionales.
En la explicación de la sintaxis, se darán nombres entendibles y sencillos a los parámetros en el entendido de que durante la operación se deberán incluir valores o datos, según sea la necesidad.
Funciones de Fecha | |||
Función
|
Utilización
|
Ejemplos
|
|
Year Obtiene el año dentro de un valor tipo fecha |
Sintaxis: Year( <fecha> ) |
Year( FECHANACIMIENTO ) = 1998 |
|
MesTexto Convierte un mes, de un valor numérico a Expresión Textual |
Sintaxis: MesTexto( <número de mes> ) |
MesTexto( 2 ) = 'Febrero' |
|
DiasTexto Convierte un día, de valor numérico a Expresión Textual |
Sintaxis: DiasTexto( <día> ) |
DiasTexto( 12 ) = 'DOCE' |
|
AnioTexto Convierte un año, de un valor numérico a expresión Textual |
Sintaxis: AnioTexto( <año> ) |
AnioTexto( 2010 ) =
'DOS MIL DIEZ' |
|
DiaSemana Devuelve el nombre del día de la Semana |
Sintaxis: DiaSemana( <fecha> ) |
DiaSemana( FECHAACTUAL ) = Lunes |
|
Time Devuelve la hora actual |
Sintaxis:
Time |
Time = 04:30:33 pm |
|
Date Devuelve la fecha actual del sistema, es decir, la fecha de la computadora donde se está ejecutando la aplicación. No confundir con la hora del servidor que pudiera ser diferente. |
Sintaxis:
Date |
Date = 28/03/2012 |
|
InDate Obtiene los valores de día, mes y año, respecto a una fecha conocida. |
Sintaxis: InDate( <fecha>, <día / mes / año> ). El segundo parámetro puede ser uno de los siguientes valores:
Esta función es similar a Year, pero a diferencia de
aquella, aquí podemos obtener cualquier valor (día, mes
o año). |
InDate( '15/06/2008', 1 ) = 2008 |
|
IBDate Devuelve un valor de fecha compatible con los estándares de Firebird / Interbase. El resultado de esta función puede utilizarse para hacer llamados a consultas SQL, cuando se usa la función SelectSQL. |
Sintaxis: IBDate( <fecha> ) |
IBDate( '15/06/2008', 1 ) = '15-jun-2008' |
|
FechaNumerica Devuelve un valor de fecha en su representación numérica, el cual puede ser utilizado en comparaciones entre dos fechas difrentes. |
Sintaxis: FechaNumerica( <fecha> ) Usualmente un valor de fecha está representado con base en los conceptos dell calendario gregoriano, día, mes y año. Separados por un caracter o símbolo diferenciador tal como un guión o una diagonal. Esta combinación de elementos no puede ser utilizada para hacer comparaciones matemáticas entre dos fechas. |
Obtiene el valor numérico para la fecha actual.
FechaNumerica( DATE ) = 5004406966667 El siguiente ejemplo hace la comparación entre la fecha de un pago y la fecha que originalmente fue pactada para su vencimiento, y muestra una leyenda descriptiva...IF( FechaNumerica(FECHA_PAGO)> FechaNumerica(FECHA_VENCIMIENTO), 'Pagado fuera de tiempo', 'Pagado a tiempo' ) |
|
Funciones de Manejo de Texto ("cadenas de caracteres / strings") | |||
Formato Convierte un número a texto, de acuerdo a un formato estándar de Windows (tipo Excel). |
Sintaxis: Formato( <cantidad ó número>,<mascarilla> ) |
Formato( CANTIDAD, '#,###0.##00' ) |
|
Espacio Separa un valor alfanumérico intercalando espacios o caracteres intermedios. |
Sintaxis: Espacio( <texto original>, [caracter a insertar] ) Si no especifica un caracter a insertar, por default se
considera un espacio. |
Espacio( 'MARIA' ) = 'M A R I A' |
|
LlenaCarDerecha / LlenaCarIzquierda LlenaCarDerecha Llena con algún símbolo o Caracter a la derecha de un texto, hasta que el texto resultante alcance cierta longitud. LlenaCarIzquierda Llena con algún símbolo a la izquierda de un texto, hasta que el texto resultante alcance cierta longitud |
Sintaxis: LlenaCarDerecha o LlenaCarIzquierda( <texto_original>, <símbolo>, <longitud que deberá alcanzar> ) |
LlenaCarDerecha( NOMBRE, '-', 25
) LlenaCarIzquierda( NOMBRE, '*',
25 ) |
|
ObtieneLinea Obtiene una línea específica de un campo de texto con varias líneas. |
Utilícese para extraer líneas de los conceptos de cobro
concentrados, que contiene los datos de varios pagos en el
mismo campo.
Sintaxis: |
ObtieneLinea( CONCEPTOS, 2 ) |
|
Str Convierte una expresión de tipo numérico a tipo texto. |
Sintaxis: Str( <valor o campo de datos numérico> ) |
'A LOS ' + Str( DIAS ) + ' DEL
MES DE ' +.... |
|
Pretty Esta función convierte un texto en su representación similar pero en minúsculas con letras capitales. Opcionalmente, indique un número 1 (UNO) como segundo parámetro, para que cada inicial de palabra sea convertida en mayúscula. |
Sintaxis: Pretty( <texto original>, [primera inicial de palabras en mayúscula]) |
Pretty ( 'JOSE PÉREZ' ) = 'Jose
pérez' |
|
Copy Esta función permite extraer alguna sección dentro un texto. |
Sintaxis: Copy( <texto original>, <iniciar en>, <cuantos caracteres> ) |
Copy( 'JOSE PÉREZ', 1, 4 ) =
'JOSE' |
|
Derecha Esta función permite extraer algún número de caracteres del lado derecho de un texto. |
Sintaxis: Derecha( <texto original>, <cuantos caracteres del lado derecho> ) |
Derecha( 'JOSE PÉREZ', 5 ) =
'PÉREZ' |
|
Lower Esta función es similar a la anterior, pero convierte un texto en su representación en minusculas. |
Sintaxis: Lower( <texto original> ) |
Lower( 'JOSÉ PEREZ' ) = 'josé pérez' |
|
Upper Esta función convierte un texto en su representación similar pero en MAYÚSCULAS. |
Sintaxis: Upper( <texto original> ) |
Upper( 'Jose Pérez' ) = 'JOSE PÉREZ' |
|
CantidadesATexto Convierte una cantidad a su expresión textual |
Sintaxis: CantidadesATexto( <cantidad> ) |
CantidadesATexto(100.50) = 'CIEN PESOS 50/100 M.N.' Nota: El resultado se adapta a las monedas de otros países como quetzales, reales, soles, etc. |
|
LongitudTexto Devuelve la longitud en caracteres de un campo de datos o cualquier expresión que haga referencia a una cadena de caracteres. |
Sintaxis: LongitudTexto( <campo de datos o un texto> ) |
LongitudTexto( 'PEDRO' ) = 5 LongitudTexto( NOMBREASIGNATURA
) = 13 |
|
Funciones de Manejo Variables | |||
Var Permite la utilización de variables nombradas. Pueden almacenarse valores tanto numéricos como alfanuméricos. |
Sintaxis:
Existen varias posibilidades de uso de esta función u
operadores: |
1. Define una variable llamada AdeudoTotal y la inicia
con el valor numérico CERO. Var( 'AdeudoTotal', '=', 0 )
2. A la misma variable AdeudoTotal le incrementará el valor por lo que contenga el campo ADEUDO. Var( 'Adeudo', '+', ADEUDO )
Para obtener o imprimir el contenido de la variable Adeudo. Var(
'Adeudo' )
|
|
VarNum o VarAlfa Permite la utilización de variables alfanuméricas VarNum o variables alfanuméricas VarAlfa. Se permite usar hasta 100 variables con un índice relativo a la posición de memoria o variable que se desea utilizar. |
Importante: Se ha comprobado que la legibilidad de un formato para efectos de mantenimiento a largo plazo se dificulta con el uso de estas funciones, por ello ya no está recomendado, deberá usar en su lugar la función Var. Sintaxis:
|
En los ejemplos se utiliza la variable numérica 3: Para almacenar un valor: VarNum( 3, 1, NCALIFICACION ) Para consultar un valor:De consultar valor = IF( VarNum(3,0) = 5, 'ROJO', '' ) |
|
ResetVars Inicializa todos los espacios posibles para variables y las variables con valores nulos o vacíos. Con esto se pueden escribir valores e iniciar cualquier cálculo de forma segura. |
Sintaxis: ResetVars El uso de esta función evita utilizar inicialización de variables de forma individual. Al usar ResetVars cualquier variable definida con la función Var será eliminada de memoria. |
ResetVars El uso de ResetVars se recomienda dentro de la sección título, que se ejecuta antes de cualquier otra sección. |
|
Funciones Estadísticas | |||
Sum (Suma) Efectúa la sumatoria de un dato de tipo numérico. |
Sintaxis: Sum( campo de datos númerico ) |
SUM( CANTIDAD) |
|
Average (Promedio) Efectúa el promedio de un dato de tipo numérico. |
Sintaxis: Average( campo de datos numérico ) |
Average( EDADES ) = 12 |
|
RecNo Utilizado para mantener el conteo del los registros que se incluyen en algún listado o reporte. |
Sintaxis: RecNo( <Acción> ) Acción puede tener 3 valores: El valor que devuelve es un valor textual o de tipo
caracter, por lo cual no se podrán realizar
operaciones aritméticas. |
||
RecNoNumero | Lo mismo que la función RecNo, solo que esta función
devuelve valores numéricos o de tipo número, y por lo
tanto SI PERMITE realizar operaciones aritméticas. |
||
Max Retorna el número máximo de una serie almacenada en un campo de datos. |
Sintaxis: Max( campo de datos numérico ) |
Max( ADEUDO ) |
|
Min Retorna el número mínimo de una serie almacenada en un campo de datos. |
Sintaxis: Min(campo de datos numérico ) |
Min( ADEUDO ) |
|
Funciones específicas para datos de GES Educativo | |||
DescripcionNivel Devuelve la descripción completa de un nivel educativo de acuerdo a un código de nivel. |
Sintaxis: DescripcionNivel( <Código del Nivel> ) Nota: Para más información consultar el tema
“Configuración de Niveles...”. |
DescripcionNivel( NIVEL ) = 'Secundaria'. Resultado: 'SECUNDARIA', siendo el código del nivel SEC. |
|
CalculaEdad Calcula la edad en años de una persona, requiere como parámetro la fecha de nacimiento del alumno. |
Sintaxis: CalculaEdad ( <fechanacimiento>, [fecha de referencia para calculo] ). La fecha de referencia para cálculo es opcional, si no
se especifica el sistema utilizará la fecha actual de la
computadora para calcular la edad |
CalculaEdad( '05/11/1993') = 20. |
|
CicloEscolar Devuelve los valores del ciclo escolar activo (también llamado ciclo escolar de trabajo), según el parámetro requerido. |
Sintaxis: CicloEscolar( <dato requerido> ). Se puede solicitar alguno de los siguientes valores:
|
CicloEscolar( 'INICIAL' ) = 2009 |
|
GradoTexto Devuelve la representación textual de un grado y su denominación respecto a un nivel educativo o sección. |
Sintaxis: GradoTexto( <nivel>, <grado> ). |
GradoTexto( 'PRI', 2 ) =
'Segundo Año' |
|
CalificacionATexto Convierte una calificación numérica a su
representación textual
|
Sintaxis: CalificacionATexto( <calificación>, [decimales], [separador de expresión decimal], [incluir CERO]) p.e. CalificacionATexto( 9.30, 2 ) =
'NUEVE PUNTO TREINTA' Observaciones: Por
default esta función no incluye el valor CERO cuando la
calificación tiene CERO DECIMAS (p.e. 8.0), si Usted
desea que la incluya, coloque el parámetro [incluir
CERO] con valor de 1, como en los ejemplos. |
CalificacionATexto( 10.0, 1,
'PUNTO', 1 ) = 'DIEZ PUNTO CERO' |
|
ObtenerAdeudo Permite incorporar en cualquier formato la cantidad de adeudos que presenta un alumno. |
Sintaxis: ObtenerAdeudo( <id alumno>, <detalle>, <año>, <mes>, <concepto> ).
Nota. El identificador del alumno es un campo que está
disponible en la mayoría de los reportes y se representa
como NUMEROALUMNO. |
ObtenerAdeudo( 100022, 'CANT' )
= 2500.00 |
|
HorarioCurso Permite conocer el horario de un curso/clase particular |
Sintaxis: HorarioCurso( <código del curso>, [incluir_aula] )
|
HorarioCurso( "A1022-B", 1) = 'Miércoles de 15:00 a 17:00, Viernes de 17:00 a 19:30 (Aula: 17 Laboratorio de Física' Normalmente Usted dispondrá del campoo CODIGO_CURSO, por lo cual introducirá una expresión como esta:HorarioCurso( CODIGO_CURSO ) = 'Martes de 14:00 a 15:30, Jueves de 14:00 a 15:55' |
|
PromedioXGrupo Permite conocer el promedio simple de los alumnos un grupo. Puede ser de una asignatura o de varias de ellas. Puede ser de algún criterio de evaluación en particular, o de lo contrario se toma el criterio de mayor. Vea criterios de evaluación. |
Sintaxis: PromedioXGrupo( <código del grupo>, <Plan de Estudios>, <Aspecto evaluado>, <Etapa del plan de Estudios>, <grado>, <clave de asignatura>, <criterio de evaluación>, <Sólo oficiales>)
Este promedio VERTICAL se calculará con base en los parámetros de Planes de Estudio para considerar los decimales y el redondeo que aplique. Solo considerará las asignaturas que hayan sido marcadas como Promediables. Vea como Configurar una asignatura como Promediable. Vea como Configurar un Plan
de Estudios. |
Para promediar todas las asignaturas de 2o.
grado, del grupo SEC2A: PromedioXGrupo( 'SEC2A', 'PlanA', 'A', '', 2, '', 'C', 'N' ) |
|
PromedioXCurso Permite conocer el promedio simple de los alumnos en un curso. Puede ser de una asignatura o de varias de ellas. |
Sintaxis: PromedioXGrupo( <ciclo año inicial>, <ciclo año final>, <ciclo periodo>, <código del curso>, <criterio de evaluación> )
|
Para obtener el promedio final de los alumnos de un
curso: PromedioXGrupo( INICIAL, FINAL, PERIODO, CODIGO_CURSO ); Para obtener el promedio de los alumnos de un curso, del primer parcial (considerando que el primer parcial esté evaluado en el criterio de evaluación 'B' ).PromedioXGrupo( INICIAL, FINAL, PERIODO, CODIGO_CURSO, 'B' ); |
|
PromedioXAlumno Permite conocer el promedio simple de un grupo. Puede ser de una asignatura o de varias de ellas. |
Sintaxis:
Este promedio VERTICAL se calculará con base en los
parámetros de Planes de Estudio para considerar los
decimales y el redondeo que apliqué. Vea como Configurar
un Plan
de Estudios. |
P.e. Para promediar todas las asignaturas de
todos los grados de un alumno. PromedioXAlumno( 1244, 'SEC_SEP', 'A', '', '', 0, 'C', 'N' ). |
|
AsignaturaNombre Permite obtener el nombre de una asignatura o materia. |
Sintaxis: AsignaturaNombre(<plan>,<aspecto que se evalúa>,<etapa>,<clave_asignatura>)
|
El ejemplo más usual será: AsignaturaNombre( ID_PLAN, ID_TIPOEVAL, ID_ETAPA, CLAVEASIGNATURA ) Resultado Posible: MATEMATICAS / HISTORIA UNIVERSAL, etc. |
|
AsignaturaNombreOptativo Permite obtener el nombre optativo o nombre secundario de una asignatura o materia. |
Sintaxis: AsignaturaNombreOptativo(<plan>,<aspecto que se evalúa>,<etapa>,<clave_asignatura>) En el espacio de nombre optativo o secundario, pueden colocarse equivalencias en otros idiomas, descripciones o incluso claves especiales. |
AsignaturaNombreOptativo( ID_PLAN, ID_TIPOEVAL, ID_ETAPA, CLAVEASIGNATURA ) Resultado Posible: MATHEMATICS / UNIVERSAL HISTORY, etc. |
|
AsignaturaEnReporte Permite conocer los datos de las asignaturas que se incorporarán en el Reporte Concentrado de Calificaciones por Grupo. |
Nota Importante: Esta función solamente puede
ser utilizada en el Reporte Concentrado de
Calificaciones por Grupo. En ese reporte las
asignaturas que se incorporan varian con relación a la
decisión del usuario, por tal motivo, ante tal
incertidumbre un formato de reporte puede ser difícil de
adaptar o personalizar al desconocer las asignaturas que
el usuario selecciona.
Sintaxis:
El dato puede ser cualquiera de los siguientes números:
Para comprender mejor el significado de estos datos,
obsérvelos y aplíquelos en el contexto del Reporte
Concentrado. |
AsignaturaEnReporte(
1, 4 ) - Nos devolverá la Clave de la PRIMERA Asignatura
que se incorpora al reporte. AsignaturaEnReporte( 2, 5 ) - Nos proporciona el nombre completo de la SEGUNDA asignatura que contiene el reporte. AsignaturaEnReporte( 1, 10 ) - Nos devuelve la calificación que obtuvo el alumno en la PRIMERA asignatura del reporte. Opcionalmente se puede utilizar el sinónimo AsigRep por ejemplo: AsigRep( 1, 10 ) |
|
PlanEstudiosNombre Permite obtener el nombre de un plan de estudios |
Sintaxis:
PlanEstudiosNombre(<plan>) Generalmente será utilizado el campo ID_PLAN, para incorporar en esta función. |
PlanEstudiosNombre( ID_PLAN ) Resultado Posible: MAESTRIA EN CIENCIAS. |
|
PeriodoEvalNombre Permite obtener el nombre de un periodo de evaluación. Esto solo aplica cuando los planes de estudio están divididos por periodos académicos. Vea configuración de planes de estudio. |
Sintaxis:
PeriodoEvalNombre(<id del periodo>) Como parámetro generalmente se usará el campo ID_PERIODO o en su defecto algún valor numérido correspondiente a tal periodo. |
Los siguientes ejemplos muestran dos resultados
probables.
PeriodoEvalNombre( ID_PERIODO ) = '1er Bimestre' PeriodoEvalNombre( 2 ) = '2nd Period' |
|
ObtenerObsCalif Esta función permite obtener esa nota de observación e incorporarla en algún formato de reporte, como puede ser una Boleta o Kárdex. Usted puede configurar cualquier plan de estudios para permitir que se incorporé una nota de observación junto con cada calificación. P.e. Calificación: 10 - Nota de Observación: FELICIDADES!! MUY BUEN ESFUERZO, LO HICISTE MUY BIEN!!.
|
Sintaxis:
ObtenerObsCalif( <Número de Alumno>, <Plan de Estudios>, <Aspecto evaluado>, <Etapa del plan de Estudios>, <clave de asignatura>, <tipo de examen>, <criterio de evaluación> )
|
Para obtener las observaciones de una calificación
en un kárdex puede utilizar la siguiente expresión, en
este caso es el criterio de evaluación "A". ObtenerObsCalif( NUMEROALUMNO, ID_PLAN, 'A', ID_ETAPA, CLAVEASIGNATURA, TIPOEXAMEN, 'A' ) |
|
AlumnosXCurso Devuelve el número de alumnos que están inscritos en un curso/clase. Puesto que en un curso pueden coexistir alumnos de varios niveles educativos, opcionalmente podemos indicar que nos proporcione el número de los alumnos de algún nivel educativo en específico. |
Sintaxis: AlumnosXCurso( <código del curso>, [<código del nivel educativo>] )
|
Para conocer cuantos alumnos están inscritos en el curso o clase. AlumnosXCurso( 'INGLESI-A' ) Para conocer cuantos alumnos de la licenciatura en IDIOMAS están inscritos en el curso o clase.AlumnosXCurso( 'INGLESI-A', 'LICIDIOM' ) |
|
AlumnosXGrupo Devuelve el número de alumnos que están inscritos en un grupo. |
Sintaxis: AlumnosXGrupo( <los 3 datos del ciclo escolar>, <código del grupo>, <incluir bajas> )
|
Para conocer los alumnos inscritos en el grupo
SEC2A, del ciclo 2004-2005 (sin incluir bajas). AlumnosXGrupo( 2004, 2005, 0, 'SEC2A', 'N' ) |
|
AlumnosNivelesEnCurso Devuelve la cantidad de alumnos que están inscritos a un curso, indicando detalladamente cuantos alumnos por nivel. |
Sintaxis:
|
Para conocer los alumnos inscritos en un curso, del ciclo 2004-2005. AlumnosNivelesEnCurso( 2004,
2005, 0, 'SEC2A', CODIGOCURSO) |
|
ObtenerProfesor Obtiene el nombre de un profesor con diferentes posibilidades. |
Esta función tiene cuatro posibilidades: 1) Obtiene el Nombre del Profesor con base en una clave del profesor conocida. Es la función más básica. Sintaxis: ObtenerProfesor( <Clave del Profesor> ).
2) Obtiene el Nombre del Profesor titular o suplente de un grupo. Esta modalidad NO OBTIENE los profesores que imparten las asignaturas, sino que solamente se limita a obtener el nombre del profesor Titular o Suplente del Grupo. Sintaxis: ObtenerProfesor( [<datos del ciclo escolar>], <Código del Grupo>, <Titular o Suplemente> )
3) Obtiene los datos del profesor que imparte
alguna asignatura.
4) Obtiene el Nombre del Profesor titular o suplente de un curso. En esta modalidad siempre se obtiene la información del ciclo escolar de trabajo, por lo tanto no hay necesidad de indicar parámetros del ciclo escolar. Sintaxis: ObtenerProfesor( <Código del Curso>, <Titular o Suplemente>, 'CURSO')
|
1) Obtiene los datos del profesor que imparte
alguna asignatura.
ObtenerProfesor( 'SEC1A', 'OF_SEC', 'GRAL', 'A', 'INGLES1' ) = 'JUAN LOPEZ PEREZ' 2) Obtiene el Nombre del Profesor con base en una clave del profesor conocida.ObtenerProfesor( 'PF00032' ) = 'JUAN LOPEZ PEREZ' 3) Obtiene el Nombre del Profesor titular o suplente de un grupoObtenerProfesor( 2005, 2006, 0, 'SEC1A', 1 : = 'JUAN LOPEZ' ObtenerProfesor( 2005, 2006, 0, 'SEC1A', 0) = 'JOSE LUIS SANCHEZ' 4) Obtiene el Nombre del Profesor titular o suplente de un curso. ObtenerProfesor( 'INVEST1', 1,
'CURSO' ) = 'MARISSA RIVERA' |
|
DigitoVerificador Está es una función que analizará un texto y devolverá una serie de caracteres o dígitos verificadores, de acuerdo a algoritmos conocidos. |
Sintaxis: Los distintos parámetros son:
Esta es una función avanzada, no deberá utilizarse para sustituir la funcionalidad de referencias bancarias. Pida apoyo a su asesor de servicio para analizar las posibilidades en caso de que necesita utilizar algún proceso con dígitos verificadores. |
En base 10 standard. DigitoVerificador( '0123456789' ) = 7 En base 97, con factores de ponderación.DigitoVerificador( '00002005 07 01 006086', '97', 'I19:17:13:25:23' ) = 60 |
|
Redondear Permitirá redondear un valor numérico (usualmente una calificación), según los parámetros dados. |
Sintaxis: Los distintos parámetros son:
|
Redondear( CALIFICACION, 2, 0.6, 5, 10, 6, 'N' ) El ejemplo anterior, resultará en un valor con 2 decimales que se redondeará a partir de 0.6. Considerando calificaciones de 5 a 10, siendo 6 la mínima aprobatoria. En el ejemplo NO SERAN redondeadas las calificaciones reprobatorias (menores a 6). |
|
TruncarNumero Esta función tomará un número de punto flotante con decimales (p.e. 2343.4444) y truncará (cortará) los decimales después de la posición indicada. |
Sintaxis: TruncarNumero( <numero>, <decimales> ) Los parámetros son:
|
El siguiente ejemplo resultará en el mismo valor entero pero se tomarán solo dos decimales. TruncarNumero( 112.55566, 2 ) = 112.55 Este nuevo ejemplo, usa una variable o campo de datos llamado VALOR que contiene un número en punto flotante y lo truncará dejando solo un decimal. VALOR = 8.4656676 |
|
VerificarSeriacion |
Esta función verificará toda la cadena de seriación de una asignatura, incluyendo las 5 posibles seriaciones que pueden tener. ¿Qué es una cadena de seriación? (Lo cual se interpreta como: Mátemáticas Financieras está seriada con Matemáticas Empresariales -primera en la cadena-, la cual a su vez está seriada con Matemáticas Básicas -segunda en la cadena-) Sintaxis: Los parámetros son:
|
Ejemplo utilizando campos disponibles en un reporte). TruncarNumero( NUMEROALUMNO, ID_PLAN, ID_TIPOEVAL, CLAVEASIGNATURA, 1 ) = 8.00 Ejemplo utilizando combinación de campos y valores constantes).TruncarNumero( NUMEROALUMNO, 'SEC', 'A', 'MATFIN', 2 ) = 'MATBAS' |
|
Funciones
de
Tipo Financiero |
|||
TotalXFormaPago Permite obtener la cantidad total cobrada de alguna forma de pago, durante una sesión de caja determinada o de algún cobro específico. De forma más específica podemos decir que puede utilizarse para obtener el total cobrado por forma de pago de uno o varios días, o bien, obtenerlo por un pago de una persona. |
Sintaxis: TotalXFormaPago( <fecha>, <caja>, <sesioncaja>, <código de la forma de pago>, [folio del comprobante/recibo de caja] ) Ver configuración de formas de pago »». |
1) Para obtener el total cobrado en Efectivo de una
sesión de caja: TotalXFormaPago( FECHA, CAJA, SESIONCAJA, 'EFE' ) = 22500.00 2) Para obtener el total cobrado en Depósito Bancario del cobro emitido con el folio 24455: TotalXFormaPago( FECHA, CAJA, SESIONCAJA, 'DEP', '24455' ) = 3450.00 |
|
MetodoPagoFactura Obtiene una cadena de texto con el método de pago y el numero de cuenta Esta función solo tiene relevancia en un formato de representación impresa de una factura. |
Sintaxis: MetodoPagoFactura( <fecha de la factura>, <serie>, <número de factura>, [incluir la cuenta] )
|
MetodoPagoFactura(
FECHA_FACTURA, SERIE, FACTURA, 'S' ) = Pago con
Tarjeta, Cuenta: 3498 |
|
Otras funciones de Uso General | |||
Numero ó Num ó NumeroDesdeTexto | Permite convertir un valor alfanumérico que contiene
números a su representación en datos numéricos puros.
Sintaxis: Para operaciones aritméticas es necesario tener valores numéricos puros, por lo cual en ciertos casos deberá realizarse esta conversión. Nota: En la mayoría de formatos con calificaciones,
todas ellas se obtienen en representación alfanumérica,
pues permite incluir valor como SD y NP. Para
utilizarlas en expresiones aritméticas, recuerde primero
convertir la calificación a números puros. |
Numero( '123' ) = 123 |
|
IF (SI) |
Evalúa una condición devolviendo el primer valor cuando
la condición se cumple y el segundo valor cuando no se
cumple.
Sintaxis: |
IF ( NCALIFICACION <= 5, 'REPROBADO', 'APROB') |
|
TypeOf | Esta función permite conocer el tipo de dato de
cualquier campo o expresión.
Sintaxis: Nota: Devolverá ERROR cuando no identifique el tipo de
dato. |
TypeOf( 'JOSE PEREZ' ) =
'STRING' |
|
Int | Devuelve el valor entero de un número con decimales.
Sintaxis: |
Int( 345.66 ) = 345 |
|
PageNumber | Imprime el número de página del reporte. |
||
SelectSQL |
Función muy poderosa que permite realizar consultas de selección en la base de datos. Por sus amplias posibilidades permite extender los límites del editor de formatos. Importante: Para utilizar esta función se requiere un buen grado de entendimiento de lenguaje SQL para bases de datos. Se requiere también, un muy buen dominio de los conceptos alrededor de los reportes, formatos, campos, entre otros, por lo tanto a pesar de que es muy poderosa puede resultar inapropiada para la mayoría de los usuarios. Sus asesores de soporte y asesores de sistemas, son las personas más apropiadas para crear y utilizar con eficiencia las instrucciones de SQL. Sintaxis: Uso de variables de reemplazo (Nuevo !!)
Dentro de la instrucción SQL se pueden incorporar
variables de reemplazo que servirán para armar la
instrucción SQL con base en ciertos campos o valores. |
* Para obtener el nombre del padre de un
alumno, teniendo el ID de la familia en un campo de datos
llamado ID_FAMILIA. SelectSQL( 'SELECT PADRE FROM familias_mst WHERE ID_FAMILIA=${ID_FAMILIA}' ) = 'JOSE RAMIREZ CUEVAS'. Equivalente en otras versiones: SelectSQL( 'SELECT ULTIMO_PAGO_FECHA FROM alumnos WHERE NUMEROALUMNO='+STR(NUMEROALUMNO) ) Se recomienda construir la condición WHERE utilizando la mayor cantidad de campos posibles correspondientes a la llave primaria. |
|
Select | Es una función que permite de forma muy cómoda obtener
un campo de una tabla y especificar alguna condición. Con esta función se pretende reemplazar la complejidad de construir instrucciones SQL integrales. Sintaxis: Select( <nombre de la tabla>, <campo o dato a obtener>,<condicion 1>[,<condición n>] ) Para hacer más precisa la obtención del dato se pueden especificar varias condiciones. Y se sugiere utilizar todos los campos de la llave primaria de la tabla. |
* Para obtener el nombre del padre de un alumno,
teniendo el ID de la familia en un campo de datos llamado
ID_FAMILIA. Select( 'familias_mst', 'PADRE', 'ID_ESCUELA=${ID_ESCUELA}','ID_FAMILIA=${ID_FAMILIA}' ) => 'JOSE RAMIREZ CUEVAS'. Internamente se construirá una sentencia SQL equivalente. |