Está en la página 1de 8

FUNCIONES

Una funcin es un subprograma que puede llamar desde su script que ejecuta
una operacin y devuelve un resultado.
Power Script proporciona un muy variado grupo de funciones pre construidas

que se usan para actuar sobre los objetos y controles de una aplicacin. Hay

funciones para abrir una ventana, cerrar la misma, habilitar un botn, recuperar

datos, actualizar una base de datos as por el estilo.

Se puede adems definir funciones propias para que procesen de manera

particular una aplicacin.

Funciones numricas

Abs Valor absoluto de un nmero.


Cos Angulo coseno de un ngulo en radianes.
Exp Valor e del exponente x.
Fact Factorial de x.
Int Valor entero de un nmero.
Log Logaritmo natural (base e) de un nmero.
LogTen Logaritmo decimal (base 10) de un nmero.
Max Valor mximo de dos nmeros.
Min Valor mnimo de dos nmeros.
Mod Residuo de la divisin de dos nmeros.
Round Nmero redondeado con un nmero de decimales.
Sin Seno de un ngulo en radianes.
Sqrt Raz cuadrada de un nmero.
Tan Tangente de un ngulo en radianes.

Funciones de conversin y validacin de tipo:

Dec Obtener el contenido de un string como un decimal.


Double Obtener el contenido de un string como un double.
Integer Obtener el contenido de un string como un integer.
Long Obtener el contenido de un string como un long.
Real Obtener el contenido de un string como un real.
IsDate Determina si el argumento contiene una fecha vlida.
IsNull Determina si el argumento contiene un null.
IsNumber Determina si el argumento contiene un nmero.

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


IsTime Determina si el argumento contiene una hora vlida.
String Obtener de una valor un string.
Funciones de cadena:

Asc Obtiene el cdigo ASCII correspondiente, de un carcter de tipo cadena


Char Retorna el carcter correspondiente al cdigo ASCII
Fill Retorna una cadena con una longitud determinada del carcter
especificado. Ejm. Fill(p,5)
Left Un nmero especificado de un string comenzando por la izquierda. Ejm.
Left(Sonia,2)
Len Retorna la longitud de una cadena
Lower Devuelve un string con todas las letras en minsculas
LeftTrim Elimina los espacios en blanco iniciales de un string.
Mid Extrae caracteres a partir de una Posicin. Ejemplo: Mid(Claudia,4,2)
retorna ud

Pos Retorna la posicin donde comienza una cadena dentro de otra cadena.
Ejemplo: Pos(Power Builder,Bu) Retorna 7

Right Un nmero especificado de un string comenzando por la derecha. Ejm.


Right(Sonia,2)
RightTrim Elimina los espacios en blanco finales de un string.
Trim Elimina los espacios en blanco iniciales y finales.
Upper Devuelve un string con todas las letras en maysculas
Reverse Invierte el orden de los caracteres de un string.

Funciones de fecha:

Day Retorna el da de una fecha. Ejemplo: Day(2001-04-21) retorna 21


Dayname Retorna el nombre de da de la semana.
Ejemplo: DayName(2001-04-22) retorna Sunday.

Daynumber Retorna el nmero de da de la semana


Ejemplo: DayNumber(2001-04-22) Retorna 1

Dayafter Devuelve los das que hay entre dos fechas. Ejemplo:
DayAfter(2001-04-22, 2001-04-18) retorna -4

Hour Retorna un entero que corresponde al nmero de horas, que se


encuentre en un dato de tipo hora. Ejemplo: Hour(19:12:42) retorna
19.

Minute Retorna los minutos. Ejemplo: Minute(19:42:13) retorna 42.

Month Retorna el nmero correspondiente al mes de una fecha.


Ejemplo: Month(2001-04-22) retorna 4

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


Now Devuelve la Hora del sistema.

RelativeDate Retorna la fecha con respecto a un determinado nmero de da.


Ejemplo: Relativedate(today(), -25) la fecha hace 25 das respecto a la
fecha actual.

Second Retorna el nmero de segundos. Ejemplo: Second(14:13:45) retorna


45 expresado en un dato de tipo cadena.

Today Retorna la Fecha y hora del sistema


Year Retorna el ao de una fecha. Ejemplo: year(today())

FUNCIONES DEFINIDAS POR EL USUARIO (FDU):

Adems de las funciones con la que cuenta el Power Script, el usuario puede
crear una funcin cuando un proceso se repita ms de una vez en el desarrollo
de una aplicacin.
Una funcin definida por el usuario es una coleccin de declaraciones de
PowerScript que realizan algn proceso.

Tipos de FDU:

1. Funciones Globales: no estn asociadas con ningn objeto en su


