lunes, febrero 19, 2001

Como hacer etiquetas de más de una línea en Genexus

A veces cuando hacemos un reporte o un work panel, tenemos algunas etiquetas que queremos que queden en más de una línea, ya sea porque es muy larga o simplemente por estética.
Si se intenta hacer una etiqueta de más de una línea presionando ENTER, en lugar de pasar a la siguiente línea es como si presionáramos el botón aceptar.
Una forma de hacer que tenga varias líneas es utilizar varias etiquetas, poniendo una línea por etiqueta y luego acomodarlas para que queden bien alineadas.
Sin embargo, hay una forma de hacerlo (por los menos en 6.1) utilizando una única etiqueta.
Si en vez de presionar ENTER, lo hacemos con la secuencia de escape ALT+10, se pasa a la siguiente línea, permitiendo escribir más de una línea en la misma etiqueta.

Marcos Crispino

Como abrir un archivo con más de una aplicación.

Muchas veces, tenemos archivos que queremos poder abrir con más de una aplicación, como por ejemplo los .prg.
Generalmente nos interesa abrirlos con VFP, pero algunas veces esta aplicación es demasiado pesada, y preferimos abrirlo con el notepad (o algún otro editor más interesante).
Hay una forma de agregar estas opciones en el menú que se abre al presionar el botón derecho del mouse sobre el archivo. Para esto, hay que abrir una ventana del explorador de windows, y en el menú Ver/Opciones de carpeta, abrir el tab correspondiente a "Tipos de archivo". Buscamos el tipo de archivo que nos interesa, y presionamos "Edicion". Con el botón "Nueva", podemos agregar una nueva opción a la cual tenemos que darle un nombre (por ej. "Abrir con notepad"), y elegir la aplicación.

Marcos Crispino

Cultura General

El espíritu de esta sección es conocer otros elementos que son tan importantes que saber lo que significa XML o las nuevas versiones de Genexus, etc, y son nuestras inquietudes personales o grupales (si se da el caso).
Esto quedará a votación de los lectores si lo encuentran de interés o no? (las respuestas serán tomadas sin represarías por supuesto así que opinen) y a todos los que deseen expresar sus pensamientos sean bienvenidos.
Hace un par de años que me interesa conocer un poco más de la historia de nuestro querido país, de esa que no aprendimos en la escuela, liceo, etc. Por ejemplo para comenzar con esto tengo algo que me resulto curioso y anecdótico, leyendo el libro Crónicas de la Costa me entere de algo de la vida de nuestro prócer Don Gervasio Artigas , alguien sabía que estuvo afectado a la vigilancia de lo que hoy es la Costa de Oro y Maldonado, luego de ser jefe de bandoleros y un reconocido contrabandista en la zona, lo cual le daba un conocimiento del terreno muy particular, la Corona Española le da un cargo en el Cuerpo de Blandengues y le da como encargo el puesto de vigilancia de Pando (por supuesto debe haber existido una negociación que desconozco pero me interesaría saber). Es entonces que me pregunto cuantas veces habrá pasado por donde hoy esta ubicada mi casa?
Otro punto de mi interés son los naufragios en toda nuestra costa, de los barcos más interesantes que se pueden resaltar que naufragaron en nuestras costas es elAgamemnón no precisamente por su contenido sino por su historia , Barco de la Corona Inglesa construido por el año 1760 donde para su construcción se utilizaron 2000 robles y 25 toneladas de clavos y herrajes (demoran más de dos años en su construcción), este barco era de los llamados Barcos de Línea de la Armada Imperial, dicho nombre surge por su formación que tomaban en la batalla, contaba con 64 cañones situados en tres pisos los de más calibre estaban en el piso inferior (por razones de estabilidad) , los calibres iban de 24 a 9, su tripulación era de 500 marinos (500!!!!!! Que lo parió), 250 para manejar los cañones (cada cañón necesitaba unas 5 personas) y el resto para maniobrar el complicado sistema de velas y mástiles. Éste se gano su nombre e historia gracias a su Capitán El Capitán Nelson , donde en la famosa batalla de Trafalgar dio dura batalla (hundiendo varios barcos de mayor tamaño) a las fuerzas Francesas comandadas por Napoleón en el afán de éste por conquistar la isla, por supuesto en esa batalla ganaron los Ingleses (curiosa singularidad de la historia ya que su hubiesen ganado los franceses seguramente hoy en día el lenguaje internacional sería el Francés), queda en la historia también como el único barco de la Corona que nunca dio popa a su contrincante (es decir nunca dio batalla por perdida y huyo de su contrincante) claramente esto es debido a la valentía de su Capitán. Así que varios años después 1806-1807 dicho barco fue afectado al patrullaje y protección del estuario del plata donde lo espera un rival para el cual no tenía armas El Pampero , en sus dos años de trabajo en esta agua sufrió varios accidentes hasta que en las cercanías de la isla Gorriti una tormenta combinada con la mala maniobra del Capitán hizo que éste chocará contra las piedras terminando así días en nuestras costas.
Cabe acotar que varios marinos (en todas las épocas) han llamado a este estuario El terror de los mares por las repentinas tormentas y fuertes vientos (pamperos) imposibles de prevenir y eludir, teniendo como ejemplos los cientos de naufragios que se registran a lo largo de toda nuestra costa, desde que se conocen los primeros viajes de Vespucio y Solís (por ahí se dice que ya en 1508 los portugueses ya estaban visitando nuestras costas en forma clandestina) hasta el último El Valiente en el 2000.
Estos comentarios son los titulares hay mucho más detalles pero para no aburrirlos es que lo dejo por acá.
Salud a todos.

