Ir al contenido principal

Entradas

El poder del Objeto Transaction (Mapear Funciones y/ó Procedimientos)

Hola, una de las ventajas de powerbuilder es el soporte nativo con las principales bases de datos, sin embargo muchos desconocen el poder que tiene el objeto transaction en este ejemplo veremos como aprovechar sus bondades para aplicarlas en nuestros desarrollos: DECLARE P_COPIAR_ORDEN_PEDIDO PROCEDURE FOR TSS.P_COPIAR_ORDEN_PEDIDO  (           P_ID => :idb_id,         P_COPY_CANT_R => :ii_copiar_cant_recibidas )  ; execute P_COPIAR_ORDEN_PEDIDO; If SQLCA.SQLCode = -1 Then     Error.of_Mensaje()     Rollback;     Return End If FETCH P_COPIAR_ORDEN_PEDIDO INTO :ldb_return; if SQLCA.SqlCode <> 0 then     Error.of_Mensaje()            Rollback;     CLOSE P_COPIAR_ORDEN_PEDIDO;     RETURN end if CLOSE P_COPIAR_ORDEN_PEDIDO; COMMIT; IF ldb_return .... . Esta...
Entradas recientes

Activar el trace en una Base de Datos de PB

Muchas veces necesitamos revisar lo que procesa la base de datos, pero en muchas ocasiones no podemos realizar debug en ella por diversas limitaciones. En ocasiones asi powerbuilder no presenta una herramienta muy util la cual permite capturar el trace de la base de datos para activarla solo basta  configurar en el dbms de nuestra conexión anteponer la palabra Trace: Ej DBConfig=simappe.sqlite Driver=SQLite3 ODBC Driver DBMS= TRACE ODBC Esto aplica para todas las bases que soporten esa funcionlaidad.

Retrive Datawindow Composite vs Nested

Hola, muchas veces en nuestros desarrollos creamos plantillas para automatizar y agilizar procesos por ejemplo en los reportes; tomare como ejemplo mi experiencia en el caso. Hace poco nos pidieron la generación de muchos reportes con funcionalidades de personalización en tiempo real, es decir brindarle la posibilidad de poder modificar titulos, logos, mensajes y que fuera posible en ciertos casos ocultar algunas zonas especificas (Encabezados y Pie de Páginas o mejor conocidos como Header y Footer). Inmediatamente nos dimos cuenta que debiamos usar plantillas, sin embargo surgieron dudas sobre que tipo de datawindow contenedor utilizar en la plantilla a implementar. ¿Composite ó Nested? . Anexo explicación resumida: Datawindow Composite: Este tipo de datawindow son contenedores de datawidows no tienen datos internos que se compartan, la forma de usarlos es un poco básica es decir agregas datawindows y el retrieve se realiza en el orden en el cuál fueron agregados. Ejemplo: Su...

Utilizar Google Drive para Guardar Nuestros Backups

Hola, de antemano disculpas por descuidar tanto las publicaciones pero ya estoy de vuelta y esta vez con algunos consejos de experiencias. En muchas ocasiones hemos tenido la necesidad de garantizar el almacenamiento de archivos en nuestros desarrollos o en la administración de datos y bueno existen muchas formas la mayoría pagas que te liberan de estas preocupaciones y otras gratuitas que con paciencia podrás adaptar a tus necesidades sin embargo hoy les traigo algo que se nos ocurrió implementar y sinceramente es una herramienta muy útil y en verdad ahora le da mas sentido a ese servicio que en algunas ocasiones he escuchado que es de los mas normal y les estoy hablando del famoso servicio de Google "Google Drive" aunque no creo que necesite explicación en resumen podría decirse que es una carpeta virtual en la web donde podrás almacenar cierta cantidad de información (5 GB) en su versión gratuita o ma...

Actualización de Tablas en un Datawindows

En varias ocasiones necesitamos crear datawindows que visualizen información de varias tablas de un modelo de datos ya sea por estructura, por necesidad o por simple conveniencia y de la misma forma quisieramos que esta información fuera actualizada al mismo tiempo. Pero al intentarlo nos damos cuenta que los Datawindow no cuentan con esta funcionalidad incluida por defecto. Debemos tener claro que son contextos muy diferentes los datawindows son vistas de representaciones de datos no de estructuras por ellos no es una responsabilidad obligada permitir ciertas cosas a nuestra conveniencia. Sin embargo existen muchas formas de hacer este tipo de procesos y a continuación hablare un poco de los más comunes en mi experiencia. Actualización por Vistas Separadas : Este Proceso simplemente separa los Datos en Dos Datawindows para ejecutar por separado las operaciones pertinentes.  Ventaja: Simplifica los procesos al separar la lógica. Desventaja: No es muy cómodo en la mayoría de ...