Power Builder 9 - 2

  • Published on
    14-Jun-2015

  • View
    7.965

  • Download
    2

Embed Size (px)

Transcript

<p>Capitulo IXContinuando con el siguiente capitulo de Power Builder 9.0 que lo denominar MANUAL INSTRUCTIVO de Power Builder INTERMEDIO... donde veremos lo siguiente</p> <p>Elementos del lenguaje Power Script DECLARACION DE VARIABLES o o o o TIPO DE DATOS STANDART TIPO DE DATOS ENUMERATED TIPO DE DATOS OBJECT CLASS TIPO DE DATOS STRUCTURE</p> <p>AMBITO DE LAS VARIABLES ARREGLOS LLAMADA DE FUNCION COMENTARIOS SENTENCIAS DE ASIGNACION SENTENCIAS DE CONTROL DE PROGRAMA</p> <p>Cada lnea de cdigo comprende uno de estos elementos de lenguaje: Declaracin de variable Sentencias de asignacin Sentencias de control de programa Arreglos Llamada de funcin Comentarios</p> <p>DECLARACION DE VARIABLES.</p> <p>Al declarar una variable nosotros lo que hacemos es reservar espacio de memoria para recibir el contenido de esta variable, entonces debemos declarar que tipo debe ser esta variable para establecer el tamao de memoria que va a reservar la variable. Se almacena un valor en una variable con el fin de leer y trabajar con el valor de la variable o cambiar el valor.</p> <p>NOMBRANDO UNA VARIABLE. El nombre de una variable puede ser tan largo como 99 caracteres. Puede elegir cualquier nombre que quiera. El primer carcter deber ser una letra y los caracteres restantes debe ser letras dgitos o caracteres especiales como: ($),(#),(%),(),()</p> <p>DECLARAR UNA VARIABLE. El compilador de Power Builder requiere que cada variable sea declarada. DECLARE VARIABLES significa notificar a Power Builder acerca de los nombres de las variables que el Power Script utilizar y el tipo de datos que cada una tendr.</p> <p>Para declarar una variable., ingrese el tipo de datos seguidos por uno o ms espacios y el nombre de la variable. Ejemplo: STRING NOMBRE INTEGER COSTO</p> <p>Tambin se puede declarar variables mltiples del mismo tipo de datos en una lnea. Emplee comas entre los nombres de variables: Ejemplo:</p> <p>Nota. Para el Power Script le es indiferente el uso de mayscula y/o minsculas.</p> <p>TIPOS DE DATOS. Cada variable en la aplicacin Power Builder debe tener un tipo de dato especfico. El tipo de dato especifica, la clase de datos que una variable especifica puede contener, tal como un String, Integer, Date. Existen cuatro tipos de categoras en los tipos de datos en el lenguaje power Script:</p> <p>TIPOS DE DATOS STANDARTTIPO DE DATOS String Caracter o char Integer o Int DESCRIPCION Una cadena de texto de hasta 60,000 caracteres. Un carcter simple Un entero corto, o ms precisamente un entero con signo de 16 bits, un nmero completo sin fraccin en UnsignedInteger, UnsignedInt o Uint UnsignedInteger Long UnsignedLong o Ulong Decimal o Dec el rango 32768 a 32767. Un entero sin signo de 16 bits en el rango de 0 a 65535 Un entero largo, entero con signo de 32 bit en el rango 2,147,483,648 a 2,147,483,647 Un entero sin signo de 32 bits en un rango de 0 a 4,249,967,295 Un nmero decimal con signo de mas de 18 dgitos, con un punto decimal en cualquier parte de los 18 Real dgitos. Un nmero de 32 bits con signo y punto flotante con R=256.369 EJEMPLOS S= enrique C=K I=32000 I=-32000 U=0 U=60000 I=1000000 I=-1000000 U=200000 D=256.369</p> <p>aproximadamente 6 dgitos de exactitud y un rango Double de 1.17E-38 a 3.4E+38 Un nmero con signo y punto flotante con aproximadamente 15 dgitos de exactitud y un rango Date Time de 2.2E-308 a 1.7E+308 Una fecha, con ao, mes y da en el rango 1000-0101 a 3000-12-31 Una hora del da; hora, minuto, segundo y ms de 6 dgitos por segundo fraccional, en el rango 00:00:00 a Datetime 23:59:59.99999 Combinacin de una fecha y una hora en un nico tipo de datos. Se usa para mantener un valor de este Boolean Blob (Binary Large Object) tipo recuperado de la base de datos. Tipo de datos lgico, donde contiene dos posibles valores: true o false Utilizado para almacenar una cantidad ilimitada de datos tal como una cantidad grande de texto o un grfico. Datos sin formato, por ejemplo, una imagen o Any un bloque de texto. Un tipo de dato genrico capaz de mantener cualquiera de los tipos de valores B=false D=2005-04-16 T=13:50:00 Dbl=256.369</p> <p>Todas las variables de Power Script declaradas con un tipo de dato estndar se le asigna un valor inicial, ya sea una declaracin hecha o por Power Builder. Un valor inicial es el primer valor que una variable contiene cuando recin aparece. Las declaraciones de variables que hemos visto. No especifican un valor inicial. Por ello Power Builder le asigna un valor en base al tipo de dato. Por ejemplo: Los strings se inicializan como cadenas vacias (). Los Integers decimales y otros nmeros como 0. Los booleanos como se inicializan como false</p> <p>Si quiere reemplazar los valores iniciales, solo incluya un nuevo valor en la declaracin de variables, como en estos ejemplos: String apellido=pando Date fechanac=1977-07-26 Integer edad=28</p> <p>TIPOS DE DATOS ENUMERATED (enumerados)El tipo de dato enumerado es un tipo de dato con un conjunto limitado de valores especiales. Por ejemplo Alignment es un tipo de dato enumerado. Una variable de tipo alineamiento puede tener uno de los cuatro valores: center!, left! o right!. A continuacin tenemos ejemplos de tales variables: Alignment alinea // declara "alinea" para que sea un tipo de variable alignment Alinea=right! // asigna uno de los cuatro valores posibles de la variable. st_1.alignment=alinea //cambia la propiedad del control</p> <p>Nota: Puedes probar este ejercicio agregando un control Static Text y botn de comando,donde codificars las lneas arriba.</p> <p>Se puede hacer este ejemplo de una manera ms sencilla y directa, dejando la variable y cambiando la propiedad directamente</p> <p>St_1.alignment=left!</p> <p>CONSTANTES. Tambin se puede asignar un valor inicial a una variable que no cambiar durante la ejecucin, se deber considerar la conversin de la variable a constante. Una constante es esencialmente una variable de solo lectura, slo se le agrega la palabra constant para el inicio de la declaracin. Ejemplo: Constant dec igv=0.19</p> <p>El tipo de datos para una constante debe ser un tipo de dato estndar o un tipo de dato enumerado.</p> <p>TIPO DE DATOS OBJECT CLASS (CLASE DE OBJETOS)Una variable declarada con un tipo de dato object class puede utilizarse para referirse a un objeto.</p> <p>Cada control dentro de una ventana es una clase de objeto y as mismo un objeto es una ventana. Suponga que tiene dos controles static text: st_codigo y st_nombre, en una ventana. Ambos son objetos static text y este script convertir rojo a ambos. Ejemplo :</p> <p>St_nombres.backcolor= 255 St_apellidos.backcolor=255</p> <p>Como alternativa, puede declarar una variable static text y utilizarla como referencia para estos objetos static text. De esta manera el script cambia a ambos controles al color rojo: Statictext etiqueta // declara "etiqueta" para ser una variable Static Text etiqueta=st_nombres //asigna la variable al primer control. etiqueta.backcolor=255 // cambia el color del fondo a rojo etiqueta=st_apellidos // Asigna la variable al segundo control. //cambia el color del fondo a rojo</p> <p>etiqueta.backcolor = 255</p> <p>Cada tipo de objeto, tal como el Static Text, es un tipo de dato object class, en otras palabras se puede utilizar para declarar variables. Un uso importante de tipos de datos object class es declarar y crear instancias de objetos no visuales, especialmente para clases de objetos definidos por el usuario.</p> <p>TIPO DE DATOS STRUCTURE (ESTRUCTURA)Structure es un tipo de variable definido por el programador. Una variable simple de estructura puede mantener mltiples valores, algo parecido a un arreglo (array). Use al pintor de la Estructura para definir las estructuras globales (los grupos de variables) para el uso en su aplicacin. Usted no puede usar al pintor de la Estructura para definir una estructura local.</p> <p>Pasos para crear un TIPO DE DATO STRUCTURA</p> <p>Nombre de la estructura, recomiendo usar los prefijos (s_alumno)</p> <p>Escribe nombre de la variable y al lado izquierdo elegir el tipo de dato</p> <p>A continuacin guardar la ventana (clic en el icono del</p> <p>-para los despistados-), una vez</p> <p>ms vuelvo a recalcar utilizar los prefijos; en este caso a la estructura lo llamaremos s_alumno. Ahora bien ya esta definida la variable de tipo estructura, lo que nos falta es asignar a una variable es tipo de estructura. Lo graficar as para su mayor entendimiento.</p> <p>Lo que la imagen de arriba muestra significa que estoy declarando el tipo estructura s_alumno a la variable alumnos. Pero ah no acaba todo... ya solo falta asignar datos a este tipo de variables. Es sencillo slo no pierdan la ilacin del curso.</p> <p>y listo terminamos con el tipo de datos Structure. Continuamos con ... ambito de las variables</p> <p>Cada vez que se declara una variable, no solo especifica su nombre y tipo de datos sino tambien su AMBITO. El ambito de la variable determina dos caractersticas LEFESPAN. (Tiempo de vida). Cundo existe la variable?, Cunto tiempo vivir?, y cundo deja de existir? VISIBILITY (Visibilidad). Qu scripts pueden ver, compartir y cambiar la variable? Se determina el alcance de una variable, decidiendo donde declararlo. Cada variable debe ser declarada en alguna parte dentro de la aplicacin. Sin embargo existen cinco lugares para declarar la variable y esto determina el alcance de la variable.</p> <p>Existe cinco opciones: Global Variables, shared variables, Instance Variables, Global y local External Functions Ambito de la variable Local Instancia declaracion Script Instance Variables Visibilidad Slo el script en el que se declara Para todos los scripts dentro de una instancia simple del objeto en que es declarado y opcionalmente a la entera aplicacin. Los siguientes tipos de objetos pueden tener variables de instancia: Ventana, aplicacin, objeto de usuario y men. Para todos los scripts dentro de las instancia de los objetos en el que es declarado . Los siguientes tipos de objetos pueden tener variables de instancia: Ventana, aplicacin, objeto de usuario y men. Para todos los scripts en Tiempo de vida Hasta que el script termine Hasta que la instancia del objeto se cierre.</p> <p>Compartida</p> <p>Shared Variables</p> <p>Hasta que termine</p> <p>Global</p> <p>Global Variables</p> <p>Hasta que la aplicacin</p> <p>FUNCIONES EXTERNAS</p> <p>Global y External functions</p> <p>una aplicacin termine. Declaracin de Hasta que termine la funciones fuera del aplicacin. mbito de Power Builder como lo son las FUNCIONES API DE WINDOWS</p> <p>SENTENCIAS DE ASIGNACIONComo en todo lenguaje de programacin visual, la asignacin de valores se hace de izquierda a derecha. Variable = valor de la variable En otras palabras Asignar algn valor a algo. Frecuentemente lo que esta en la izquierda es una variable T=100 En la parte derecha podra haber un literal, una variable, una llamada de funcin, una expresin. As como por ejemplo T=3 // valor literal K1 = k2 // valor de variable Mivalor = contar(p) // llamada a una funcin Sumar = s + t // valor de expresin Un literal puede ser exactamente nmeros, cadenas, fechas, valores de tiempo, etc. Todos los tipos de datos vistos anteriormente. UNA EXPRESIN puede incluir uno de los siguientes operadores :</p> <p>Aritmticos : Suma (+) , resta ( - ), multiplicacin ( * ), divisin ( / ) , potenciacin (^) Lgico . not, and y or Relacional: igual (= ), mayor que (&gt;), menor que (=), menor que o igual a ( 3 THEN Messagebox (Titulo, usted a vencido sus 3 intentos)</p> <p>END IF</p> <p>Si usted necesita ms de una posible respuesta a una condicin se podr utilizar esta sentencia:</p> <p>integer nota nota =integer(sle_nota.text) if nota&gt;10 and nota 18 THEN messagebox (Titulo, Es mayor de edad)</p> <p>c.</p> <p>IF ... THEN ... ELSEIF..</p> <p>Otra forma ms complicada de hacer la sentencia IF.. THEN ... END IF es la construccin de : IF condicion1THEN sentencias ELSEIF condicion2 THEN sentencias ELSE sentencias END IF</p> <p>Power Builder verifica la condicin 1, si esta es falsa verifica la condicin 2 y as sucesivamente hasta que encuentre una condicin verdadera, o ejecutar de lo contrario la sentencia ELSE con su correspondiente cdigo de instrucciones. Ejemplo:</p> <p>En este ejemplo el programa pide ingresar un valor el cual mostrar un mensaje si el valor ingresado es cero, positivo o negativo, observa y analiza las condiciones.</p> <p>2. SENTENCIA CHOOSE CASE ... END CHOOSE Cuando la condiciones se trata de hacerlo hacia una misma variable, la sentencia IF... Then se complica lo cual es muy recomendable usar Choose Case. Sintaxis:</p> <p>CHOOSE CASE variable/expresin CASE Instrucciones CASE Instrucciones CASE Instrucciones CASE Instrucciones CASE ELSE Instrucciones END CHOOSE Cualquier nmero de instrucciones pueden seguir inmediatamente despus de la lnea CASE, slo uno de los casos condicionados ser verdadero y ejecutado su correspondiente cdigo, caso contrario se ejecutar la sentencia CASE ELSE. El segmento CASE ELSE es opcional pero se utiliza para poner la ltima lnea de instrucciones en el supuesto caso de que ninguno de los casos anteriores sea verdad. Ejemplo :</p> <p>Este ejemplo muestra un mensaje de acuerdo a la edad ingresada en una caja de texto (sle_edad) comparando cada uno de los posibles casos. Analiza el cdigo. Hay muchas maneras de expresar una condicin en la lnea CASE, para especificar un una lista de valores o un rango.</p> <p>CASE 0 CASE 1,2,3,4 CASE 5 to 10 Case IS &lt; 15 Case 16,17,18, 20 to 25 , is </p>