manual de power builder - Pablo Castillo De La Rosa

Anuncio
“Manual de “Power Builder”
Pablo Castillo 1997
MANUAL DE “POWER BUILDER“
GetClicketRow.- Obtiene el número de la fila al hacer clic o doble clic en un DataWindow.
TriggerEvent().- Ejecuta o dispara cualquier evento que este sea de una ventana desde
cualquier Scrip (un evento es chlick, rowfocuschanged,etc).
Ejemplo.- dw_maestro.TriggerEvent(Rowfocuschanged!)
Ejecuta el evento Rowfocuschanged del DataWindow maestro.
Un triggerEvent es un evento de programación de un Window.
SetRow().- Posicióna o coloca el cursor en la fila de un DataWindow .
Ejemplo.- dw_maestro.SetRow(2)
Coloca o posiciona el cursor el la segunda fila del dataWindow maestro
SetColumn().- Posiciona, coloca el cursor en la columna especificada.
Ejemplo.- dw_maestro.SetColumn(4)
Posiciona el cursor en la columna 4, es decir la columna que esta en la posición 4,
la no es independiente de las tablas.
dw_maestro.setcolumn(nombre)
Posiciona el cursor en la columna llamada nombre
SetItem(#fila, Nombre Columna, Valor a ingresar).- Ingresa un dato en una fila y columna
indicada en un DataWindow.
ejemplo.- dw_maestro.SetItem(3,”C_I”,’171212874-8’)
Ingresa en la fila 3 del DataWindow maestro en la fila C_I la cedula de identidad
’171212874-8’
IF(IsRowNew(),0,1).- Se lo usa para que un campo especifico se active o se desactive.
Ejemplo: Se lo usa para que el usuario no pueda cambiar algún campo como el campo de
código.
Este comando se lo escribe o coloca dentro de un campo (seleccione atributos del
campo, luego en “protec” escriba el comando IF(IsRowNew(),0,1)
GetItemNumber(Fila, Nombre Columna).- Obtiene un dato numérico de una fila y columna
especificada del DataWindow
GetItemString(Fila, Npmbre Columna).- Obtiene un data tipo cadena de una fila y columna
especificada en el DataWindow
GetColumnName( ).-Optiene el nombre de la columna en la que se encuentra el cursos,
retorna el nombre la columna que se encuentra enfocada.
Ejemplo
String cadena
Cadena =dw_maestro.GetColumnName()
Devuelve el nombre de la columna en al que se encuentra el cursor
1
“Manual de “Power Builder”
Pablo Castillo 1997
SetTrans(sqlca).- Permite que el DataWindow pueda aceptar datos que son sacados de la
base física.
SetTransObject(sqlca).- Permite que el DataWindow pueda aceptar datos que son sacados de
la base física, y además de recuperar datos asociados a un campo por medio de un
DataWindow (Listas desplegables desde un DataWindow).
GetRow().- Regresa o reporta el número de la fila en la que se encuentra el cursor.
Getcolumn().-Regresa o reporta el número de la columna en la que se encuentra el cursor.
Hide().- Hace invisible una pantalla.
Ejemplo: w_ejemplo.Hide()
Cuando se quiere ingresar otro tipo de dato, o ir a otra pantalla.
Show().- Hace visible la pantalla que se que se izo invisible.
Ejemplo: w_ejemplo.Show()
Se usan las dos instrucciones para invisible y luego de un proceso se la hace visible.
SetRedraw(boolean).- Controla la autograbación de los datos (Activa o desactiva
DataWindow).
Ejemplo dw_maestro.SetRedraw(false)
Desactiva el DataWindow maestro, para que no se puedan ingresar datos o para que
no se muevan por el DataWindow mediante la barra de scroll. cuando de ingresan
datos en un DataWindow detalle.
FindRequired(primary!, fila, columna, Nombre_Columna, bolean).Encuentra la primera columna que tenga un valor requerido (valor que se debe ingresar
siempre), reporta la fila y la columna del valor requerido que aun no tiene un valor ingresado,
además reporta el nombre de la columna, fila tiene que ser una variable de tipo long.
Ejemplo: long fila=1
integer columna=1
string nombre_columna
dw_maestro.FindRequired(primary!,fila, columna,Nombre_columna, true)
Devuelve el nombre de la columna en Nombre_Columna en este caso, además
regresa la fila y la columna correcta (correspondiente); si no ingreso el valor de la
cédula de identidad en nombre_columna estaría almacenado “C_I”, y la posición en
la que se encuentre la fila y la columna.
SetFocus().- Enfoca una fila especificada de un DataWindow, el enfoque se da de uno en uno
es decir de DataWindow en DataWindow.
Ejemplo.- dw_maestro.SetFocus(5)
Enfoca la fila 5 del DataWindow maestro
SetRowFocusIndicator().- Cambia el diseño del cursor (puntero)
Ejemplo.- dw_maestro.SetRowFocusIndicator(Hand!)
Dibuja una mano cuando se enfoca luego de setfocus
2
“Manual de “Power Builder”
Pablo Castillo 1997
ModifiDataWindow.EditStile.EditMask.- Esta no es una instrucción el la dirección que el
programador debe usar para cuando quiere ingresar una mascara de edición.
Ejemplo: (97-09-02)
Edición de una mascara para una fecha, lo que aparece es ( - - ).Esto se lo hace
dentro de los DataWindows y sobre las columnas
Run().- Ejecuta un programa desde un Script se debe incluir el directorio correcto (path).
Ejemplo: Run(“C:\Norton\nc.exe”)
Retrieve().- Obtiene las filas de una Base De Datos para presentarlo en un DataWindow .
Ejemplo: dw_maestro.retrieve()
Obtiene los datos de la base en el dw_maestro, de la tabla que esta asociada al
DataWindow
Reset().- Limpia los datos del DataWindow .
Enabled(boolean).- Activa o desactiva botones.
Ejemplo: cb_guardar.enabled = (false)
Desactiva el boton guardar.
InsertRow().- Inserta una fila en un DataWindow, en la posición especificada.
ejemplo: dw_maestro.InsertRow(0)
Inserta una fila en la posición 0
DeleteRow().- Elimina o borra una fila de la posición especificada de un DataWindow .
Ejemplo: dw_maestro.DeleteRow(5)
Borra la fila numero 5 del DataWindow maestro
ScrollToRow().- Cambia la posición de fila pero no la Columna.
Despliega el control de un DataWindow a la fila especificada, no importa si esta se la ve o no
en el DataWindow .
Ejemplo: DataWindow_maestro.ScrollToRow(5)
Mueve la fila o enfoca la fila 5 del DataWindow, no importa se la fila no se la ve el
DataWindow , mueve el puntero donde esta se encuentra.
Commit;.- Guarda , salva, o ejecuta los cambios que se hicieron en el DataWindow en la base
física, commit equivale a guardar.
Rollback;.- Cancela los cambios que se hicieron en el DataWindow , es decir no los graba en
la base física.
Update().- Determina si los datos del DataWindow han sido modificados, retorna 1 si los
datos han sido modificados y -1 si estos no son actualizados.
Actualiza la Base De Datos con los cambios hechos en el control del DataWindow .
Ejemplos: if dw_maestro.update()=1 then
commit;
else
rollback;
end if
3
“Manual de “Power Builder”
Pablo Castillo 1997
Open().- Abre o ejecuta una pantalla especificada.
Ejemplo: open(w_presentar)
Abre la pantalla presentar
Close().- Cierra o termina la ejecución de una pantalla.
Ejemplo: close(parent)
Cierra la pantalla que actualmente se encuentra ejecutándose.
Messagebox(“Titulo”, ”Mensaje”, teclas, posición).- Presenta una pantalla o una caja que
presenta en pantalla el mensaje que desee presentar.
Titulo.- es el titulo de la caja de mensaje.
Mensaje.- Describe el mensaje dentro de la caja de mensajes
Teclas.- presenta las teclas que se van ha manejar en el mensaje,
Posición.- es la tecla que se activa.
Mensagebox también devuelve un valor entero que es el número es el numero la posición del
la tecla que fue pulsada.
Ejemplo: integer num;
num=MessageBox(“Borrar”, ”Desea Borrar Las Ocurrencias”, YesNo!,1) ;
Presenta en la pantalla el mensaje y asigna el valor de la tecla que el usuario haya
seleccionado, si selecciona yes num tiene 1.
String(variable).- Transforma la variable numérica en una variable de tipo cadena.
Ejemplo: integer x=23
string cadena
cadena=string(x)
cadena=string(today(), "dd/mm/yyyy")
En cadena se almacena la fecha actual del sistema con el formato especificado, el
contenido de la variable cadena es "31/01/1999".
Integer(variable).- Transforma una variable tipo cadena en una tipo entero
ejemplo: integer x
x=integer(“24”)
La variable tiene que ser tipo cadena, o como en el caso del ejemplo un “24” que
representa un carácter.
Now().- Retorna la hora del sistema en el momento o instante en que es ejecutado el comando.
Ejemplo: time hora;
hora=now()
Today().- Retorna la fecha del sistema
Ejemplo: date fecha
fecha=today()
Asc(string).- Convierte el primer carácter de una cadena a su valor ASCII
Ejemplo: string cadena
4
“Manual de “Power Builder”
Pablo Castillo 1997
integer x
cadena=”lover”
x=ASC(cadena)
En x se encuentra almacenado el código ASCII de “l” que es 108
Char(integer).- Obtiene el carácter del entero deseado.
Ejemplo: char c
c=char(108)
En c se almacena “l” que es el carácter de 108
Len(string).- Retorna la longitud de la cadena ingresada.
Ejemplo: integer x;
x = len(“Pablo”)
En x se guarda la longitud de la cadena pablo, la longitud retornada en x es 5.
Mid(string, inicio, longitud).- Obtiene un numero de caracteres de una cadena.
String: es la cadena de la cual se obtendra el carácter.
Inicio: es el punto de inicio desde el cual se obtiene los caracteres.
Longitud: Es el número de caracteres que se van a obtener.
Ejemplo: string cadena1, cadena2
cadena1 = “MONTUFAR”
cadena2= mid(cadena1,1,4)
En cadena2 se almacena “MONT”.
AcceptText( ).- Determina si en el data window se han ingresado todos los valores de las
columnas requeridas, este devuelve el mensaje de error almacenado en el columna que no
tiene o no se ha ingresado el valor requerido.
Ejemplo: string cadena1
if DataWindow _1.AcceptText( ) = 1 then
cadena1=”usted ha ingresado un valor”
else
cadena1=”usted no a ingresado ningún valor”
end if
Upper( string ).- Transforma la cadena ingresada en su respectivas mayúsculas.
Ejemplo: string cadena;
cadena= upper(Nueva)
En la variable cadena se almacenan “NUEVA”
Lower(string).-Transforma la cadena ingresada en sus respectivas minúsculas.
Ejemplo: string cadena
cadena=lower(ALTERNATIVA)
En cadena se almacenara “alternativa”
Timer(numero).- Es una función de retardo de tiempo, el cual ejecuta el evento Timer del
Window al que este asociado, es decir que este (evento timer del Window) se ejecuta, tantas
5
“Manual de “Power Builder”
Pablo Castillo 1997
veces como el programador lo requiere, este evento se lo finaliza cuando en el scrip se ejecute
Timer(0).
Ejemplo:
En el script del Window denominado inicio (evento inicio del window) , el cual
inicializa a timer e imprime la hora actual
st_time.Text = String(Now(), "hh:mm")
Timer(60)
En el script del Window denominado timer (evento timer del Window), se ejecuta
cada minuto, es decir presenta la hora actual cada minuto.
st_time.Text = String(Now(), "hh:mm")
Date(cadena).- Tranforma la cadena a un valor de fecha (date).
Ejemplo:
date fecha
fecha=Date(“02/01/1998”)
En fecha se almacena 02/01/1998
Nota: La fecha depende de la configuración del sistema por ejemplo “01/01/1998”
o “1998/01/01”, la cual debe ser ingresada de acuerdo como este configurado en el
sistema
Year(fecha).- Función destinada obtener el año de la fecha.
Ejemplo:
Year(fecha)
Year retorna 1998 como resultado.
Isdate(cadena).- Determina si la cadena ingresada es un fecha verdadera o falsa, la función
devuelve verdadero (true) o Falso (false)
Ejemplo:
Isdate(“32/01/1998”)
Isdate devuelve false.
Isdate(“01/01/1998”)
Isdate devuelve true
Modify(string).- Modifica especificaciones sobre DataWindows, estas especificaciones son
cambiadas o pueden ser cambiadas desde un scrip cualquiera, puede añadir quitar objetos del
DataWindow, para proveer especificaciones que el usuario desee o requiera.
Ejemplo:
dw_maestro.modify("datawindow.print.preview.zoom = " + '77')
El ejemplo pone el zoom del DataWindow maestro en un 77 % es decir se puede
incrementar o decrementar el Zoom del datawindow, esto se lo usa especialmente
6
“Manual de “Power Builder”
Pablo Castillo 1997
en los reportes de tipo “COMPOSITE”, que son aquellos que sirben para la
presentación de reportes escritos o en pantalla.
dw_cust.Modify("destroy logo")
Este ejemplo borra el mapa binario Bitmap llamado logo del DataWindow
dw_cust.
print().- Imprimé lo que se encuentra en el DataWindow.
ejemplo:
dw_maestro.print()
Imprime lo que se encuentre en el DataWindow maestro.
Autoscroll.- Esta opción se la utiliza para que se de un autoscroll en los campos tipo text.
Para el ingreso de datos cuando estos son muy largos y hay que reducir el ancho y ponerlo
para leerlo en líneas, mediante este el cursor sigue a la siguiente línea automáticamente.
Setnull(variable).- Pone nulo o anula variables.
DaysAfter ( fecha1, fecha2 ).- Determina el numero de días que existen entre dos fechas.
ejemplo: integer dias
dias= DaysAfter(1999-01-31,1999-01-01)
Dias almacenara 30
dias= DaysAfter(1999-01-01,1999-01-31)
Dias almacenara -30
RelativeDate ( date, n ).- Desplaza la fecha ingresada el numero de días especificados.
Date.- Fecha ingresada.
N.- Numero de dias a despalzar la fecha
Ejemplo:
Date fecha
Fecha= RelativeDate(1999-01-31, 10)
En fecha se amacenara 1999-02-10, es decir se desplazo 10 días de la fecha
ingresada.
DataWindow.- Este bambien es un tipo de dato al cual se asignan Datawindows.
Ejemplo: Datawindow imprimir
integer filas
imprimir=dw_2
filas= imprimir.rowcount()
7
“Manual de “Power Builder”
Pablo Castillo 1997
Describe.- Se lo usa sobre Datawindos para determinar que propiedades están asignadas a
ellos, estas pueden ser: impresora, tabla, todos los objetos y propiedades asignadas a un
DataWindow.
Ejemplo: string cadena
cadena = imprime.Describe("DataWindow.Printer")
En cadena se almacena la impresora que esta asignada en el Datawindow, esta
puede ser asignada por el usuario o por el sistema (por defecto).
Printsetup().- Muestra el cuadro de dialogo para seleccionar impresora.
Modify(cadena).- Modifica las propiedades asociadas a un DataWindow, puede adicionar o
mantener objetos del DataWindow
Ejemplo.- Datrawindow imprime
imprime=dw_2
imprime.modify("datawindow.print.copies = " + "2")
Determina que el numero de copias que seran impresos es 2 cuando se imprima el
data window mediante el comando print
imprime.modify("datawindow.print.Paper.Size = " + "0")
Establece que el tamaño del papel es el seleccionado por Defecto.
imprime.modify("datawindow.print.Page.Range= "+"1-5")
Se fijan el rango de paginas que sera impreso
GetFileSaveName ( Titulo, path, archivo {, extension {, filtro } } ).- Muestra el cuadro de
dialogo para salvar, o guardar archivos, sus argumentos son:
Titulo.- Determina el titulo del cuadro de dialogo
Path.- Establece el path por defecto, este puede ser un valor nulo
Archivo.- En esta seccion de debe especificar el nombre del archivo que aparecera en el
cuadro de dialogo, este puede ser un valor nulo, con lo cual el usuario sera el encargado de
asignar un nombre para su archivo
Extension.- Se establece la extensión del archivo que apareceran dentro del cuadro de dialodo,
por ejemplo .TXT, .BAS, .BAK.
Filtro.- Establece el filtro de los archivos que seran desplegados en el cuadro de dialogo.
Ejemplo: string archivo,temporal
integer fallo
fallo=GetFileSaveName ("Archivo A Imprimir", archivo, temporal, "PRN", "Print
(*.PRN),*.PRN")
Find ( expresion, inicio, fin ).- Encuentra la siguiente fila de un DataWindow en el cual se
cumple la condición especificada.
Expresión.- Una expreción cuyo valor es una expresión de tipo Boolean.
Inicio.- La fila de inicio desde donde se inicia la busqueda.
Fin.- La última fila en la cual culminara la busqueda.
Nota.- El valor que es devuelto es de tipo long, si no se ha encontrado alguna fila que
satisfaga la condición el valor que se retorna es 0.
8
“Manual de “Power Builder”
Pablo Castillo 1997
Ejemplo.- fila long
fila=Dw_1.find("Emp_nombre= 'Pablo'",1, DW_1.RowCount())
DECLARE CursorName CURSOR FOR SelectStatement
{USING TransactionObject} ;
Se lo usa para crear listas de una tabla, estas listas pueden ser recorrida registro por registro.
CursorName.- El nombre de la lista que se creara.
SelectStatement.- Selección de los campos usando un select del sql, la lista se formara con los
campos que conforman el select.
TransactionObject.- El nombre del objeto de la transacción, se lo usa cuando se usa una
transacción del tipo SQLCA
Ejemplo:
DECLARE c1 CURSOR FOR
SELECT cod_testigo, nombre
FROM Testigo;
Crea un cursor (lista) llamado c1, el cual esta formado por 2 campos cod_testigo, y
nombre de la tabla testigo.
FETCH NEXT Cursor | Procedure INTO HostVariableList
Recorre el cursor (lista), este recorrido se lo hace de forma secuencial.
Cursor.- Nombre del cursor que se recorrerá.
HostVariableList.- Las variables en las cuales se almacenaran los campos de la lista que se
esta recorriendo.
Ejemplo:
integer i,n,cod
string nom
DECLARE c1 CURSOR FOR
SELECT cod_testigo, nombre
FROM Testigo;
select count(*)
into :n
from testigo;
OPEN c1;
for i= 1 to n
FETCH NEXT c1 INTO :cod, :nom;
sle_1.text=string(cod)
sle_2.text=nom
next
CLOSE c1;
Se crea el cursor, se cuenta el numero de registros, se abre el cursor, y se recorre el
cursor (lista), luego se presenta cod, nom, y se lo presenta en pantalla, al final se
cierra el cursor.
9
“Manual de “Power Builder”
Pablo Castillo 1997
ModifiedCount ( ).- Determina el numero de filas que han sido ingresada en un datawindow,
reporta 0 si no se ha hecho ningún ingreso.
Ejemplo:
Long numero
Numero= dw_1. ModifiedCount ( )
Retorna el numero de filas que han sido modificadas
ChangeMenu ( nombre ).- Cambia el menú asociado a la ventana
Nombre.- Corresponde al nuevo nombre del menú que se quiere cambiar.
Ejemplo
Open(w_menu)
W_menu.CangeMenu(Secundario)
Cambia el menú asignado a la pantalla w_menu por otro denominado secundario.
GetColumnName( ).- Obtiene el nombre de la columna del DataWindow que esta enfocada, o
en la que se encuentra el cursor.
Ejemplo:
String nombre
Nombre=dw_maestro.GetcolumnName()
Obtiene el nombre de la columna enfocada, por ejemplo si esta enfocado el campo
código, en nombre se almacenara (Código).
SqldbCode.- En esta variable de transacciones se almacena el número del error que ha
ocurrido sobre al base datos, se lo emplea para determinar si ha ocurrido un error,
especialmente sobre un datawindow en el evento "dberror".
DbError.- Este evento esta disponible en los DataWindows, y se dispara si ocurre y se detecta
un error.
Ejemplo:
if dw_1.update()=1 then
commit;
else
rollback;
end if
Este código es el típico en un botón de grabación o de guardado de datos, si ocurre
un error al salvar o guardar datos, es decir que (dw_1.update() <> 1) el evento
inmediato posterior que se dispararía seria (DbError). El código siguiente debería ir
en e evento DbError.
messagebox("Error","Ha ocurrido un error Sobre la Base",stopsign!)
return 1
Return 1.- Impide la ejecución del mensaje enviado por el motor de la base de datos.
Blob.- Es un tipo de dato Binario Largo, es usado para grabar una ilimitado cantidad de datos,
por ejemplo ( Imágenes, documentos de palabras, sonidos, etc)
10
“Manual de “Power Builder”
Pablo Castillo 1997
UPDATEBLOB .- Actualiza los registros de una tabla que contenga un campo de tipo
binario largo o una columna de tipo Blob
Formato:
UPDATEBLOB TablaNombre
SET BlobColumna = BlobVariable;
TablaNombre.- El nombre de la tabla a la cual se quiere acuatizar el campo tipo Blob o Long
Binary.
BlobVariable.- El nombre de la variable en la cual esta almacenado el objeto tipo Blob o
Long Binary
BlobColumna.- El nombre de la columna a la cual se le asignara el valor de la variable
Ejemplo
blob objeto
objeto=ole_1.objectdata
dw_1.update()
updateblob cancion
set pista_sonora = :objeto
where cancion_codigo = :1;
Declaramos la variable objeto de tipo Blob, seguidamente asignamos el valor de un
objeto tipo "Ole" que contiene (Gráfico, Sonido, Texto, etc ) , y lo asignamos en la
variable objeto, luego asignamos el valor de esta variable a la tabla mediante la
secuencia o declaración "updateblob". Actualizamos la tabla canción, la columna
pistas_sonora, del registro cuyo codigo es 1.
Selectblob.- Selecciona un campo tipo Blob o Long Binary
Formato
selectblob Campo
into :Variable
from Tabla
where cmcn_codigo = :ls_title;
Esta estructura es similar a un select normal del PowerBuilder.
Ejemplo:
blob objeto
selectblob Pista_sonora
into :Objeto
from Cancion
where cancion_codigo = 1;
ole_1.objectdata = Objeto
Declaramos la variable Objeto, luego realizamos la secuencia SelectBlob, y
cargamos la canción de la tabla del mismo nombre en la variable Objeto, y luego la
cargamos en un objeto tipo "Ole" para su posterior reproducción.
11
“Manual de “Power Builder”
Pablo Castillo 1997
Dw_nombre.GetChild ( Nombre, variable ).- Provee una referencia a un DataWindow hijo o
a un reporte de un DataWindow de tipo Composite, por lo cual se podrá manipular las
funciones de un DataWindow normal
Dw_nombre.- El nombre del datawindow que contiene un hijo como datawindows (un
datawindow de tipo DopDropDataWindow)
Nombre.- El nombre de la columna que contiene el datawindow
Variable.- El nombre de la variable de tipo DataWindow a la cual se le asignara o grabara la
referencia del data window.
Ejemplo:
DataWindowChild dw_hijo
dw_detalle.GetChild("mat_codigo", dw_hijo)
Se Crea el DataWindowChild de nombre dw_hijo, de la columna mat_codigo, del
Datawindow dw_detalle.
dwPrimario.ShareData ( dwSecundario ).- Comparte datos entre Datawindows. Transfiere
los datos del primer DataWindow al segundo Datawindow.
Nota.- Los DataWindows deben ser de la misma naturaleza, se debe obtener datos de la
misma tabla.
DwPrimario.- Es el nombre del DataWindow Primario, de este pasaran los datos al
DataWindow Secundario, cuando se destruye este datawindow los datos desaparecen
DwSecundario.-Es el nombre del DataWindow Secundario, es el que va ha recibir los datos
del datawindow primario.
Ejemplo:
dw_lista_x_bodega.retrieve(1)
DataWindowChild dw_hijo
dw_detalle.GetChild("mat_codigo", dw_hijo)
dw_lista_x_bodega.ShareData (dw_hijo)
dw_detalle.retrieve(codigo)
Dw_lista_x_bodega es de tipo lista (tabla "Material"), el cual recibe como argumente
el codigo de una bodega, dw_hijo es el datawindow hijo de Dw_detalle (tabla
"Detalle").
Este código permite filtrar los datos del dw_lista_x_bodega hacia el campo
mat_codigo, lo que garantiza que los datos que ban ha seleccionar el usuario
correspondan a la bodega correcta y al material correcto, pues este código responde a
la necesidad de claves compuestas foráneas hacia una tercera tabla, el ejemplo
corresponde al Modelo presentado aquí.
bodega
Cabecera
Bod_codigo
Bod_nombre
Cod_factura
fecha
Total
r1
r3
material
mat_codigo
mat_descripcion
detalle
r2
det_codigo
det_cantidad
12
“Manual de “Power Builder”
Pablo Castillo 1997
Send ( handle, message#, lowword, long ).- Envía mensajes a una ventana para que los
ejecute de forma inmediata.
Ejemplo
Send(Handle(this),256,9,Long(0,0))
return 1
Este ejemplo cambia de item (siguiente campo) cuando se presiona un enter, este
código debe ser colocado en un nuevo evento el cual cuyo identificador es
(pbm_dwnprocessenter)
pbm_dwnkey.- Este identificador de evento lo podemos utilizar para determinar que
tecla fue presionada sobre un datawindow.
pbm_dwnprocessenter.- Este identificador de eventos se le puede utilizar para
determinar cuando se presionó un enter sobre un datawindow.
If (condicion,Verdadero, Falso).- Esta función se la utiliza dentro de los campos asociados
a un Datawindow, para verificar el valor del campo, y según la condición se efectúa algún
evento sobre el campo.
Condición.- Es la típica condición del una estructura if, pero en este caso se tiene que ingresar
únicamente los valores validos de los campos que estemos asociando.
Verdadero.- Este valor será retornado si la condición es verdadera.
Falso.- Es el valor que será retornado si la condición resulta falsa.
Ejemplo:
if ( salario> =2´000.000, rgb(255,0,0),rgb(0,255,0))
Este ejemplo cambia el color de la letra del campo si el salario es mayor a 2´000.000 lo
pinta de color Rojo, Si es menor lo pinta de verde, este ejemplo debe ser colocado en las
propiedades, del campo en color o backcolor, pues únicamente estos campos ban ha
aceptar este ejemplo.
if ( Sexo ="M", "Masculino","Femenino")
Si en el campo Sexo se encuentra la letra M se escribirá Masculino en dicho campo,
caso contrario se escribirá Femenino, esto puede ser util para reportes, este comando se
lo escribe o ingresa en Validation del campo asociado a un datawindow.
Match( string, textpattern ).- Se lo utiliza para determinar que tipo de caracteres son validos
dentro de una cadena de caracteres, esta funcion retorna True si se cumple con lo especificado
y false en caso contrario.
String.- La cadena que se necesita o desea validar.
Textpattern.- La cadena que contiene la validación.
^.- Este carácter se lo usa para determinar el inicio de la cadena.
$.- Se lo usa para determinar el final de la cadena
Ejemplo.match( gettext(), "^[0-9][0-9][0-9]$" )
Este ejemplo se lo usaría para validar el ingreso de una clave que contenga 3 números,
este se los debería colocar en la validación de la columna dentro de un datawindow,
para asegurarse que se muestre el error al cambiarse de campo a campo.
13
“Manual de “Power Builder”
Pablo Castillo 1997
if Match(sle_1.text, "^[A-Za-z]") = False then
messagebox("Error","No se aceptan numeros",Information!)
end if
En este ejemplo match se lo usa para validar el texto ingresado en (SingleLineEdit)
donde se requiere que se ingresen solo letras y no números
14
Descargar