Gerardo Balbuena

viernes, febrero 09, 2001

Mejorando un poquito por A.Etchart y R.Carballo

Ayer , tuve una situación algo particular. Necesitaba cambiar el precio de los productos de un pedido. Para esto, hice un wp que mostraba el número de pedido, el número de producto, la moneda, el precio actual, y obviamente una variable (inicializada en 0), para que se ingresara el precio nuevo. El problema se daba cuando al regresar del wp con el botón Cerrar, el procedimiento que tomaba el valor retornado por el wp actualizaba a 0 el precio del producto. No se podía filtrar ese valor ya que 0 es un precio posible. Mirando el help de GX surgió lo siguiente como posible solución que puede ser empleada en otros casos.
Events:
Event Start
&leave = 'S' // initialize the flag

EndEvent

Event Enter
...
&leave = 'E' // indicates that Enter event has been triggered
return // explicit return command
EndEvent

Event Exit
if &leave <> 'E' // Not exiting by return command
&leave = 'C' // ESC was pressed to Cancel
endif
EndEvent

Rules:
Parm(&leave); //Return parameter indicating exit method

Con esto se logra saber, en el objeto de llegada, de que botón vuelvo y así actualizar o no el precio del producto.
Referencias: Help de GX sobre el evento Exit (aquí se puede ver otro ejemplo con transacciones que también puede ser útil).

por A.Etchart y R.Carballo

Editorial

Y llego la tercera, que no por tal la vencida.
En este numero tenemos varias novedades, la incorporación de una nueva sección a cargo de G.Balbuena que tratara de impartir cultura, difícil tarea. También aprovecho este numero para anunciar el nuevo formato de edición de PETROGLIFO, basándose en el sistema de noticias de artech, tendremos en breve un sistema (WN) para la administración, edición y consulta de las distintas ediciones y artículos de PETROGLIFO. Por ello se imponen algunos cambios a los artículos que se presentaran para la edición, estos deberían tener un titulo de hasta 60 caracteres, un 'copete' que será lo único que ira en el mail y deberá tener un enfoque de presentación del articulo, junto ha este 'copete' ira un link al nuevo sitio de CONCEPTO donde si estará el articulo, en formato HTML para una mejor presentación. El 'copete' debe ser de hasta 256 caracteres y el HTML de la noticia de hasta de 32k. Espero que estas imposiciones no desanime a nadie a enviar aportes, se ofrece la ayuda del editor para 'formatear' los artículos a estos nuevos requerimientos.
A modo de betatester hay instalada en la DNA una versión de este sistema, para el próximo numero prometo tener liberado el sistema. http://roque:90/cgi-bin/hwnmnu01.exe
Sobre la encuesta que propuse en el numero anterior... será mejor no sacar conclusiones


Alejandro Rinaldi

jueves, enero 11, 2001

Seguridad de aplicaciones C/S

El Problema:
Típicamente en los ambientes de producción de nuestras instalaciones, todos los usuarios tienen permisos sobre todas las tablas de la base(s) de datos,
Nuestra idea original es que los usuarios tengan acceso a los datos a través de nuestras aplicaciones, pero....
cualquier usuario que conozca un poco de MSAccess podría conectarse a la BD reutilizando el propio data source de ODBC que utilizan las aplicaciones y visualizar/modificar datos. También se podría conectar mediante otras herramientas como Query Analizer o SQL*Plus para SQLServer y Oracle respectivamente en caso de tenerlas a mano .
La Solución:
Lograr mediante algún mecanismo provisto por el DBMS que los usuarios tengan los permisos deshabilitados y que la aplicación genexus en este caso se encargue de habilitarlos mediante una llamada a un Stored Procedure de la BD.
Por ejemplo en el evento Start de un WorkPanel podría hacer
Event Start
Call( SPHab , clave )
EndEvent
Que lo que hace es habilitar los permisos del usuario que está conectado a la BD.
Mientras que en la sesión no se llame a este Stored Proc. con la clave correcta, el usuario no tendrá permisos para realizar ninguna operación sobre las tablas.
Estos permisos se habilitan a nivel de sesión en la BD, por tanto una vez que el usuario se desconecte se le deshabilitaran los mismos.
En DNA está en producción una implementación de esta solución para BD Oracle.
Se está implementando (casi pronta) una versión para SQL-Server.
Casi cualquier consulta sobre el tema estamos a las órdenes,.