aplicacin y siempre son accesibles en cualquier parte de la aplicacin. Si
una funcin es de uso general y se utiliza en toda la aplicacin, se crea
una funcin global.

2. Funciones a nivel de Objeto: estn definidas para una ventana, men,


objeto de usuario u objeto de aplicacin. Si una funcin solo se utiliza en
un tipo particular de objeto, se crea una funcin a nivel de objeto.

Se puede restringir el acceso a una funcin a nivel de objeto configurando


el nivel de acceso, el cual puede ser:

Pblico:
La funcin se puede usar en cualquier Script en la aplicacin.

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


Privado:
Se utiliza slo en los Scripts para los eventos del objeto en que la funcin
est definida.

Protegido:
Se utiliza slo en los Scripts del objeto en que la funcin est definida y
Scripts para los descendientes de ese objeto.

Si una funcin slo se usar dentro de un objeto, se debe definir su acceso


como privado o protegido para asegurar que la funcin no sea usada de
manera inapropiada fuera del objeto.

PRCTICA N01:
Crear una funcin global que permita obtener el promedio de 4 notas de un
alumno.

1. Para crear la funcin debemos de ir al Men File, New y selecciona Function

A continuacin nos mostrar el painter de la Funcin en donde veremos el


Script y la ventana en donde se define la funcin.

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


2. Crear la funcin f_prom, cuyo acceso ser Pblico, en la caja Function Name,
ponerle f_prom. En Return Type seleccionar el tipo de datos que devolver la
funcin, podemos elegir decimal o real.
3. Para esta funcin necesitamos 4 argumentos. En Argument Type indicar el
tipo de datos del argumento y en Argument Name su nombre. Ejm: para el
argumento de la primera nota, podemos elegir de tipo entero y nombre Nota1.
Para agregar otro argumento hacer click con el botn derecho del mouse y
elegir Add Parameter.

4. Luego que hemos ingresado los argumentos para las 4 notas, procedemos a
hacer la siguiente codificacin:

dec prom
prom=(nota1+nota2+nota3+nota4)/4
return (prom)

5. Grabar la funcin con el nombre f_prom.

6. Crear una ventana y hacer un diseo en donde ingresaremos las 4 notas y


veremos el promedio.

7. En el Scritp del botn de comando de Aceptar y en el evento Clicked hacer la


la siguiente codificacin:

Int n1, n2, n3, n4

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


dec prom
n1 = integer(sle_1.text)
n2 = integer(sle_2.text)
n3 = integer(sle_3.text)
n4 = integer(sle_4.text)
prom = f_prom(n1,n2,n3,n4)
sle_5.text=string(prom)

PRCTICA N02:
Hacer una aplicacin que utilice una funcin a nivel de ventana que perminta
convertir una fecha (mm/dd/aa) a letras.

1. Crear la ventan w_fecha con la siguiente apariencia:

2. Para crear una funcin a nivel de ventana ir al Script y de la lista de objetos


debemos de seleccionar la opcin (Functions). Crear la funcin dia de acceso
pblico y de tipo de retorno string. Esta funcin tiene un argumento, llamarlo
ndia y de tipo integer. En su script hacer la siguiente codificacin y grabarla:

Choose case ndia


Case 1
Return "Domingo"
Case 2
Return "Lunes"
Case 3
Return "Martes"
Case 4
Return "Miercoles"
Case 5
Return "Jueves"
Case 6

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


Return "Viernes"
Case 7
Return "Sbado"
End choose

3. Crear la funcin mes, de acceso pblico, tipo de dato de retorno string. Esta
funcin tiene un argumento llamado nmes , de tipo integer. Codificarla y
grabarla:

Choose case nmes


Case 1
Return "Enero"
Case 2
Return "Febrero"
Case 3
Return "Marzo"
Case 4
Return "Abril"
Case 5
Return "Mayo"
Case 6
Return "Junio"
Case 7
Return "Julio"
Case 8
Return "Agosto"
Case 9
Return "Setiembre"
Case 10
Return "Octubre"
Case 11
Return "Noviembre"
Case 12
Return "Diciembre"
end choose

4. Codificar en el control Sle, en el evento Other, lo siguiente:

String DiaSemana, NumeroDia, Ao, MesActual


DiaSemana = Dia(DayNumber(Date(sle_1.text)))
NumeroDia = string(Day(Date(sle_1.text)))
MesActual = Mes(Month(Date(sle_1.text)))
Ao = String(Year(Date(sle_1.text)))
st_2.text = "Huacho, " + DiaSemana + " " + NumeroDia + " de " + MesActual +
" del " + Ao

Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza


Facultad de Ingeniera Ing. Ana Doris M. Barrera Loza

También podría gustarte