Escolar Documentos
Profissional Documentos
Cultura Documentos
TABLA DE CONTENIDO
@FUNCIONES ............................................................................................................................ 5
TIPOS DE @FUNCIONES ............................................................................................................. 5
@Funciones Caracter ........................................................................................................ 5
@Funciones Condicionales................................................................................................ 6
@Funciones de Fecha y Hora ............................................................................................ 7
@Funciones Financieras.................................................................................................... 8
@Funciones de Coincidencia ............................................................................................. 8
@Funciones Numricas ..................................................................................................... 9
LISTADO GENERAL DE @FUNCIONES ....................................................................................... 10
@Abs .............................................................................................................................. 10
@Afternoon .................................................................................................................... 10
@Age .............................................................................................................................. 11
@AgeDateTime ............................................................................................................... 12
@AgeTime ...................................................................................................................... 12
@AllTrim ......................................................................................................................... 13
@Ascii ............................................................................................................................. 13
@Between ...................................................................................................................... 14
@BetweenDate............................................................................................................... 15
@BetweenTime .............................................................................................................. 15
@Bit ................................................................................................................................ 16
@BitAnd.......................................................................................................................... 17
@BitOr ............................................................................................................................ 17
Corte de Siglo .................................................................................................................. 18
@Chr ............................................................................................................................... 18
@CompareNoCase .......................................................................................................... 19
@CompIf ......................................................................................................................... 20
@Ctod ............................................................................................................................. 21
@CurForm ....................................................................................................................... 22
@CurVal .......................................................................................................................... 22
@Date ............................................................................................................................. 23
@Day .............................................................................................................................. 23
@DaysToD ...................................................................................................................... 24
@Db ................................................................................................................................ 24
@Ddb .............................................................................................................................. 25
@Delete .......................................................................................................................... 26
@Dow ............................................................................................................................. 27
@Dtoc ............................................................................................................................. 27
@DToDays ...................................................................................................................... 28
@Dtoj.............................................................................................................................. 29
@Exp ............................................................................................................................... 29
@FieldStatistics............................................................................................................... 30
@FindOneOf ................................................................................................................... 31
@FinYear ........................................................................................................................ 32
@Format12HourClock ..................................................................................................... 32
@Fv ................................................................................................................................. 33
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@GetAt ........................................................................................................................... 34
@GetNextValue .............................................................................................................. 35
@GetPreviousValue ........................................................................................................ 36
@Hours ........................................................................................................................... 37
@If .................................................................................................................................. 37
@Insert ........................................................................................................................... 38
@Int ................................................................................................................................ 39
@Ipmt ............................................................................................................................. 39
@Irr ................................................................................................................................. 40
@IsBlank ......................................................................................................................... 41
@IsFieldDataValid ........................................................................................................... 42
@Isin ............................................................................................................................... 42
@Isini .............................................................................................................................. 43
@Jtod.............................................................................................................................. 44
@JustLetters ................................................................................................................... 45
@JustNumbers ................................................................................................................ 46
@JustNumbersLeading ................................................................................................... 46
@JustNumbersTrailing .................................................................................................... 47
@LastDayofMonth .......................................................................................................... 47
@Left .............................................................................................................................. 47
@Len ............................................................................................................................... 48
@List ............................................................................................................................... 49
@Log ............................................................................................................................... 49
@Log10 ........................................................................................................................... 50
@Lower........................................................................................................................... 50
@Ltrim ............................................................................................................................ 51
@Match .......................................................................................................................... 52
@Max ............................................................................................................................. 53
@Mid .............................................................................................................................. 54
@Min .............................................................................................................................. 54
@Minutes ....................................................................................................................... 55
@Mirr ............................................................................................................................. 56
@Month.......................................................................................................................... 57
@NoMatch...................................................................................................................... 57
@Npv .............................................................................................................................. 58
@Ntod ............................................................................................................................ 59
@Pmt .............................................................................................................................. 60
@Ppmt ............................................................................................................................ 61
@Precno ......................................................................................................................... 61
@Proper.......................................................................................................................... 62
@Pv................................................................................................................................. 62
@Qtr ............................................................................................................................... 63
@Random ....................................................................................................................... 64
@Rate ............................................................................................................................. 64
@Recno........................................................................................................................... 65
@RegExpr ....................................................................................................................... 65
@Remove ....................................................................................................................... 67
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@Repeat ......................................................................................................................... 68
@Replace ........................................................................................................................ 68
@Reverse ........................................................................................................................ 69
@Right ............................................................................................................................ 69
@Round .......................................................................................................................... 70
@Seconds ....................................................................................................................... 71
@Seed............................................................................................................................. 72
@Sln................................................................................................................................ 72
@Soundex....................................................................................................................... 73
@SoundsLike................................................................................................................... 74
@SpacesToOne ............................................................................................................... 74
@SpanExcluding.............................................................................................................. 75
@SpanIncluding .............................................................................................................. 76
@Split ............................................................................................................................. 76
@Sqrt .............................................................................................................................. 77
@Str ................................................................................................................................ 78
@Stratum........................................................................................................................ 78
@Strip ............................................................................................................................. 79
@StripAccent .................................................................................................................. 80
@Syd ............................................................................................................................... 80
@Time............................................................................................................................. 81
@Trim ............................................................................................................................. 81
@Ttoc ............................................................................................................................. 82
@Upper .......................................................................................................................... 82
@Val ............................................................................................................................... 83
@Workday ...................................................................................................................... 84
@Year ............................................................................................................................. 84
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@FUNCIONES
Las @Funciones: se encuentran disponibles para poder llevar a cabo operaciones
complejas tales como aritmtica de fechas, clculos estadsticos o bsquedas de texto. Las
funciones de IDEA comienzan con el smbolo '@'. Son muy similares en cuanto a su estilo
y modo de operar a las funciones disponibles en otros software como Microsoft Excel,
Lotus 123 y dBASE. Cada @Funcin calcula un resultado basndose en los parmetros
ingresados en la @Funcin. Las parmetros se encuentran entre parntesis. Por
ejemplo, @Round(Importe) redondeara un campo llamado 'Importe'' al entero ms
cercano.
Seleccionando la @Funcin requerida de la lista de la izquierda, encontrar una Ayuda
adicional acerca de las @Funciones. En esta seccin encontrar la sintaxis, una
descripcin y un ejemplo para la @Funcin seleccionada.
Tambin podr crear, editar, exportar e importar Funciones Personales. Las Funciones
Personales trabajan de la misma forma que las @Funciones, siendo definidas, en cambio,
por el usuario. Las Funciones Personales son precedidas por el signo numeral (#).
TIPOS DE @FUNCIONES
@Funciones Caracter
Las siguientes @Funciones son utilizadas para manipulacin y conversin de texto. Los
campos Fecha tambin pueden ser utilizados como una cadena en estas @Funciones.
@AllTrim - Elimina todos los espacios iniciales y finales.
@Chr - Devuelve el caracter equivalente a un cdigo ASCII especificado.
@CompareNoCase - Compara expresiones sin tener en cuenta maysculas /
minsculas.
@CurForm - Determina el formato de campos Numricos.
@Delete - Elimina caracteres especificados en una cadena.
@FindOneOf - Busca registros con al menos un caracter especificado.
@GetAt - Devuelve el caracter que aparece en una posicin numrica especificada.
@Insert - Inserta una cadena dentro de una cadena existente.
@IsBlank - Verifica si un campo contiene blancos.
@Isin - Determina si un registro contiene una cadena de caracteres especfica (sensible a
maysuclas / minsculas).
@Isini - Igual a @Isin, excepto que no es sensible al uso de maysculas / minsculas.
@JustLetters - Esta funcin devuelve una cadena sin sus caracteres numricos.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@Funciones Condicionales
Utilice las siguientes @Funciones para obtener diferentes resultados basndose en una o
ms condiciones.
@CompIf - Determina si un registro satisface un criterio mltiple.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@Funciones Financieras
Las @Funciones financieras determinan diversos valores para prstamos e inversiones.
Todas las @Funciones financieras devuelven nmeros con varios decimales Para
visualizar a los mismos como moneda, deber especificar la cantidad de decimales al
definir el campo Numrico. El valor obtenido es luego redondeado.
@Db - Calcula el saldo peridico fijo de depreciacin decreciente.
@Ddb - Calcula el saldo de depreciacin doble decreciente.
@Fv - Calcula el valor futuro de una inversin.
@Ipmt - Calcula el inters pagado para un perodo dado.
@Irr - Calcula la tasa interna de retorno.
@Mirr - Calcula variaciones en la tasa interna de retorno.
@Npv - Calcula el valor actual neto de una inversin.
@Pmt - Devuelve el importe de pago total para un prstamo.
@Ppmt - Devuelve el importe de pago del capital en un prstamo.
@Pv - Devuelve el valor actual de una inversin.
@Rate - Calcula el porcentaje de inters de una inversin o prstamo.
@Sln - Devuelve la depreciacin lineal de un activo.
@Syd - Devuelve la suma de aos de depreciacin lineal en un activo.
@Funciones de Coincidencia
Las siguientes @Funciones identifican referencias o mltiples elementos.
@Between - Determina si una expresin numrica se encuentra en un rango especfico.
@BetweenDate - Devuelve un nmero indicando si una fecha cae dentro de un rango
especificado (1) o no (0).
@BetweenTime - Devuelve un nmero indicando si una hora cae dentro de un rango
especificado (1) o no (0).
@Bit - Identifica el valor de un bit.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
@Funciones Numricas
Utilice las siguientes @Funciones para llevar a cabo clculos de valores numricos o para
convertir a valores numricos.
@Abs - Devuelve el valor absoluto de una expresin numrica.
@Ascii - Devuelve el cdigo ASCII de un caracter.
@CurVal - Convierte campos Caracter en Numricos.
@Exp - Calcula el valor exponencial de un nmero.
@FieldStatistics - Devuelve el valor numrico de una estadstica de campo
especificada.
@Int - Devuelve la porcin entera de una expresin.
@IsFieldDataValid - Devuelve 1 si el dato del campo es vlido, o 0 si es incorrecto.
@JustNumbers - Devuelve todos los nmeros (al inicio y al final).
@JustNumbersLeading - Devuelve los nmeros iniciales.
@JustNumbersTrailing - Devuelve los nmeros finales.
@Log - Calcula logaritmo naturales.
@Log10 - Calcula logaritmos en base 10 para un valor especificado.
@Max - Devuelve el valor mayor de dos expresiones numricas.
@Min - Devuelve el valor menor de dos expresiones numricas.
@Precno - Devuelve los nmeros de registro originales.
@Random - Genera un nmero aleatorio.
@Recno - Devuelve los nmeros de registro actuales en una base de datos indexada.
@Round - Redondea un nmero de acuerdo a la cantidad de decimales especificada.
@Seed - Establece la semilla de nmeros aleatorios.
@Sqrt - Calcula la raz cuadrada.
@Stratum - Agrupa registros por intervalos.
@Val - Convierte expresiones caracter en numrico.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
SALDO
@Abs(SALDO)
120.34
-120.34
120.34
@Afternoon
Devuelve un nmero indicando si la hora especificada es de la maana (A.M.) o de la
tarde/noche (P.M.). Si la @Funcin devuelve 0 la hora corresponde a A.M. y si la funcin
devuelve 1, la hora corresponde a P.M. Si la hora especificada excede a las 24 horas,
la @Funcindevolver -1.
Sintaxis
@Afternoon(Hora)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
10
Ejemplo
TIME
@Afternoon(HORA)
(H; 8)
(Numrico)
22:40:37 1
25:12:60 -1
11:35:16 0
@Age
Devuelve la cantidad de das entre dos fechas especificadas. Ambas fechas deben estar en
formato de Fecha de IDEA (AAAAMMDD). Una o ambas fechas deberan ser campos o
constantes. Puede ser utilizada al auditar la eficiencia de un sector o departamento
(tiempo insumido en cobrar o en despachar un producto).
Sintaxis
@Age(Fecha1; Fecha2)
Parmetros
Fecha1 - representa la primera fecha. Puede ser un Campo Fecha o una contante.
Fecha2 - representa la segunda fecha. La primera fecha (Fecha1) debera ser posterior a
la segunda fecha (Fecha2) para que la cantidad de das resultantes sea positiva.
Ejemplo
@Age(FECHA_PAGO; ORDEN) devolver la cantidad de das entre la entrega y el pago
de una orden estando ambos campos con el formato de Fecha de IDEA.
FECHA_PAGO ORDEN
@Age(FECHA_PAGO; ORDEN)
(F; 8)
(F; 8)
(Numrico Virtual)
19990331
19990228 31
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
11
20001002
19991002 366
@AgeDateTime
Devuelve la cantidad de segundos entre dos series de fechas/horas. La segunda fecha
debera ser posterior a la primera para que la cantidad de segundos resultantes sea
positiva. La fecha puede ser un campo Fecha o una constante de fecha. La hora puede ser
un campo Hora, un campo Numrico o una constante de hora. Los valores en un campo
Numrico son interpretados como la cantidad de segundos. Por ejemplo el valor numrico
86400 es ledo como 86400 segundos o 24 horas, mientras que 4832 es una hora, 20
minutos y 32 segundos.
Sintaxis
@AgeDateTime(Primera_fecha; Primera_hora; Segunda_fecha; Segunda_hora)
Parmetros
Primera_fecha y Primera_hora - son la primera fecha y hora tomadas para saber la
diferencia respecto de la segunda fecha y hora.
Segunda_fecha y Segunda_hora - La segunda fecha y hora.
Ejemplo
FECHA1
HORA1
FECHA2
HORA2
(F; 8)
(H; 8)
(F; 8)
(H; 8)
@AgeDateTime(FECHA1;
FECHA2; HORA2)
HORA1;
(Numrico)
@AgeTime
Devuelve la cantidad de segundos entre dos horas especificadas.
Sintaxis
@AgeTime (Hora1; Hora2)
Parmetros
Hora1 - Puede ser un campo Hora, un campo Numrico o una constante. La primera hora
(Hora1) debera ser posterior a la segunda hora (Hora2) para que la cantidad de segundos
resultantes sea positiva. Los valores en un campo Numrico son interpretados como la
cantidad de segundos. Por ejemplo el valor numrico 86400 es ledo como 86400
segundos o 24 horas, mientras que 4832 es una hora, 20 minutos y 32 segundos.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
12
Ejemplo
HORA1
HORA2
@AgeTime(HORA1; HORA2)
(H; 8)
(H; 8)
(Numrico)
@AllTrim
Remueve los espacios iniciales y finales en campos Caracter. Puede ser usada para
formatear la salidas, por ejemplo, al agregar cargos e iniciales para nombrar campos en la
preparacin de cartas de circularizacin.
Tambin se usa para comparar el contenido de campos de texto. Por ejemplo, al
usar @Match, @NoMatch y @List pudiendo obtener las coincidencias exactas de un
campo (incluyendo los espacios), @AllTrim puede ser utilizado para eliminar cualquier
espacio inicial o final antes de comparar los campos.
Para remover los espacios iniciales o finales utilice @Ltrim o @Trim respectivamente.
Sintaxis
@AllTrim(Cadena)
Parmetro
Cadena - es la expresin o campo Caracter del cual desea eliminar los espacios iniciales o
finales.
Ejemplos
@AllTrim('' CASEWARE '') devolver ''CASEWARE''.
@Match(@AllTrim(CUENTA); "A12"; "B23455"; "B9999")
@Ascii
Devuelve el valor ASCII de un caracter, campo Caracter o campo Fecha que contenga un
nico caracter. Puede utilizarse al verificar un cdigo especial o un parmetro en un
campo. Es la funcin opuesta a @Chr.
Sintaxis
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
13
(Numrico Virtual)
65
97
@Between
Esta funcin verifica si un valor en particular cae dentro de un rango especificado. Si el
valor a ser verificado es mayor o igual al lmite inferior y menor o igual al lmite superior,
se devuelve 1 como valor verdadero. De lo contrario se obtendr el valor 0 como Falso.
Puede ser utilizada para verificar si los salarios de los empleados se encuentran dentro de
un mnimo y mximo acorde para su grado.
Sintaxis
@Between(Nmero; Lmite_Inferior; Lmite_Superior)
Parmetros
Nmero - el valor a ser verificado.
Lmite_Inferior - es el lmite inferior para la prueba.
Lmite_Superior - es el lmite superior para la prueba.
Ejemplos
@Between(10; 0; 20) devuelve 1 para (Verdadero).
SALARIO MIN
MAX
(N; 8)
(N; 8)
(N; 8)
@Between(SALARIO;
MIN; MAX)
(Numrico Virtual)
2000
1800
2200
2000
1500
1700
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
14
20050515
20050101
20051231
20050515
20040101
20040101
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
15
09:30:25 09:00:00
17:00:00 1
08:40:38 09:00:00
17:00:00 0
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
16
00001000
00000111
@BitAnd
Aplica un AND bit a bit comparando dos valores binarios correspondientes a dos
expresiones numricas. Devuelve el valor numrico correspondiente al resultado. Las dos
expresiones son convertidas a sus equivalentes binarios sin signo aplicndose luego un
AND bit a bit. Puede ser til para ocultar ciertos bits.
Sintaxis
@BitAnd(Nmero1; Nmero2)
Parmetros
Nmero1 - un campo o constante.
Nmero2 - un campo o constante.
Ejemplo
NUMERO1 NUMERO2 @BitAnd(Nmero1;
Nmero2)
(N; 2)
(N; 2)
(Numrico Virtual)
Nmero 11
Binario
00000101
00000001
00001011
@BitOr
Aplica un OR bit a bit comparando dos valores binarios correspondientes a dos
expresiones numrica. Devuelve el valor numrico correspondiente al resultado. Se aplica
un OR al valor de la primera expresin, Nmero1 , mediante la segunda expresin
numrica. Las dos expresiones son convertidas a sus equivalentes binarios sin signo
aplicndose luego un OR bit a bit.
Sintaxis
@BitOr(Nmero1; Nmero2)
Parmetros
Nmero1 - el primer campo o constante cuyo valor binario ser comparado con el
segundo.
Nmero2 - el segundo campo o constante cuyo valor binario ser comparado con el
primero.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
17
Ejemplo
NUMERO1 NUMERO2 @BitOr(Nmero1; Nmero2)
(Numrico Virtual)
(N; 2)
(N; 2)
Nmero 11
15
Binario
00000101
00001111
00001011
Corte de Siglo
IDEA guarda las fechas en cuatro dgitos. No obstante esto, al convertir fechas de dos
dgitos en fechas de cuatro dgitos a travs de las funciones @Ctod o @Ntod, IDEA usa
el corte de siglo correspondiente.
Por defecto, IDEA establece el corte de siglo en 30 dentro de la solapa Sistema del
dilogo Opciones al cual se accede desde el men Ver. En caso de ser necesario este
valor puede ser modificado.
Todos los aos de dos dgitos menores al corte de siglo son tratados como 20xx.
Mientras que todas las fechas iguales o mayores al corte de siglo son tratadas
como 19xx.
Ejemplo
Con un corte de siglo en 0, la fecha 1de Diciembre de 1920 es guardada como 201201.
Con @Ctod("201201"; "AAMMDD"), sera convertida a 19201201. Pero usando como
corte de siglo 30 sera convertida a 20201201.
Nota
Algunas computadoras podran no brindar un sistema de fechas correcto para las fechas
posteriores al ao 2000. Si fuese as, IDEA arrojara resultados errneos si utiliza la fecha
del sistema.
Consulte tambin:
@Ctod
@Ntod
@Chr
Lleva a cabo la funcin opuesta a @Ascii. Toma un entero o campo Numrico que
contenga un entero como parmetro y regresa el caracter ASCII de ese parmetro. Por
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
18
@Chr(CODIGON)
(Caracter Virtual; Lon 1)
65
97
@CompareNoCase
Compara campos o cadenas de caracteres (cadena1 y cadena2) sin tener en cuenta las
maysculas/minsculas del texto. Devuelve lo siguiente:
Sintaxis
@CompareNoCase(Cadena1; Cadena2)
Parmetros
Cadena1 - el primer valor o campo que desea comparar.
Cadena2 - el segundo valor o campo a ser comparado.
Ejemplo
@CompareNoCase(CUENTA;NUM_CUENTA) podra ser utilizado para
nmeros de cuentas que hayan sido ingresados con diferentes
Esta @Funcin no toma en cuenta las maysculas/minsculas.
comparar
formatos.
abc-1234
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
19
1234
ABC1000
abc-1234
-1
ABC2000
abc-1234
@CompIf
Verifica si un registro cumple con mltiples condiciones y devuelve el valor especificado
(resultado) correspondiente a la primera condicin encontrada. El orden de las condiciones
es importante debido a que se comienza con la evaluacin de la primera condicin. Si no
se cumple ninguna de las condiciones se obtiene como resultado "Error". Para evitar
obtener como resultado "Error", es recomendable finalizar la ecuacin agregando 1 como
la condicin final y su resultado correspondiente, es decir ",1, resultado". Agregando 1
como condicin final, la misma ser ejecutada si no se cumplieron ninguna de las
condiciones anteriores.
Sintaxis
@CompIf(Condicin1; Resultado1; Condicin2; Resultado2; ... 1; Resultado3)
Parmetros
Condicin1 - la primera condicin a verificar.
Resultado1 - el resultado a devolver si se cumple la primera condicin.
Condicin2 - la segunda condicin a verificar.
Resultado2 - el resultado a devolver si se cumple la segunda condicin.
1 - La condicin que ser evaluada y completar cualquier valor no especificado. Esta
debe ser especificada solamente como la condicin final.
Resultado3 - El resultado a obtener si no se cumplen ninguna de las condiciones
anteriores.
Ejemplo
Supongamos el caso que las operaciones en moneda extranjera posean un campo MON
para indicar la moneda, @CompIf podr ser utilizada para calcular en un campo Virtual el
equivalente en libras esterlinas para cada operacin de la siguiente manera:
@CompIf(MON=''UK''; IMP; MON=''C$''; IMP/2.0; MON=''US''; IMP/1.60; 1; 0)
Observe que se ingresa una condicin al final de la ecuacin para incluir algn valor no
especificado.
Notas
Al usar @CompIf con campos Booleanos o Multi-estado tenga en cuenta lo siguiente:
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
20
Campos Booleanos: Por defecto, se utiliza una X para indicar valores no vlidos
o errores. Sin embarog, la X es tambin utilizada para indicar falsedades. Deber
examinar cuidadosamente los datos y la ecuacin en cuestin para interpretar la
diferencia entre un error y una falsedad.
@Ctod
Convierte un campo de fechas guardadas como Caracter en un campo tipo Fecha con el
Formato de Fecha de IDEA (AAAAMMDD).
Sintaxis
@Ctod(cadena; mscara)
Parmetros
Cadena - La expresin caracter del campo a ser convertido en un campo tipo Fecha.
Mscara - es el formato actual de la fecha a convertir.
Ejemplos
@Ctod(''12-MAYO-1999''; ''DD-MMM-AAAA'') devolver la fecha ''19990512''.
@Ctod(FECHA_APERT; ''DD/MM/AA''), donde FECHA_APERT es un campo Caracter
con la mscara (formato) DD/MM/AA, devolver lo siguiente:
FECHA_APERT MASCARA @Ctod(FECHA_APERT;"DD/MM/AA")
(C 8)
(C 8)
(Fecha Virtual; Lon 8)
22/10/99
DD/MM/AA 19991022
11/03/59
DD/MM/AA 19591103
Para extraer todas las cuentas abiertas antes del 31/03/1999, utilice la siguiente ecuacin
de extraccin:
@Ctod(FECHA_APERT; ''DD/MM/AA'') < ''19990331''
Notas
La mayora de los formatos de fecha son aceptados, incluyendo campos de 2 y 3
caracteres para el da (1-31 o 1-365/366), 2 y 3 caracteres para el mes (01-12 o ENEDIC), y 2 o 4 caracteres para el ao. Para obtener ms informacin acerca de cmo
convertir fechas con dos caracteres para el ao, vea Corte de Siglo.
Consulte tambin:
@Ntod
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
21
@CurForm(VALOR;"";",";12;2)
456,00
@CurVal
Se usa para modificar el valor de un campo "numrico" con Tipo Caracter que tiene
formato con separadores de miles y separadores decimales no convencionales, como por
ejemplo un espacio como separador de miles y un ".'' (punto) como separador decimal.
Por lo general se utiliza un punto como separador de miles.
Sintaxis
@CurVal(Cadena; SepMiles; SepDec)
Parmetros
Cadena - el nombre de campo o valor a ser re-formateado.
SepMiles - el separador de miles no estndar que desea eliminar de la cadena.
SepDec - el separador de decimales no estndar a ser reemplazado por un punto.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
22
VALOR
(C; 12)
@CurVal(VALOR;"";",")
(Numrico Virtual; 2 Dec)
453.00
@Date
Devuelve la fecha actual de su mquina.
Sintaxis
@Date()
Parmetros
No se requieren parmetros.
Ejemplo
FECHA_OPER > @Date() identificara todos los elementos cuya fecha de transaccin es
posterior a la fecha actual.
Alternativamente, ingrese la fecha actual en el formato "AAAAMMDD".
Nota
Verifique que la fecha en su mquina sea la correcta antes de utilizar esta @Funcin.
@Day
Devuelve el da, en formato numrico, para una fecha en formato de Fecha de IDEA
(AAAAMMDD). Esta funcin puede utilizarse para analizar las tendencias de
ventas/compras por da en el mes.
Sintaxis
@Day(Fecha)
Parmetro
Fecha - expresin o campo Fecha del cual desea obtener slo el da en formato
Numrico.
Ejemplo
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
23
25
20000101
@DaysToD
Convierte la cantidad de das desde el 1 de Enero de 1900 al formato Fecha.
Sintaxis
@DaysToD(Nmero)
Parmetro
Nmero - es la expresin numrica o el campo que contiene la cantidad de das desde el
1 de Enero de 1900 que desea convertir al formato de "Fecha " (AAAA/MM/DD).
Ejemplo
@DaysToD(FECHA_PAGO) devolver lo siguiente:
FECHA_PAGO @DaysToD(FECHA_PAGO)
(N; 8)
(Fecha Virtual)
36519
19991225
36526
20000101
@Db
Devuelve el saldo decreciente en una depreciacin fija de un activo para un perodo
especificado. Debe utilizarse la misma unidad para indicar la vida til para un perodo.
Sintaxis
@Db(Costo; Recupero; Vida til; Perodo; Meses) = nmero
Parmetros
Costo - es el costo inicial de un activo.
Recupero - es el valor estimado del activo al finalizar su perodo de depreciacin.
Vida til - es la cantidad de perodos a depreciar.
Perodo - es la duracin del perodo de depreciacin.
Meses - es la cantidad de meses del primer ao.
Ejemplos
@Db(1000000; 100000; 6; 1; 7) devuelve 186083.33.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
24
obtendr
los
siguientes
resultados:
@Ddb
Devuelve el saldo decreciente de depreciacin doble de un activo para un perodo
especificado. Tenga en cuenta que la unidad utilizada para indicar la vida til debe ser la
misma para los perodos. Para el mtodo del saldo doble decreciente utilice como factor 2.
Sintaxis
@Ddb(Costo; Recupero; Vida til; Perodo; Factor) = nmero
Parmetros
Costo - es el costo inicial de un activo.
Recupero - es el valor estimado del activo al finalizar su perodo de depreciacin.
Vida til - es la cantidad de perodos a depreciar.
Perodo - es la duracin del perodo de depreciacin.
Factor - es el porcentaje del saldo decreciente.
Ejemplos
@Ddb(2400; 300; 120; 1; 2) devuelve 40.00.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
25
obtendr
los
siguientes
resultados:
Nota
Los parmetros de @Ddb deben ser valores positivos.
@Delete
Esta funcin es utilizada para eliminar un determinado nmero de caracteres, a partir de
una posicin fija, en un campo tipo Caracter o en una cadena.
Sintaxis
@Delete(Cadena; Nmero1; Nmero2)
Parmetros
Cadena - es la expresin o campo.
Nmero1 - es la posicin de inicio para comenzar a eliminar.
Nmero2 - es la cantidad de caracteres a eliminar.
Ejemplo
Si un cdigo de inventario de la aplicacin de ventas debe compararse con el cdigo
correspondiente en la aplicacin de existencias, teniendo ambos diferentes formatos
debido a caracteres extra en las posiciones 3 y 4, estos caracteres adicionales pueden ser
eliminados utilizando @Delete(CODIGO;3;2) tal como se detalla a continuacin:
CODIGO
@Delete(CODIGO;3;2)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
26
(C; 12)
XX99-12345 XX-12345
XX34-99978 XX-99978
@Dow
Devuelve el da de la semana como un nmero. Por ejemplo 1 para Domingo, 2 para
Lunes, etc.
Sintaxis
@Dow(fecha)
Parmetro
Fecha - es la fecha para la cual desea obtener el da de la semana.
Ejemplos
En un campo calculado o Virtual, como el de la tabla de abajo, @Dow podra ser utilizada
para analizar operaciones por da como un indicador de performance. Usando la
opcin Sumarizacin, podr entonces obtener la cantidad y el valor de las operaciones
por da.
FECHA_FACT @Dow(FECHA_FACT) Da
(F; 8)
(Numrico Virtual)
19990311
Jueves
20000102
Domingo
@Dow tambin puede ser utilizada en una Extraccin para bsqueda las operaciones
realizadas los fines de semana, los accesos al sistema verificando el log de seguridad, los
pagos procesados los fines de semana, etc tal como se ve en el ejemplo de abajo.
@Dow(FECHA_PAGO) = 1 .OR. @Dow(FECHA_PAGO) = 7
@Dtoc
Convierte un campo Fecha guardado en formato de 'Fecha'' de IDEA, en un campo con
formato Fecha segn la mscara especificada. Es la funcin inversa a la funcin @Ctod.
Puede ser til para visualizar un campo Fecha en un formato especfico, tal como 12-MAR1999 a los efectos de un reporte.
Nota: es ms fcil para el personal de auditora verificar las fechas si se imprimen en el
formato utilizado por la organizacin.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
27
19991225
25-DIC-1999
20000101
01-ENE-2000
@DToDays
Devuelve la cantidad de das transcurridos desde el 1 de Enero de 1900 (siendo 1 el 1 de
Enero de 1900) hasta la fecha especificada. Se usa a menudo para calcular la cantidad de
das existentes entre dos fechas. Excel y Lotus 1-2-3 utilizan este mtodo para
almacenar fechas.
Sintaxis
@DToDays(Fecha)
Parmetro
Fecha - es el campo Fecha o constante del cual desea obtener la cantidad de das
existentes desde el 1 de Enero de 1900.
Ejemplo
@DToDays(FECHA_PAGO) devolver lo siguiente:
FECHA_PAGO @DToDays(FECHA_PAGO)
(F; 8)
(Numrico Virtual)
19991225
36519
20000101
36526
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
28
Sintaxis
@Dtoj(fecha)
Parmetro
Fecha - es el campo Fecha o constante del cual desea obtener el nmero juliano.
Ejemplo
FECHA_PAGO @Dtoj(FECHA_PAGO)
(F; 8)
(Numrico Virtual)
19991225
730114
20000101
730121
@Exp
Calcula el valor exponencial ('' e'' a la potencia) de un campo Numrico o de un nmero
especificado.
Sintaxis
@Exp(Nmero)
Parmetro
Nmero - es el exponente aplicado a la base e.
Ejemplo
@Exp(VALOR) donde VALOR es un campo Numrico devolver lo siguiente:
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
29
VALOR
@Exp(VALOR)
2.72
2.00
7.39
@FieldStatistics
Devuelve el valor numrico de una estadstica de campo especificada.
Sintaxis
@FieldStatistics("NombreCampo"; Estadstica)
Parmetros
NombreCampo - El campo que ser analizado por la estadstica de campo especificada.
El nombre del campo debe ser ingresado entre comillas. Nota: Son aceptados los
caracteres en minsculas. Por ejemplo, un nombre de campo vlido puede ser ingresado
como "IMPORTE", "Importe", o "importe". Adicionalmente, pueden incuirse espacios extra
puesto que IDEA remover los mismos antes de procesar la ecuacin. Por ejemplo,
"IMPORTE" e "IMPORTE " seran aceptados.
Estadstica - El nmero asignado para la estadstica de campo requerida. Ver Nmeros
asignados para Estadsticas de Campo. Nota: En caso de, sin intencin, usar un
nmero negativo para el parmetro Estadstica aparecer un mensaje de error.
Ejemplo
En el siguiente ejemplo, la ecuacin del campo Virtual invoca la estadstica de campo "2",
nmero asignado a la estadstica de campo Cantidad de elementos cero. Observando los
datos del campo IMPORTE_TOTAL existen cuatro registros que poseen valor cero. Como
resultado, cada registro del campo Virtual tendr el valor 4 interpretando que existen
cuatro registros en la base de datos que poseen el valor cero.
IMPORTE_TOTAL @FieldStatistics(IMPORTE_TOTAL;
(N; 8)
2)
(Numrico Virtual; Lon 2)
1000
775
3200
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
30
Notas
@FindOneOf
Devuelve la posicin del primer caracter especificado en una cadena. Si el valor
especificado no es encontrado, se devuelve 0
Sintaxis
@FindOneOf(Cadena1; Cadena2)
Parmetros
Cadena1 - la constante o campo dentro del cual desea buscar un valor determinado.
Cadena2 - el valor que desea buscar dentro de la cadena 1.
Ejemplos
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
31
CODIGO
@FindOneOf(CODIGO;"0123456789")
(C; 12)
(Numrico Virtual)
ABC-2XYZ 5
ABC-WXYZ 0
@FinYear
Devuelve una cadena AAAA-AAAA que representa al ao financiero al cual pertenece una
fecha especificada. El fin de ao debe ser una cadena de datos con el formato MMDD.
Sintaxis
@FinYear(Fecha; Cadena)
Parmetros
Fecha - la fecha que desea que caiga dentro de un ao financiero.
Cadena - una cadena con el formato MMDD que representa el fin del ao financiero.
Ejemplo
FECHA
(F; 8)
(C; 4)
20030307 0331
2002-2003
20010920 1031
2000-2001
@Format12HourClock
Esta funcin devuelve una cadena que representa la hora con el formato HH:MM:SS TT
(donde TT representa AM o a la tarde PM).
Sintaxis
@Format12HourClock(Hora)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
32
@Format12HourClock(Hora)
(H; 8)
05:12:23 05:12:23
23:23:34 23:23:34
@Fv
Devuelve el valor actual de una inversin. IDEA asume que las cuotas son pagadas al final
del perodo.
Sintaxis
@Fv(Pago; Tasa; nPagos) = nmero
Parmetros
Pago - importe a pagar por perodo.
Tasa - es la tasa de inters.
nPagos - es la cantidad total de pagos.
Ejemplos
@Fv(200; 0.005; 10) devuelve 2,045.61.
Ejemplo clculo general
Se desea ahorrar dinero para comprar un auto nuevo el prximo ao. Para ello se
abre una caja de ahorro que otorga un inters anual del 6% colocando $500 por mes.
Utilizando la ecuacin @Fv(500; 0.06/12; 12), podr determinar que ahorrar
$6,167.78 en los prximos 12 meses.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
33
Notas
Debe utilizar la misma unidad de tiempo tanto para la tasa como para la cantidad de
pagos. En caso de trabajar con pagos mensuales pero con una tasa de inters anual,
ingrese la tasa de inters como 0.12/12 o (12/100)/12 y la cantidad de pagos
como la cantidad de aos multiplicada por 12.
@GetAt
Esta funcin devuelve el caracter de la posicin especificada. Puede ser utilizada para
verificar la existencia de un caracter determinado dentro de una cadena.
Sintaxis
@GetAt(Cadena; Nmero)
Parmetros
Cadena - un valor o campo Caracter del cual desea obtener un caracter de una posicin
especfica.
Nmero - la posicin del caracter a ser devuelto.
Ejemplos
Para verificar que el noveno caracter del Nmero de Seguro Social del Reino Unido (NINO)
no sea un caracter, utilice @GetAt(NINO,9) <"A" .OR. @GetAt(NINO,9) > "Z".
Si un campo con fechas tipo Caracter no incluye un "0" al inicio para los das menores a
10, utilice @GetAt para verificar si el segundo caracter es un espacio como en el siguiente
resultado para dos. Luego usando @Ctod e @If podr convertir la fecha en el formato de
"Fecha" de IDEA:
FECHAC DOS
(C; 10)
FECHA
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
34
3-Nov1999
"-"
1999/11/03
31-Dic1999
"1"
1999/12/31
@GetNextValue
Devuelve el valor siguiente en el campo especificado, comenzando por el primer valor del
campo. Por ejemplo, en el campo Virtual creado, el primer valor ser el segundo valor del
campo especificado y as sucesivamente.
Sintaxis
@GetNextValue("NombreCampo")
Parmetro
NombreCampo - El campo sobre el cual desea obtener el valor siguiente. El nombre del
campo debe ser ingresado entre comillas. Nota: Son aceptados los caracteres en
minsculas. Por ejemplo, un nombre de campo vlido puede ser ingresado como
"IMPORTE", "Importe", o "importe". Adicionalmente, pueden incuirse espacios extra
puesto que IDEA remover los mismos antes de procesar la ecuacin. Por ejemplo,
"IMPORTE" e "IMPORTE " seran aceptados.
Ejemplos
IMPORTE_TOTAL @GetNextValue("IMPORTE_TOTAL")
(N; 8)
(Numrico Virtual; Lon 8)
1000
2500
2500
3200
3200
4700
Numrico: 0
Caracter: Blanco
Fecha: 00000000
Hora: 0
Numrico/Caracter/Fecha/Hora: "Error"
Editable: "Error"
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
35
Booleano/Multi-estado: "X"
Los campos Virtuales que han sido agregados usando @GetNextValue no deberan ser
indexados o utilizados como Campos de Control.
@GetPreviousValue
Comenzando por el primer valor del campo especificado devuelve el valor precedente.
Sintaxis
@GetPreviousValue("NombreCampo")
Parmetro
NombreCampo - El campo sobre el cual desea obtener el valor anterior. El nombre del
campo debe ser ingresado entre comillas. Nota: Son aceptados los caracteres en
minsculas. Por ejemplo, un nombre de campo vlido puede ser ingresado como
"IMPORTE", "Importe", o "importe". Adicionalmente, pueden incuirse espacios extra
puesto que IDEA remover los mismos antes de procesar la ecuacin. Por ejemplo,
"IMPORTE" e "IMPORTE " seran aceptados.
Ejemplo
IMPORTE_TOTAL @GetPreviousValue("IMPORTE_TOTAL")
(N; 8)
1000
2500
1000
3200
2500
Numrico: 0
Caracter: Blanco
Fecha: 00000000
Hora: 0
Numrico/Caracter/Fecha/Hora: "Error"
Editable: "Error"
Booleano/Multi-estado: "X"
Los campos Virtuales que han sido agregados usando @GetPreviousValue no deberan
ser indexados o utilizados como Campos de Control.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
36
@Hours
Devuelve la porcin correspondiente a la hora en una hora especificada como un nmero
entre 0 (12:00 A.M.) y 23 (11:00 P.M.)
Sintaxis
@Hours(Hora)
Parmetro
Hora - es la hora o campo Numrico o constante del cual se desea obtener la porcin
correspondiente a la hora. Un valor numrico es interpretado como la cantidad de
segundos. Un valor numrico ser convertido en Hora (HH:MM:SS) y se devolver la
porcin correspondiente a la hora. Por ejemplo 4832 ser convertido a 01:20:32.
Ejemplos
TIME
@Hours(Hora)
(H; 8)
(Numrico
Virtual;
Lon
2)
22:40:37 22
12:35:16 12
TIME @Hours(Hora)
(N; 8) (Numrico Virtual; Lon 2)
62
4832
@If
Esta @Funcin verifica si se cumple una condicin especificada. En caso de cumplirse
devuelve el resultado_verdadero, de lo contrario devuelve el resultado_falso. Los
resultados pueden ser de tipo numrico o cadena, pero ambos (resultado_verdadero y
resultado_falso) deben poseer el mismo tipo de dato.
Sintaxis
@If(Condicin; Resultado_Verdadero; Resultado_Falso)
Parmetros
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
37
VALOR
(N; 8; 2)
DR
123.45
123.45
CR
123.45
-123.45
-1;
38
USUARIO
@Insert(USUARIO
"/SERVIDOR1")
(C; 20)
(Numrico Virtual)
120.45
120
-45.88
-45
Nota:
No
confunda @Int con @Round. @Int trunca
un
valor
mientras
que @Round redondea para arriba o para abajo de acuerdo a la precisin deseada.
@Ipmt
Devuelve el inters pagado en un perodo de una inversin.
Sintaxis
@Ipmt(Tasa; Perodo; nPagos; Valor_Actual; Valor_Futuro; Tipo) = Nmero
Parmetros
Tasa - es la tasa de inters.
Perodo - es el pago total del perodo.
nPagos - cantidad de pagos del prstamo.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
39
Notas
Debe utilizar la misma unidad de tiempo tanto para la tasa como para la cantidad
de pagos. En caso de trabajar con pagos mensuales pero con una tasa de inters
anual, ingrese la tasa de inters como 0.12/12 o (12/100)/12 y la cantidad de
pagos como la cantidad de aos multiplicada por 12.
@Irr
Calcula la tasa interna de retorno para una serie de cash flow de intervalos regulares.
Tenga en cuenta que los egresos e ingresos deben pertenecer a intervalos equivalentes. y
que deber incluir al menos un egreso o ingreso en la ecuacin. La longitud mxima de la
ecuacin es de 3,000 caracteres.
Sintaxis
@Irr(Estimado; Valor1; Valor2; Valor3...) = nmero
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
40
@IsBlank
Verifica si una cadena, campo Caracter, o campo Fecha se encuentra vaco o slo contiene
espacios. Devuelve un 1 si est vaco, o un 0 si existen caracteres en el campo o cadena.
Podra usarse para comprobar que ciertos campos clave, tales como el de identificacin
del empleado, nmeros de cuenta o nmeros de factura no se encuentren vacos.
Sintaxis
@IsBlank(Cadena)
Parmetro
Cadena - La cadena, campo Caracter o campo Fecha a ser verificado.
Ejemplo
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
41
@IsFieldDataValid
Podra ser utilizada para buscar en un campo datos errneos los cuales podran ser
visualizados como "Error" en la base de datos. Por ejemplo, al importar un campo Fecha
con una mscara AAAAMMDD, para el valor 20052312 aparecer la palabra "Error" en
lugar de la fecha. Utilice esta @Funcin para encontrar todos los registros sin datos
errneos en un campo.
Sintaxis
@IsFieldDataValid("NombreCampo")
Parmetro
NombreCampo - el nombre del campo que pudiese contener datos errneos ingresados
como una cadena (entre comillas). Esto devolver todos los registros excepto aquellos con
datos errneos o la palabra "Error" en el campo.
Ejemplos
Para extraer todos los registros donde el campo Fecha no contiene datos errneos, utilice
la ecuacin @IsFieldDataValid("FECHA") = 1.
Para
extraer
registros
con
datos
errneos
en
el
campo
utilice @IsFieldDataValid("FECHA") = 0 como el criterio de extraccin.
Fecha,
@Isin
Utilizada para buscar textos especficos dentro de un campo Caracter, Fecha o dentro de
una cadena. Si el texto especificado es encontrado, se devolver la posicin inicial del
texto en el campo Caracter o Fecha. Si la cadena no es encontrada, devolver el valor
0. @Isin es de suma utilidad al buscar pagos a individuos a travs de nombres o
direcciones similares o para buscar una referencia o frase dentro de un campo de
descripcin. @Isin es sensible al uso de maysculas/minsculas.
Sintaxis
@Isin(cadena1; cadena2)
Parmetros
Cadena1 - es el texto especificado a buscar.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
42
Registro Extrado
( C 15)
S/N
Williams & Co
BEAN COUNTERS N
Coles & Cullen Inc S
.NOT.
@Isin(''S.A.'';
PROVEEDOR)
.AND.
.NOT.
PROVEEDOR).AND. .NOT. @Isin(''S.R.L.''; PROVEEDOR)
@Isin(''Co'';
Nota
Utilice @Isini si desea que la bsqueda no sea sensible a maysculas/minsculas.
Alternativamente use @Upper y @Lower en conjuncin con @Isin, de esta manera:ch
as:
@Isin(''S.A.'';@Upper(PROVEEDOR))
@Isin(''s.a.'';@Lower(PROVEEDOR))
@Isini
Es similar a la funcin @Isin excepto que no es sensible al uso de
maysculas/minsculas. Busca la aparicin de una cadena especificada en un campo
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
43
Registro Extrado
( C 15)
S/N
Williams & Co
BEAN COUNTERS S
Bob Cuthbertson
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
44
(Fecha Virtual)
730114
1999/12/25
730121
2000/01/01
Notas
@Jtod(Nmero) devuelve ''0000/00/00'' si el parmetro nmero es <1.
IDEA no toma en cuenta el 29 Feb 1900 (algunos sistemas si) dado que el ao 1900
no fue bisiesto.
@JustLetters
Esta funcin devuelve una cadena sin sus caracteres numricos.
Sintaxis
@JustLetters(Cadena)
Parmetro
Cadena - es la expresin tipo caracter o campo del cual desea eliminar todos los
caracteres numricos.
Ejemplo
CADENA
@JustLetters(Cadena)
(C; 15)
aos de edad
50 euros
euro
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
45
Parmetro
Cadena - es la expresin de caracter o campo del cual desea obtener todos sus nmeros.
Ejemplo
DIRECCION @JustNumbers(DIRECCION)
(C; 21)
(Numrico Virtual)
25 unidades
25
@JustNumbersLeading
Esta funcin devuelve todos los nmeros iniciales pertenecientes a una cadena o campo.
Sintaxis
@JustNumbersLeading(Cadena)
Parmetro
Cadena - es la expresin o campo del cual se obtendrn los caracteres numricos
iniciales.
Ejemplo
DIRECCION @JustNumbersLeading(DIRECCION)
(C; 21)
(Numrico Virtual)
25 unidades
25
Av. Pringles 33
33 Piso 3
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
46
(Numrico Virtual)
25 unidades
Av. Pringles 3
33 Piso 3
@LastDayofMonth
Devuelve el ltimo da para un mes y ao dado.
Sintaxis
@LastDayOfMonth(Mes; Ao)
Parmetros
Mes - el mes ingresado como expresin numrica o campo del cual desea obtener el
ltimo da.
Ao - el ao en el que cae el mes ingresado como un nmero.
Ejemplo
@LastDayOfMonth(2; 2005) devolver 28.
@LastDayOfMonth(3; 2005) devolver 31.
@Left
Devuelve la cantidad de caracteres (nmero) de la cadena o campo caracter (cadena)
empezando por la izquierda. Use esta funcin con @Ltrim para eliminar los espacios
iniciales, de ser necesario.
Sintaxis
@Left(cadena; nmero)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
47
Ejemplo
Si un cdigo de inventario compuesto por una serie de nmeros contiene el cdigo de
almacn en los primeros 3 caracteres, utilice la funcin @Left de acuerdo al siguiente
ejemplo:
INVENTARIO
@Left(INVENTARIO ; 3)
(C; 20)
ABC-X-1234
ABC
DAX-P1234-9999 DAX
@Len
Toma una cadena de caracteres y devuelve su longitud.
Puede utilizarse para examinar un archivo de contraseas y comprobar si alguna de las
contraseas es menor a una longitud mnima. Tambin puede utilizarse con
otras @Funciones, como por ejemplo, para obtener las 3 ltimas letras de un nombre o
cdigo de producto@Mid(NOMBRE; @Len(NOMBRE)-3; 3).
Sintaxis
@Len(cadena)
Parmetro
Cadena - es la expresin o campo del cual desea obtener su longitud.
Ejemplo
@Len(''A1234'') devolver 5.
@Len(@Trim(NOMBRE)) donde NOMBRE es un campo Caracter, devolver lo siguiente:
NOMBRE @Len(@Trim(NOMBRE))
(C; 12)
(Numrico Virtual)
JUAN
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
48
CARLOS
Nota
@Len(DESCRIPCION) devolvera la longitud del campo DESCRIPCION (incluyendo sus
espacios). Si utiliza @Len sobre un campo Caracter, ser necesario eliminar los espacios
del campo antes de calcular su longitud.
@List
Proporciona un mtodo rpido para extraer todos los registros de un campo que son
coincidentes con una lista de valores.
Una ecuacin que extraiga todos los registros correspondientes a varios clientes implicara
una prdida de tiempo considerable y producira una ecuacin muy larga. Por
ejemplo: NRO_CUENTA = ''a12345'' .OR. NRO_CUENTA = ''B34567'' .OR. NRO_CUENTA =
''c3456567'' etc.....OR. NRO_CUENTA =''z345677''
En su lugar podra utilizarse la funcin @List de esta manera: @List(NRO_CUENTA;
''a12345'; ''B34567''; ''c3456567';... ''z345677'')
Sintaxis
@List(Fuente, Comparador,....Comparador)
Parmetros
Fuente - El nombre del campo a ser evaluado.
Comparador - El valor contra el cual se efectuar la comparacin.
Notas
@List puede estar precedida por el operador .NOT. para extraer todos los
registros
que
no
satisfagan
el
criterio
ingresado,
por
ejemplo .NOT.@List(NRO_CUENTA, ''a12345'', ''B34567'', ''c3456567'',...
''z345677'')
@Log
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
49
100
4.61
1000
6.91
@Log10
Calcula el logaritmo (base 10) de una constante o campo Numrico especificado.
Sintaxis
@Log10(Nmero)
Parmetro
Nmero - es la constante o campo Numrico del cual desea obtener su logaritmo base
10.
Ejemplo
@Log10(VALOR) donde VALOR es un campo Numrico, devolver lo siguiente:
VALOR @Log10(VALOR)
(N; 8)
100
2.00
1000
3.00
@Lower
Convierte un campo tipo Caracter en minsculas. IDEA es sensible al uso de maysculas/
minsculas de manera que si desea bsqueda una cadena en particular dentro de un
campo, o comparar un texto dentro de dos campos pero no tiene la certeza de como
fueron ingresados los datos, ser necesario convertir todo a maysculas o a minsculas.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
50
CICA
cica
Cica
cica
@Ltrim
Elimina cualquier espacio inicial de un campo tipo Caracter. Suele utilizarse para alinear
textos o para comparaciones y anlisis de textos y cadenas.
Para
eliminar
todos
los
espacios
vea @AllTrim y @Trim respectivamente.
slo
los
espacios
iniciales
Sintaxis
@Ltrim(cadena)
Parmetro
Cadena - es el campo Caracter en el que desea eliminar los espacios iniciales.
Ejemplo
@Ltrim('' A123'') devolver ''A123''.
@Ltrim(NOMBRE) donde NOMBRE es un campo Caracter, devolver lo siguiente:
NOMBRE @Ltrim(NOMBRE)
(C; 10)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
51
10)
"
"CaseWare "
CaseWare
"
" C. I. C. "C. I. C. A "
A"
@Match
Proporciona un mtodo rpido para extraer todos los registros de un campo que satisfacen
una lista de valores. Realiza lo mismo que la funcin @List. Compara un valor (o campo)
con cada elemento y devuelve la posicin correspondiente al valor si existe una
coincidencia, de lo contrario devuelve 0 (falso).
@Match generalmente se utiliza en una ecuacin de extraccin para identificar todos los
registros de un campo (como NRO_EMP) que sean iguales a una lista de valores
especificados.
Sintaxis
@Match(Fuente, Comparador, Comparador....Comparador)
Parmetros
Fuente - El nombre del campo a ser evaluado.
Comparador - Los valores contra los cuales se efectuar la comparacin.
Ejemplos
Puede ser utilizada para buscar coincidencias en un campo Fecha, pero para
que funcione correctamente tambin deber utilizar la funcin @Ctod. Por
ejemplo, @Match(FECHA_FACTURA,
@Ctod
("10/24/2008","MM/DD/AAAA"),@Ctod
("11/13/2008","MM/DD/AAAA")) extraera del campo FECHA todas las
fechas de transaccin especificadas.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
52
B987
C456
Notas
@Max
Devuelve el mximo de dos valores. Se utiliza generalmente al emplear una frmula
extensa en la que podran requerirse valores alternativos. Al calcular una provisin de
existencias, puede ser que se deduzcan las asignaciones de las cantidades de existencias
para llegar al "stock "disponible". Sin embargo, si se desea trabajar slo con valores
positivos de stock, Una manera es usar @Max(STOCK_DISP; 0).
Sintaxis
@Max(Nmero1; Nmero2)
Parmetros
Nmero1 - es la primera expresin o campo a ser evaluado.
Nmero2 - es la expresin o campo a cotejar contra la primera expresin o campo.
Ejemplos
@Max(1000; 500) devolver 1000.
@Max(LIM_CR; SALDO) donde LM_CR y SALDO son campos Numricos, devolver lo
siguiente:
LIM_CR SALDO
@Max(LIM_CR; SALDO)
145.67
145.67
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
53
5000.00
100.00
5000.00
@Mid
Esta funcin extrae una sub-cadena (o porcin) de un campo Caracter. Debe especificarse
el campo Caracter o cadena, el caracter inicial de partida para la sub-cadena, y la cantidad
de caracteres requeridos. El uso ms corriente de esta funcin es la extraccin de una
parte de un cdigo en un cdigo de cuenta estructurado. Por ejemplo, para identificar
todos los registros de un almacn particular dnde el nmero del almacn est incluido en
el cdigo del artculo de existencias (por ej. el 6 y el 7 caracter).
Sintaxis
@Mid(cadena; nmero1; nmero2)
Parmetros
Cadena - es el nombre del campo.
Nmero1 - es el caracter inicial de la subcadena a extraer.
Nmero2 - es la cantidad requerida de caracteres a extraer.
Ejemplos
@Mid(''A123-OP-3''; 6; 2) devolver ''OP''.
@Mid(PART; 6; 2) donde PART es un campo Caracter, devolver lo siguiente:
PART
@Mid(PART; 6; 2)
(C; 12)
A123-W1- W1
9
A500-W3- W3
8
Nota
Para llevar a cabo una deteccin de omisiones numricas en una secuencia que comienza
con un caracter de texto, como por ej. A100, A101, etc, ser necesario tomar la porcin
numrica para luego realizar la prueba. Para ello puede crearse un campo Numrico
calculado (N 4;0) y luego utilizar la funcin @Val(@Mid(NRO_REF; 2;
3)) donde NRO_REF es el nombre del campo que contiene la secuencia.
@Min
Devuelve el mnimo de dos valores. Es similar a la funcin @Max.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
54
Ejemplos
@Min(1000; 500) devolver 500.
@Min(LIM_CR; SALDO) donde LM_CR y SALDO son campos Numricos:devolver lo
siguiente:
LIM_CR SALDO
@Min(LIM_CR; SALDO)
145.67
100.00
5000.00
100.00
100.00
@Minutes
Devuelve la porcin correspondiente a los minutos en una hora especificada como un
nmero entre 0 y 59.
Sintaxis
@Minutes(Hora)
Parmetro
Hora - es la hora o campo Numrico o constante del cual se desea obtener la porcin
correspondiente a los minutos. Un valor numrico ser convertido en Hora (HH:MM:SS) y
se devolver la porcin correspondiente a los minutos. Por ejemplo 4832 ser convertido a
01:20:32.
Ejemplos
TIME
@Minutes(HORA)
(H; 8)
(Numrico)
22:40:37 40
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
55
12:35:16 35
TIME @Minutes(HORA)
(N; 8) (Numrico)
62
1.00
4832
20.00
@Mirr
Determina la tasa interna de retorno modificada para una serie de cash flows regulares
basndose en el costo de la inversin y en los intereses de reinversin. Tenga en cuenta
que los egresos e ingresos deben pertenecer a intervalos equivalentes. y que deber
incluir al menos un egreso o ingreso en la ecuacin. La longitud mxima de la ecuacin es
de 3,000 caracteres.
Sintaxis
@Mirr(Tasa_Financ; Tasa_Reinv; Valor1; Valor2; Valor3...) = nmero
Parmetros
Tasa_Financ - La tasa de inters del flujo de fondos.
Tasa_Reinv - La tasa de inters obtenida por la reinversin de los fondos.
Valor - son los egresos (valores negativos) e ingresos (valores positivos) futuros.
Asegrese que los valores de los ingresos y los egresos sean correctos.
Ejemplos
@Mirr(0.10; 12; -120000; 39000; 30000; 21000; 37000; 46000) devolver 5.29.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
56
@Month
Devuelve el mes, en formato Numrico, de una fecha. Esta funcin puede ser utilizada al
analizar comportamientos o tendencias por mes en compras y ventas.
Sintaxis
@Month(Fecha)
Parmetro
Fecha - expresin o campo Fecha del cual desea obtener slo el mes en formato
Numrico.
Ejemplo
@Month(FECHA_PAGO) devolver lo siguiente:
FECHA_PAGO @Month(FECHA_PAGO)
(F; 8)
(Numrico Virtual)
1999/12/25
12
2000/01/31
@NoMatch
Realiza lo mismo que la funcin .NOT.@List. Proporciona un mtodo rpido para extraer
todos los registros de un campo que no coincidan con una lista de valores especificados.
Compara un valor (o campo) con cada elemento especificado y devuelve un 1 (verdadero)
si no se produce una coincidencia, de lo contrario (falso) devuelve 0. @NoMatch tambin
lleva a cabo la operacin inversa a @Match.
Sintaxis
@NoMatch(Fuente, Comparador,....Comparador)
Parmetros
Fuente - El nombre del campo a ser evaluado.
Comparador - El valor contra el cual se efectuar la comparacin.
Ejemplos
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
57
Notas
@Npv
Devuelve el valor actual de una inversin. IDEA asume que los pagos son efectuados al
final del perodo. Tenga en cuenta que los egresos e ingresos deben pertenecer a
intervalos equivalentes.
Sintaxis
@Npv(Tasa; Valor1; Valor2; Valor3...) = nmero
Parmetros
Tasa - es la tasa de descuento.
Valor - sonlos egresos (valores negativos) e ingresos (valores positivos).
Asegrese que los valores de los ingresos y los egresos sean correctos.
Ejemplos
@Npv(0.1; -10000; 3000; 4200; 6800) devuelve 1,188.44.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
58
@Ntod
Convierte un campo con fechas guardadas con tipo Numrico en un campo tipo Fecha con
el Formato de Fecha de IDEA (AAAAMMDD).
Sintaxis
@Ntod(Nmero; Mscara)
Parmetros
Cadena - La expresin numrica del campo a ser convertido en un campo tipo Fecha.
Mscara - es el formato actual de la fecha a convertir.
Ejemplos
@Ntod(12312000; ''MMDDYYYY'') devolver la fecha ''20001231''.
@Ntod(FECHA_APERT; ''DDMMAAAA'') donde FECHA_APERT es un campo Numrico
con la mscara (formato) DDMMAAAA, devolver lo siguiente:
FECHA_APERT @Ntod(FECHA_APERT; "DDMMAAAA")
(N; 8)
(Fecha Virtual)
20101954
19541020
31122000
20001231
Para extraer todas las cuentas abiertas antes del 31/03/1999, utilice la siguiente ecuacin
de extraccin:
@Ntod(FECHA_APERT; ''DDMMAAAA") < ''19990331''
Notas
La mayora de los formatos de fecha son aceptados, incluyendo campos de 2 y 3
caracteres para el da (1-31 o 1-365/366), 2 y 3 caracteres para el mes (01-12 o ENEDIC), y 2 o 4 caracteres para el ao. Para obtener ms informacin acerca de cmo
convertir fechas con dos caracteres para el ao, vea Corte de Siglo.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
59
@Pmt
Calcula la cuota a pagar en un prstamo por cada perodo, incluyendo el capital ms el
inters. IDEA asume que el pago se encuentra adeudado al final del perodo.
Sintaxis
@Pmt(Valor_Actual; Tasa; nPagos) = nmero
Parmetro
Valor_Actual - el importe del prstamo.
Tasa - es la tasa de inters.
nPagos - cantidad de pagos del prstamo.
Debe utilizar la misma unidad de tiempo para la tasa y para la cantidad de pagos. En caso
de trabajar con pagos mensuales pero con una tasa de inters anual, ingrese la tasa de
inters como 0.12/12 o (12/100)/12 y la cantidad de pagos como la cantidad de aos
multiplicada por 12.
Ejemplos
@Pmt(5000; 0.01; 5) devuelve 1030.20.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
60
@Precno
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
61
Nota
Si un archivo ha sido descargado desde un sistema en dos archivos distintos conteniendo
cada uno la mitad de los campos del archivo original pero sin contar con un campo en
comn, utilice la funcin @Precno para unir ambos archivos. Si est seguro de que los
registros se encuentran en el orden correcto, agregue un campo Numrico a cada archivo
utilizando la ecuacin @Precno. Finalmente defina a ambos archivos como pre-ordenados
por nmero de registro y una los campos de ambos archivos.
@Proper
Convierte a mayscula la primera letra de cada palabra perteneciente a una cadena. Se
usa generalmente para formatear los datos antes de imprimir un reporte.
Sintaxis
@Proper(Cadena)
Parmetro
Cadena - es la expresin o campo Caracter para el cual desea convertir la primera letra
de cada palabra a maysculas.
Ejemplo
@Proper(''caseware international inc'') will devolver ''Caseware International Inc'''.
@Pv
Calcula el valor total (capital) de un prstamo. IDEA asume que las cuotas son pagadas al
final del perodo.
Sintaxis
@Pv(Pago; Tasa; nPagos) = Nmero
Parmetros
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
62
Notas
Debe utilizar la misma unidad de tiempo tanto para la tasa como para la cantidad de
pagos. En caso de trabajar con pagos mensuales pero con una tasa de inters anual,
ingrese la tasa de inters como 0.12/12 o (12/100)/12 y la cantidad de pagos
como la cantidad de aos multiplicada por 12.
@Qtr
Esta funcin devuelve un nmero entre 1-4 que representa el trimestre en el que cae una
fecha. Toma una fecha y el fin de ao fiscal. El fin de ao debe ser una cadena de datos
con el formato MMDD.
Sintaxis
@Qtr(Fecha; Fin_de_Ao)
Parmetros
Fecha - es la expresin o campo Fecha para la cual desea saber a que trimestre
pertenece.
Fin_de_Ao - es la fecha de cierre del ao fiscal con el formato MMDD.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
63
(F; 8)
(C; 4)
(Numrico)
20030307 0331
20010920 1231
@Random
Devuelve un nmero aleatorio entre 0 y el parmetro numrico especificado. Puede ser
utilizada en una extraccin para extraer una cantidad especfica de registros aleatorios de
un archivo.
Sintaxis
@Random(Nmero)
Parmetro
Nmero - es el lmite superior que se toma para la extracin de nmero aleatorios.
Ejemplo
@Random(CTA) donde CTA es un campo Numrico, devolver lo siguiente:
CTA
@Random(CTA)
1000
887
@Rate
Calcula la tasa de inters para un perodo anual. El valor actual y el valor futuro deben
utilizar la misma unidad de tiempo, pero no pueden ser iguales a cero. IDEA asume que
los pagos se realizan al final de los perdos.
Sintaxis
@Rate(Valor_Futuro; Valor_Actual; nPerodos) = Nmero
Parmetros
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
64
@Recno
Devuelve el nmero de registro lgico del archivo. El nmero de registro lgico de un
registro particular cambia al indexar el archivo en un orden diferente. En tanto el nmero
de registro fsico sigue siendo el mismo. Ver @Precno.
Sintaxis
@Recno()
Parmetros
No se requieren parmetros
Nota
Si un archivo ha sido descargado desde un sistema en dos archivos distintos conteniendo
cada uno la mitad de los campos del archivo original pero sin contar con un campo en
comn, utilice la funcin @Precno para unir ambos archivos. Si est seguro de que los
registros se encuentran en el orden correcto, agregue un campo Numrico a cada archivo
utilizando la ecuacin @Precno. Finalmente defina a ambos archivos como pre-ordenados
por nmero de registro y una los campos de ambos archivos.
@RegExpr
Las expresiones regulares permiten la bsqueda de coincidencias de patrones de datos.
Sintaxis
@RegExpr(Cadena1; Cadena2)
Parmetros
Cadena1 - campo Caracter o valor al que desea aplicar un patrn o frmula
Cadena2 - el patrn que desea buscar en la cadena1.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
65
Nota
La utilidad verificador de expresin regular es una subserie de aquella encontrada en el
POSIX.2 estndar (ANSI/IEEE std 1003.2; ISQ/IEC 9945-2).
Las expresiones regulares (ER) pueden construirse basndose en las siguientes reglas.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
66
@Remove
Esta funcin elimina todas las ocurrencias de un determinado caracter (cadena2) en una
cadena (cadena1). Puede usarse para eliminar la puntuacin de nombres o direcciones o
caracteres especiales de formato de un cdigo, como por ejemplo un Cdigo de
Clasificacin Bancaria (nmero de Sucursal).
Sintaxis
@Remove(Cadena1; Cadena2)
Parmetros
Cadena1 - la expresin o campo Caracter del cual se eliminarn determinados caracteres.
Cadena2 - el caracter a ser eliminado.
Ejemplo
@Remove(COD_ORDEN; "-'') donde COD_ORDEN es un campo Caracter, devolver lo
siguiente:
COD_ORDEN @Remove(COD_ORDEN; "-")
(C; 12)
16-60-20
166020
166020
166020
12-1830
121830
Nota
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
67
Ejemplos
@Repeat(CODIGO; 2) donde CODIGO es un campo Caracter, devolver lo siguiente:
CODIGO @Repeat(CODIGO ; 2)
(C; 1)
(Caracter Virtual; Lon 2)
X
XX
99
00123X
123X
00123X
@Replace
Reemplaza el texto especificado con un texto alternativo donde cadena1 es el campo
Caracter o cadena, cadena2 es la cadena a ser reemplazada y cadena3 es el texto de
reemplazo.
Puede utilizarse para reemplazar abreviaturas tales como Av. para Avenida al comparar
direcciones.
Sintaxis
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
68
A01234
A00066
A00066
B 999
B00999
@Reverse(@Trim(CUENTA))
"4321A "
"ABC "
"CBA "
" CBA"
@Right
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
69
ABC-X-1234
1234
DA-P1234-9999 9999
@Round
Usada para precisin de redondeos. Puede redondear un nmero a la unidad, decena,
centena, etc ms cercana dependiendo del parmetro ingresado en la funcin. En caso de
no ingresar una precisin, redondea el nmero al nmero entero ms cercano. Puede ser
necesario utilizar la funcin @Round, para volver a comprobar los campos calculados en
un archivo si el sistema ha redondeado sus campos calculados.
Cuando IDEA verifica si dos nmeros son iguales, verifica todas las posiciones decimales.
Por lo tanto, se puede redondear para permitir una tolerancia en las diferencias de
clculos menores.
Sintaxis
@Round(Nmero; Redondear a)
Parmetros
Nmero - el valor o campo Numrico que desea redondear.
Redondear a - la cantidad de dgitos a la cual desea redondear el nmero.
Ejemplo
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
70
@Round
@Round(123.45; 1)
123.00
La dcima
La dcima
@Round(123.63; 2)
124
@Round(123.53; 5)
125
@Round podra
ser
utilizada
en
una
ecuacin
manera: @Round((IMPORTE * TASA_CAMBIO); 0.01)
de
la
siguiente
@Seconds
Devuelve la porcin correspondiente a los segundos en una hora especificada como un
nmero entre 0 y 59.
Sintaxis
@Seconds(Hora)
Parmetro
Hora - es la hora o campo Numrico o constante del cual se desea obtener la porcin
correspondiente a los segundos. Un valor numrico ser convertido en Hora (HH:MM:SS) y
se devolver la porcin correspondiente a los segundos. Por ejemplo 4832 ser convertido
a 01:20:32.
Ejemplo
@Seconds(Hora), devolver lo siguiente:
TIME
@Seconds(HORA)
(H; 8)
(Numrico)
22:40:37 37
12:35:16 16
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
71
TIME @Seconds(HORA)
(N; 8) (Numrico)
62
2.00
4832
32.00
@Seed
Selecciona la semilla de un nmero aleatorio.
Sintaxis
@Seed(nmero)
Parmetro
Nmero - establece la semilla antes de la seleccin de un nmero aleatorio.
Ejemplo
@Seed (123) establece la semilla 123 con anterioridad a la seleccin de un nmero
aleatorio.
Puede usarse para forzar la seleccin de la misma serie de nmeros aleatorios.
@Sln
Calcula la depreciacin lineal de un activo para un perodo.
Sintaxis
@Sln(Costo; Recupero; Vida til) = nmero
Parmetros
Costo - es el costo inicial de un activo.
Recupero - es el valor estimado del activo al finalizar su perodo de depreciacin.
Vida til - es la cantidad de perodos a depreciar.
Ejemplos
@Sln(30000; 7500; 10) devuelve 2250.00.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
72
@Soundex
Determine si el texto es similar en sonido. Devuelve un cdigo que puede ser utilizado
para comparaciones.
Un nombre como Reid podra ser guardado como Reid, Reed o Read.
Aplicando @Soundex a los tres nombres, se obtendra el mismo cdigo. El cdigo consta
de la letra inicial de la palabra y de un nmero de 3 dgitos.
Sintaxis
@Soundex(Cadena)
Parmetro
Cadena - es la expresin o campo Caracter para el cual desea comparar su sonido.
Ejemplo
@Soundex(NOMBRE), donde NOMBRE es un campo Caracter, devolver lo siguiente:
NOMBRE @Soundex(NOMBRE)
(C; 15)
Reid
R300
RIED
R300
READ
R300
Notas
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
73
@Soundex slo debera ser aplicada a una nica palabra, no a una serie de texto. Si
se aplica a una serie de textos se devolver un cdigo slo para la primera palabra.
@SoundsLike
Establece si dos cadenas o dos campos Caracter o Fecha son similares en sonido.
Devuelve un 1 (verdadero) si son similares o un 0 si no lo son (falso).
Sintaxis
@SoundsLike(Cadena1; Cadena2)
Parmetros
Cadena1 - es el sonido a evaluar.
Cadena2 - el campo Caracter o Fecha que ser verificado para ver si suena similar a la
Cadena1.
Ejemplo
@SoundsLike(NOMBRE;''Wallace''), donde NOMBRE es un campo de texto, devolver
lo siguiente:
NOMBRE @SoundsLike("wallace";
NOMBRE)
(C; 15)
(Numrico Virtual)
WALLACE 1
Wallis
William
Nota
Esta @Funcin devolver
el
que @Soundex(Cadena1)=@Soundex(Cadena2).
mismo
resultado
@SpacesToOne
Elimina los espacios sobrantes en una celda dejando un solo espacio entre palabra y
palabra.
Sintaxis
@SpacesToOne(Cadena)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
74
@SpanExcluding
Devuelve los caracteres de la cadena1 contando (pero no incluyendo) desde el caracter
especificado por la cadena2. Puede utilizarse para leer un texto hasta un caracter
especfico, como por ejemplo, la primera palabra de un nombre o campo de direccin,
tomando hasta el primer espacio.
Sintaxis
@SpanExcluding(Cadena1; Cadena2)
Parmetros
Cadena1 - es la expresin o campo Caracter del cual desea obtener determinados
caracteres hasta un caracter especificado.
Cadena2 - es el caracter que indicar el tope de caracteres a extraer de la cadena1. Esta
caracter no ser incluido en el resultado
Ejemplos
En caso de trabajar con cdigos de productos compuestos por diversas partes como GAL123, GAL-333, IDEA-999, etc, si deseara analizar la primera parte del cdigo (hasta el "-"),
utilice lo siguiente:
PRODUCTO @SpanExcluding(PRODUCTO ; "-")
(C; 15)
GAL-123
GAL
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
75
GAL-333
GAL
IDEA-999
IDEA
Ejemplos
Para extraer cualquier direccin que comience con un nmero de casa o de calle,
utilice:
@SpanIncluding(DIRECCION; "0123456789 ")
Ejemplo
Nmeros
Seguro
Nacional
Reino
Unido:
.NOT. @SpanIncluding(@Reverse(NINO);"ABCD") identificara los nmeros de
seguro no terminados en los caracteres A - D.
@Split
Divide una cadena caracter en segmentos mediante un caracter especificado (espacios o
comas) o una cadena caracter (://) y devuelve un segmento especificado. Cualquier
caracter o cadena dentro del texto a ser dividido puede ser utilizado como el separador.
Sintaxis
@Split(Cadena; Separador_Inicial; Separador_Final; Segmento; [orden])
Parmetros
Cadena - la expresin o campo Caracter del cual desea extraer un segmento.
Separador_Inicial - el caracter (o cadena de caracteres) a ser utilizado como el
separador inicial del segmento.
Separador_Inicial - el caracter (o cadena de caracteres) a ser utilizado como el
separador inicial del segmento.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
76
"://";
"/";
1) devolver
Nota
Cuando el Separador_inicial y el Separador_final sean el mismo caracter y dicho caracter
aparezca ms de dos veces, la primera aparicin ser tomada como el Separador_inicial,
la segunda como el Separador_final y la tercera ser tomada como el Separador_inicial
para el segundo segmento. En tales casos sera til usar un espacio como el Separadorinicial tal como se muestra en los siguientes ejemplos:
@Split("28/Oct/Nov/Dic/2005"; "/"; "/"; 1) devolver "Oct".
@Split ("28/Oct/Nov/Dic/2005"; "/"; "/"; 2) devolver "Dic"
@Split ("28/Oct/Nov/Dic/2005"; ""; "/"; 2) devolver "Oct"
@Split ("28/Oct/Nov/Dic/2005"; "/"; "/"; 3) devolver "Nov"
@Sqrt
Devuelve la raz cuadrada de un campo Numrico o expresin.
Sintaxis
@Sqrt(nmero)
Parmetro
Nmero - es la expresin o campo Numrico del cual desea obtener su raz cuadrada.
Ejemplo
@Sqrt(100) devolver 10.
Nota
En caso de utilizar nmeros negativos se devolver cero como resultado.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
77
@Stratum
Determina el estrato en el que cae cada registro de un campo Numrico o valor
especificado.
El primer parmetro indica el campo Numrico o valor mientras que los otros parmetros
indican los lmites de cada estrato (hasta 16 estratos) en orden ascendente.
El valor devuelto es el primer estrato cuyo lmite superior es mayor o igual al valor
especificado. Si un estrato vlido no es encontrado, la funcin devuelve -1.
Sintaxis
@Stratum(Nmero1; Nmero2; Nmero3....)
Parmetros
Nmero1 - es el nmero o campo Numrico a evaluar.
Nmero2 - es el lmite superior del primer estrato.
Nmero3 - es el lmite superior del segundo estrato.
Y as sucesivamente hasta 16 estratos.
Ejemplos
@Stratum(IMPORTE; 0; 50; 100; 150) devolver 150 si IMPORTE = 150
@Stratum(IMPORTE; 0; 100; 250; 500; 1000) donde IMPORTE es un campo
Numrico devolver lo siguiente:
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
78
IMPORTE @Stratum(IMPORTE;
(N;
12; 0; 100; 250; 500;
1000)
2)
(Numrico Virtual)
100.50
250
500.00
500
1050.00
-1
Esta @Funcin puede ser utilizada, por ejemplo, para clasificar los artculos de
existencias donde los valores de los estratos variarn de acuerdo a las caractersitcas de
los artculos.
@Strip
Esta funcin elimina todos los espacios en blanco (excepto los finales), la puntuacin y los
caracteres de control de un campo texto, dejando una cadena de caracteres y dgitos.
Puede utilizarse para comparar campos de nombre o direccin en un mismo archivo o en
diferentes archivos.
Sintaxis
@Strip(Cadena)
Parmetros
Cadena - es la expresin o campo Caracter del cual desea eliminar todos los espacios, la
puntuacin y los caracteres de control.
Ejemplo
@Strip(DIRECCION) donde DIRECCION es un campo de direcciones de formato libre,
devolver lo siguiente:
NOMBRE
@Strip(NOMBRE)
(C; 25)
TJWilliamAve
Nota
@Strip puede ser utilizada en combinacin con @Upper o @Lower de ser necesario, por
ej. @Upper(@Strip(NOMBRE)).
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
79
@StripAccent
Esta funcin tomar un caracter acentuado de una cadena y lo reemplazar por un
caracter no acentuado.
Sintaxis
@StripAccent(cadena)
Parmetro
Cadena - Es la expresin caracter o campo en la cual el caracter acentuado va a ser
reemplazado.
Ejemplo
CIUDAD
@StripAccent(CIUDAD)
(C; 24)
Qubec
Quebec
vila
Avila
Hbert
Herbert
Dsseldorf Dusseldorf
@Syd
Calcula la depreciacin de un activo por el mtodo de anualidades (depreciacin por suma
de dgitos de los aos aplicado a un valor constante) para un perodo especfico. Tenga en
cuenta que la unidad utilizada para indicar la vida til debe ser la misma para los perodos.
Sintaxis
@Syd(Costo; Recupero; Vida til; Perodo) = nmero
Parmetros
Costo - es el costo inicial de un activo.
Recupero - es el valor estimado del activo al finalizar su perodo de depreciacin.
Vida til - es la cantidad de perodos a depreciar.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
80
RECUPERO;
RECUPERO;
RECUPERO;
VIDA
VIDA
VIDA
UTIL;
UTIL;
UTIL;
1)
2)
3)
@Time
Devuelve la hora actual del sistema en formato HH:MM:SS.
Sintaxis
@Time()
Parmetro
No se requieren parmetros
Ejemplo
Si la hora es 3:05 y 10 segundos (PM) entonces @Time devolver ''15:05:10''.
@Trim
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
81
slo
los
espacios
iniciales
Sintaxis
@Trim(Cadena)
Parmetro
Cadena es la expresin o campo Caracter del cual desea eliminar los espacios finales.
Ejemplos
@Trim(''CASEWARE '') devolver ''CASEWARE''.
@Match(@Trim(CUENTA);"A12"; "B23455"; "B9999")
@Ttoc
@ttoc - Convierte una hora o nmero en una cadena con el formato HH:MM:SS.
Sintaxis
@Ttoc(HORA)
Parmetro
Hora - es la constante de hora, campo Hora o campo Numrico a ser convertido al
formato de cadena HH:MM:SS. Los valores en un campo Numrico son interpretados como
la cantidad de segundos. Por ejemplo el valor numrico 86400 es ledo como 86400
segundos o 24 horas, o 4832 es una hora, 20 minutos y 32 segundos.
Ejemplo
TIME
(H; 8)
@Ttoc(HORA)
(Caracter Virtual; Lon 8)
12:11:23 12:11:23
23:23:45 23:23:45
@Upper
Convierte un campo Caracter a maysculas. IDEA es sensible al uso de maysculas/
minsculas de manera que si desea bsqueda una cadena en particular dentro de un
campo, o comparar un texto dentro de dos campos pero no tiene la certeza de como
fueron ingresados los datos, ser necesario convertir todo a maysculas o a minsculas.
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
82
CICA
Cica
CICA
@Val
Convierte un nmero guardado como caracter al formato numrico. Los datos numricos
que no se usan para clculos se guardan a menudo en formato Caracter, como por
ejemplo, los nmeros de cuenta. Sin embargo, para llevar a cabo algunas pruebas de
auditora tales como buscar omisiones en una secuencia, ser necesario convertir estos
campos al formato numrico. Para ello puede utilizarse la funcin @Val.
Vea a su vez, la funcin @Str que convierte un campo Numrico en un campo Caracter.
Para valores numricos con separador de decimales y separador de miles, guardados
como tipo de dato caracter, utilice la funcin @CurVal para quitar dichos separadores.
Si el campo contiene datos no numricos, @Val convertir el nmero hasta el primer
caracter.
Sintaxis
@Val(cadena)
Parmetro
Cadena - es la expresin o campo Caracter que contiene los nmeros a ser convertidos
en formato numrico.
Ejemplos
@Val(''1234'') devolver el nmero 1234.
@Val(NRO_CTA) donde NRO_CTA es un campo Caracter, devolver lo siguiente:
NRO_CTA @Val(NRO_CTA)
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
83
(C; 6)
(Numrico Virtual)
123456
123456
123A45
123
A12345
@Workday
Devuelve el nmero 1 si la fecha cae en un da de semana y 0 si la fecha cae en un fin de
semana, de acuerdo a lo especificado en el dilogo Opciones (Ver > Opciones).
Esta @Funcin puede ser utilizada al analizar ventas en das no laborables.
Sintaxis
@Workday(Fecha)
Parmetro
Fecha - es la expresin o campo Fecha para la cual desea determinar si cae en un da de
la semana o en un fin de semana.
Ejemplo
FECHA_OPER @Workday(FECHA_OPER)(Numrico)
(F; 8)
20030307
20030920
@Year
Devuelve el ao, en formato Numrico, de una fecha.
Puede utilizarse al analizar la relacin de las ventas por ao.
Sintaxis
@Year(Fecha)
Parmetro
Fecha - es la expresin o campo Fecha del cual desea obtener slo el ao en formato
Numrico.
Ejemplo
@Year(FECHA) devolver lo siguiente:
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
84
FECHA
@Year(FECHA)
(F; 8)
(Numrico Virtual)
19991225 1999
20000101 2000
SAMS2000 SAC | Av. Ricardo Palma 1280 Ofc. 302 | Telf: 7156303 | www.sams2000.com
85