domingo, 27 de noviembre de 2011

Aplicaciones PowerBuilder 10.5 con Kodigo PowerBuilder Framework

Anteriormente ya había publicado sobre Kodigo PowerBuilder Framework en el año 2008, pero recién es en este año que llego a usarlo y a conocer mejor sus bondades, claro que aun hay mucho por conocer de este Framework. He desarrollo dos aplicaciones ya con Kodigo y los resultados fueron muy buenos, no solo por conseguir una interface agradable para el usuario, si no también porque Kodigo maneja bien la Programación Orientada a Objetos.

Actualmente he desarrollado unas fuentes con Kodigo, he implementado nuevos objetos y nuevas funcionalidades a algunos de sus objetos de Kodigo v3.3.1.5 y he migrado todo a PowerBuilder 10.5, bueno lo que empezó como un tema de investigación y de ejemplo termino siendo mis actuales fuentes de desarrollo (por ahora se quedaron en stand by mis queridas BFC ya mencionare de ellas).

Espero tras este post contactar con otras personas que utilicen Kodigo y poder intercambiar ideas y experiencias.

Creando archivos ejecutables en PowerBuilder Classic 12.0

En este post explicare la forma de crear archivos ejecutables en PowerBuilder Classic 12.0

1 - Para crear los PBD's o archivos ejecutables, tenemos que crear un objeto Project.

2 - En la pestaña General en Executable File Name, ubicamos la ruta y el nombre del archivo ejecutable

3 - En la pestaña Libraries seleccionamos las librerias (*.pbl)

4 - En la pestaña Versión colocamos las propiedades de nuestro producto, para el ejemplo dejamos los que establece PowerBuilder.

5 - Una vez ubicados en la pestaña Run estamos listos para desplegar o crear los archivos ejecutables, dar clic a la opción Deploy Project del PowerBar. No es necesario dar un inicio (Start in).

Este ejemplo también es valido para PowerBuilder 11.5.

Conexión a SQL Server 2005 desde PowerBuilder Classic 12.0

Para conectarse a una Base de Datos SQL Server 2005 desde PowerBuilder Classic 12.0 seguimos los siguientes pasos:

1 -

2.

3.

sábado, 24 de septiembre de 2011

Argumentos en DataWindows

Para crear argumentos de recuperación en un DataWindows debemos seguir los siguientes pasos:
  • Ingresar al DataWindows y darle clic a la opción Data Source del PainterBar:
  • Luego clic en Retrieval Arguments de la opción del menu Design:
  • Por ultimo creamos el argumento:

martes, 9 de agosto de 2011

Asociar Menu a un Window por PowerScript

Un Menu Object puede ser asociado a un Window Object con la siguiente sintaxis:

w_nombre_window.ChangeMenu(m_nombre_menu)

domingo, 7 de agosto de 2011

Migrando de Versión a Aplicaciones PowerBuilder

En los últimos años he participado en migraciones de Aplicaciones PowerBuilder desarrolladas en versiones 6.5, 7.0, 8.0 y 9.0 a versiones 10.5, 11.0 y 11.5.

Pero hay un detalle que se debe tener en cuenta antes de comenzar a migrar de versión, si es mejor desarrollar un nuevo software o migrar de versión las Aplicaciones PowerBuilder. Algunos clientes no solo quieren migrar de versión sus Aplicaciones PowerBuilder, también quieren migrar de Base de Datos sea a una nueva versión, a una Base de Datos de distinta tecnología Licenciada o Libre. Algunos clientes prefieren migrar de versión sus Aplicaciones PowerBuilder porque piensan que se ahorra mas tiempo, es mas barato, van a poder utilizar las nuevas bondades de ultima versión migrada, etc.

He tenido la oportunidad de migrar distintas Aplicaciones PowerBuilder encontrándolas sin estándares de programación, con exagerado SQL Embebido, sin POO, etc y en estos casos es donde aplico Refactoring (dedicare un post sobre mi experiencia en Refactoring a Aplicaciones PowerBuilder).

PowerBuilder cuenta con un asistente que nos permite ver que sintaxis es obsoleta y lo encontraremos seleccionando File - New

sábado, 6 de agosto de 2011

Programación Orientada a Objetos en PowerBuilder

El día de ayer recomendaron (En clases) un libro muy bueno que de verdad me gusto leer ya hace un buen tiempo atrás (Enero del 2009) Programación Orientada a Objetos de Luis Joyanes Aguilar, recordé entonces el primer libro que leí sobre Programación Orientada Objetos, Aprendiendo Programación Orientada A Objetos en 21 Lecciones (Octubre 2008), ambos me ayudaron mucho para entender sobre la Programación Orientada a Objetos.

Antes de leer estos libros solo tenia la idea de heredar es por eso que en el 2007 publico este post Herencia en PowerBuilder, pero faltaba Encapsulación y Polimorfismo, entonces no aplicaba POO en PowerBuilder siendo una herramienta Orientada a Objetos.

El punto de partida y que me cambio totalmente la idea sobre POO en PowerBuilder fue cuando di mantenimiento a una aplicación desarrollada con PFC, sinceramente fue muy complejo todo al comienzo, luego empece a entender y a manejar las PFC pero jamas me agrado, es así que en el 2008 publico este post PowerBuilder Foundation Class.

Trabajar con aplicaciones desarrolladas con PFC y el querer aplicar POO en PowerBuilder me lleva a buscar en la web sobre POO y es cuando me encuentro los libros ya mencionados anteriormente y también con documentación en ingles sobre POO en PowerBuilder aunque muy poca.

Bueno llego el momento de explicar lo que me faltaba aplicar o lo que se no sabia aplicar:

Encapsulación

La encapsulación es un proceso de ocultar el funcionamiento interno de un objeto.

PowerBuilder soporta la encapsulación de variables, eventos y funciones a nivel de objeto para las ventanas, menus y user object. Mediante el uso de variables instancia, eventos definidos por el usuario y funciones de nivel de objeto.
Polimorfismo

El polimorfismo permite que una operación se comporte de manera diferente, dependiendo del contexto en el que se llama a la operación.
PowerBuilder soporta Overloading y Overriding
  • Overloading: funciones con el mismo nombre en el mismo objeto.

  • Overriding: funciones descendientes suelen tener los mismos argumentos, pero el código dentro de la función es diferente.