martes, 11 de marzo de 2014

Creando TabPage usando Custom Visual - User Objects

PowerBuilder se caracteriza por ser la mejor herramienta de programación orientada a objetos y por tal debemos explotarla; es fácil ver muchas aplicaciones con objetos en cantidad que cumplen la mismas funcionalidades o los mismos objetivos, aplicaciones sin herencias, sin polimorfismo es decir sin programación orientada a objetos.

Un tiempo trabaje con las famosas PFC y quede maravillado, pero hay cosas que no me agradaron por su complejidad por tal empece a desarrollar librerias con objetos y funcionalidades similares, mas flexibles, mejores de entender y codificar a mi conveniencia.

Una de ellas fue el uso de TabPages, para esto he creado un TabPage ancestro del cual solo heredo. Para crearlo seguimos los siguientes pasos:


1 - Clic en New del PowerBar y escogemos Custom Visual del Tab PB Object.


2 - Luego de dar clic en OK nos mostrara el Custom Visual - User Object creado que a simple vista es muy similar a un Window Object, continuamos y grabamos con el nombre u_tabpage.


Un TabPage no puede trabajar solo este debe estar contenido en un Tab Control, entonces creamos un Tab Control ancestro. Para crearlo seguimos los siguientes pasos:

1 - Clic en New del PowerBar y escogemos Standar Visual del Tab PB Object.



2 - Escogemos Tab.


3 - Grabamos con el nombre u_tab

Listo, recordemos que u_tab es el Tab Control (Contenedor) ancestro y u_tabpage es el Tabpage (Pestaña o Page) ancestro.

Como asociamos el u_tabpage al u_tab de la siguiente manera:

Clic derecho sobre u_tab, seleccionamos Insert User Object


El trabajo de Tab Control y TabPage con User Object visuales es el mismo que el de tener una ventana y colocar un Tab Control del PowerBar. Un ejemplo de estos en tiempo de ejecución:


lunes, 10 de marzo de 2014

Enviar correos GMail desde PowerBuilder

He utilizado EmailSMTP de la web Topwiz Software para enviar correos electronicos y la experiencia ha sido muy buena, no es nada complicado.

Daré un ejemplo de como usarlo:

Primero descargar esta pequeña aplicación desde el siguiente link:

http://www.topwizprogramming.com/freecode_emailsmtp.html

Empecemos:

La aplicación esta estructurada por los siguientes objetos:



Los visual user objects u_tabpg_settings y u_tabpg_smtp hereran de u_tabpg en tiempo de ejecución podemos ver como se muestran estos objetos, se enlazan a u_tab_main y hacen un control Tab con 2 TabPage.

En la primera pestaña colocamos el correo de envio y el correo destino, el titulo o asunto del correo, el cuerpo del correo y hasta permite adjuntar cualquier tipo de archivo.


En la siguiente pestaña el tipo de Servidor SMTP es smtp.gmail.com por default, el puerto debe ser 465, el correo de envió debe ser una cuenta gmail y luego colocar su contraseña.


Una vez que se detallo la configuración, regresamos a la pestaña Send Mail y damos clic en el botón Send y listo se realiza el envió del correo.

Todo esto se puede resumir en una sola opción y es lo que hice yo, incluso enviar a muchos correos de destino y adjuntar muchos archivos.

El objeto no visual n_smtp tiene funciones que permiten el envió de correo con todas las propiedades de un correo gmail.

Las principales funciones son:

of_SetSubject = Para el Asunto del correo.
of_SetBody = Para el cuerpo del correo.
of_SetFrom = Para el nombre y correo de envió.
of_AddAddress = Para el nombre y el correo de destino.
of_SetLogin = Para el correo y contraseña de envió.
of_AddAttachment = Para adjuntar archivos.


Me ha servido de mucho esta aplicación y espero que este post los ayude, pueden enviar sus preguntas a mi correo que gustoso les responderé cualquier duda.