Alexander Wolff

WAP: ¿Un paso mas para el fin de los PC s?

En la versión Solís de GX, que se conocerá en el mercado como 7.1 hay una beta para generar los WebPanels en modo WAP, o sea, es una tecnología que ya la podemos considerar que esta aquí y para ser usada por nosotros.
Por ello y a modo de introducción a la sociedad de esta nueva tecnología, les presentare algunos términos nuevos e ideas que se empezaran a manejar.
En los últimos años se ha visto que el aumento en las ventas de aparatos móviles (celulares y palm-notes) han superado ampliamente a los tradicionales PC s, lo que haciendo algunas proyecciones, en algunos años (no muchos) será mas común que alguien acceda a Internet desde un celular que desde un PC. Por ello, estas personas exigirán servicios adaptados a sus pequeños browsers y nosotros como desarrolladores tecnológicos debemos proveérselos.
WML, la versión móvil de HTML.
Es el lenguaje análogo al HTML de las paginas web tradicionales, pero para dispositivos móviles. Como en un celular no se pueden ver imágenes ni tipos de letra distintos ni colores, se precisa un lenguaje mucho mas estricto de lo que se puede presentar en una pantalla de un microbrowser. En este tipo de clientes no se cuenta con mouse para hacer clic, y muy probablemente solo se tenga un teclado numérico. Por ello el diseño de estas paginas debe ser muy estricto, limitado y facilitando al máximo su navegación.
WAP
Wireles Aplication Protocol o en criollo, Protocolo de aplicaciones inalámbricas . Es un estándar promovido por el WAP Forum que permite a usuarios móviles conectarse a aplicaciones diseñadas para ese tipo de usuarios, cuenta con un protocolo de transporte para IP s móviles, seguridad especifica (WSL) y su lenguaje el WML. Los que integran el WAP Forum, son unos "pollos" pequeños, entre otros (mas de 500 empresas) están Ericsson, Motorola, Nokia, Sony, Panasonic, Philips, Acer, BellSouth, IBM, Intel, Oracle y Microsoft. Solo con el apoyo de estos tigres podemos asegurar el futuro del WAP.
¿Y GeneXus?
¿Como va a afectar nuestro trabajo diario para poder generar estas paginas WAP? Como les decía, en la versión GX7.1 tendrá una opción en los WebPanels que se podrá elegir si generar ese objeto en HTML o WML. La opción de HTML será la por defecto y será como hasta ahora, si se elige la opción WML, se generará la pagina para que pueda ser vista desde un browser WAP compatible.
Pero esto no será gratis, deberemos restringirnos en las utilidades que nos brinda GX, solo se podrán usar los controles Edit, Text y Tablas simples. Tampoco se podrán tener botones y solo el evento enter existirá y estará asociado al softboton del celular. Tendremos que exprimirnos la cabeza para imaginar pantallas que den las utilidades que necesitamos sin pasarse de 4 o 6 líneas de texto por unos 20 caracteres de ancho. No se permiten caracteres como la Ñ o tildes (algunos lo agradecemos).
¿Y para que lo usaríamos?
Pues es cuestión de imaginación, en la aduana, un inspector podría consultar la mercadería que debería estar en un camión que acaban de parar en el medio de la cordillera sin necesidad de tener que ir hasta un PC en la aduana mas cercana, un vista podría saber si tiene algún DUA asignado y en que deposito, sin tener que ir hasta la aduana para ello. Un vendedor podría consultar precios, saldos o créditos, o cualquier cosa que hoy en día se este llevando un listado. También se puede implementar alertas , o sea, que el sistema te avise cuando pasa algo que requiera tu intervención, cayo el valor de una acción en la bolsa, o se presento un DUA mercadería peligrosa (ej. explosivos) en la aduana de Carrasco, o llego el camión de materia prima de un productor el cual nos ha dado problemas, o se a dado de alta en contabilidad un movimiento por mas de U$S10.000, o lo que sea.
Es resumen, es una tecnología que se nos viene y que la deberemos incorporar para mantenernos en la punta.
Espero que les haya aportado algo.

Alejandro Rinaldi