Release Notes de Generador Visual Basic 8.0 - GeneXus

Release Notes de Generador Visual Basic 8.0
UPGRADE # 5
IMPORTANTE:
• En este Upgrade, se instala una nueva versión de las siguientes dlls:
gxoffice2.dll
gxform60.dll
gxhttpclient.dll
deben ser actualizadas en las estaciones de trabajo y en los equipos cliente en el caso de utilizarla.
• Para hacer efectivos los cambios de este upgrade, luego de instalado el mismo se deben borrar los archivos .VER, .ARI
y .VBP y realizar un build all forzado de la aplicación.
Nuevas Funcionalidades
• SAC # 16992 - Optimización de Toxml()
El metodo toxml(), aún cuando cada item tiene el mismo namespace, generaba la referencia al namespace para cada uno de ellos.
Esto no sería necesario.
Por ejemplo si todos los elementos que se graban en el toxml() corresponden al mismo namespace, solo sería necesario grabar
el namespace una vez arriba.
Se implementó esta optimización.
• SAC # 17958 - Lock Timeout en Informix
Se implementó la propiedad Lock timeout en informix.
• SAC # 18551 - Soporte de tipo de datos CLOB en Oracle
En general los campos LONG de oracle (Longvarchar de GeneXus), tienen limitaciones en Oracle, por lo cual se decide reemplazarlos
por los CLOB, como sugiere el propio Oracle
(http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96524/c13datyp.htm#3234)
En la versión 9.0 de GeneXus los atributos de tipo Long VarChar se crean como CLOB en lugar de Long para Oracle (versiones
8 y posteriores del DBMS).
En versiones previas de GeneXus el comportamiento permanece siendo el mismo (por defecto se crean LONG, pero es posible
tener el comportamiento de GX 9.0 (crear CLOB) usando el config.gx.
Errores Corregidos
• SAC # 5958 - Calendario incompleto si el atributo está muy a la derecha
Se tiene un atributo de tipo fecha (date) en una TRN, si en el form de la TRN ese atributo está muy a la derecha, sobre el
borde de la pantalla, al presionar el botón derecho del mouse para seleccionar un valor, el calendario no se muestra completo,
y algunos días no se visualizan.
• SAC # 7191 - Rbuilder no toma en cuenta cantidad de copias.
Se tiene un reporte en modo texto.
Cuando se manda a imprimir el reporte directo a la impresora, no toma en cuenta la cantidad de copias que se setea en el
driver de la impresora. Sin embargo si el reporte se manda primero a pantalla y desde allí se imprime, ahí si toma en cuenta
la cantidad de copias.
• SAC # 11316 - Problemas con attachment y archivos txt, html, xml
Si se envía un mail desde un cliente de mail como Outlook express, y se recibe desde una aplicación GeneXus, si este mail
contiene archivos adjuntos txt, htm, html o xml, estos no se descargan al directorio especificado.
• SAC # 12242 - Formato de fechas en regla prompt
Si se tiene un atributo fecha en una web transaction o web panel, y se usa la regla prompt, pasándole como parámetro la fecha,
no funciona correctamente.
• SAC # 12599 - Error con Att LVC Hidden en Subfile en SQL Server
Se tiene un atributo definido como Long VarChar(9999) contra SQLServer.
Si se tiene en un Wkp un subfile, con este att como hidden y este tiene almacenado una cantidad grande de caracteres, al
desplegar el subfile da un error.
• SAC # 12839 - Join Type = Outer Join no filtra bien en algunos casos
En algunos casos al usar la propiedad Join Type = Outer Join trabajando con Informix, no se devuelven correctamente los registros
al utilizar un for each condicionado.
• SAC # 14073 - Web Components dentro de FreeStyle Grids
Si se tiene un Web Component que se carga dentro de un Free Style Grid, el Theme asociado al Web Component no quedará siendo
referenciado en la página.
• SAC # 14758 - No oculta columna de subfile en TRN web
Se tiene en un subfile de una TRN una variable. En las reglas de la misma segun una condicion se oculta la variable, sin
embargo al ejecutar la TRN, ésta no se oculta.
• SAC # 14819 - Error al dejar atributo blob vacio
Se tiene una tabla con un atributo blob. Si se inserta o se actualiza un registro y el campo queda con valor vacío, se produce
un error.
• SAC # 15203 - Error en los dias del DatePicker en jscript en español
El error esta en el script "calendar-es.js". El "Full day name" del Miercoles dice "Miircoles"; y el "Short day name" dice
"Mii".
• SAC # 15803 - No ejecuta evento Select asociado a imagen
El tener una imagen con el evento Select asociado, en ejecucion no ejecuta el evento.
• SAC # 16183 - No muestra clave despues de New, autonumber y PostgreSQL
No esta devolviendo el valor de la clave luego de hacer un New, si se trabaja con Autonumber cuando el dbms es PostgreSQL
u Oracle 8.
En PostgreSQL, tampoco funcionan las transacciones de dos niveles donde el primer nivel es Autonumber .
• SAC # 16210 - Prompt que devuelve datos en variables readonly
Cuando se retorna un valor desde un prompt a una variable readonly, se visualiza correctamente el contenido de la variable,
sin embargo, al ir al servidor el valor que se está viendo no coincidirá con el que realmente se recibirá (se recibe un valor
nulo).
• SAC # 16248 - No controla cantidad de decimales en numericos web
Al ingresar un valor numerico con decimales en una aplicación web, no se verifica que se ingrese una cantidad menor o igual
a los decimales definidos
• SAC # 16310 - Función JScriptSrc no genera bien HTML
No se genera bien el HTML correspondiente a la función de acceso al header JScriptSrc.
• SAC # 16738 - Problema al tener condicion optimizable en tabla local
Si en un modelo C/S se define una tabla como local (Access), y en las condiciones del prompt de esa TRN se agrega alguna
función optimizable, cuando se llama al prompt se da un error.
• SAC # 16876 - Regla error hace que falle formula
Se tiene una formula SUM en una trn de 2 niveles. La regla error sobre esa formula, hace que se calcule mal la formula, en
algunos casos.
• SAC # 16934 - Problemas con regeneración de VBP
En algunos casos al generar objetos nuevos en un modelo VB, o al modificar objetos existentes y volver a regenerar no se
actualizan los VBP correspondientes o pierden referencias a objetos que incluian.
Esto provoca que en estos casos al ejecutar la aplicación se de el error: "Sub or function not defined" porque no encuentra
algunos objetos.
• SAC # 17064 - "Incorrect syntax near '1'" al usar string con comillas (')
Se da el error mencionado, cuando se tiene un campo que contiene un string con comillas (') y es utilizado en un where de
un for each con when.
• SAC # 17083 - Arreglos varios a WSDL inspector
Se implementaron varias mejoras a WSDL inspector (soporte de tag "import" y XSD entre otras).
Involucra correcciones en generadores y WSDL Inspector.
• SAC # 17125 - Se realizan controles en Delete cuando no debería
Se están haciendo algunos controles al ingresar a una TRN en modo delete que no deberían realizarse.
• SAC # 17126 - Problemas con Outer Join y Refresh de grilla en Informix
Se tiene un modelo VB con informix, con la propiedad Join Type = Outer Join. En el modelo se tiene un Work Panel se tiene
una grilla en la que se muestran atributos de una tabla, esos atributos son subtipos de otra tabla.
Cuando se ingresa algún dato en el campo fijo del WP, para filtrar por ese dato, el refresh de la grilla se hace en forma
incorrecta.
• SAC # 17166 - Error Unterminated string constant en Web prompt
El browser da Error on page con error Unterminated string constant al intentar seleccionar un registro desde el prompt de
una Trn cuyo valor de clave es string y contiene alguna comilla (") o apostrofe (') embebido.
• SAC # 17211 - Se trunca resultado al usar httpclient en algunos casos
Se trunca el string resultado obtenido al usar el método Execute cuando se hace un GET cuando ese string contiene un caracter
nulo. El resultado se trunca en el primer caracter nulo recibido.
• SAC # 17218 - Variable checkbox que se carga con web prompt
No se carga correctamente el valor de un checkbox en el web form, cuando se hace a partir de lo seleccionado en un prompt.
• SAC # 17244 - No andan prompts pasando caracteres especiales
Si en la regla prompt en web se pasan caracteres especiales o cualquier caracter japoneses, estos son pasados mal. Se ven
caracteres extraños.
• SAC # 17264 - Problemas al recibir mail usando POP3
En algunos casos cuando se tiene un proceso para recibir varios mails desde una determinada casilla, en alguno de esos mails
se puede dar un error (generalmente un GPF).
• SAC # 17321 - PageCount y RecordCount devuelven -1
No funciona el PageCount y RecordCount sobre un grid cuando se tienen dos claves foráneas sobre la misma tabla.
• SAC # 17464 - GXedit y datetimes en grillas entre las horas 0 y 1
Se tiene un datetime en una grilla, trabajando con GXEdit. Dicho datetime contine una fecha hora entre las 0 y las 1, en
formato 24 hs.
Esta pasando que si se hace click en esa grilla la hora aumenta en uno.
• SAC # 17537 - Imagen de Prompt se duplica en grid Web
En una transacción con form Html, se tiene clave foranea en el segundo nivel. Se quiere cambiar la imagen del boton de prompt
y se programa la rule prompt on control &bitmap y se agrega &bitmap al grid . En ejecución se muestram dos columnas con la
imagen
• SAC # 17550 - Alter Session en Gxconnec para Oracle
El programa standard que realiza la conexión tiene un error cuando realiza el Alter session para formatear la fecha, está
faltando la comilla simple (') que cierra el string YYYY-MM-DD HH24:MI:SS.
• SAC # 17667 - Caracteres extraños no se devuelven bien en prompt
Se tiene una transacción cuya clave es character. Se ingresan caracteres chinos o japoneses como clave y se graba el registro
correctamente. Pero cuando se selecciona ese registro en el autoprompt, al volver esos caracteres de la clave no son decodificados.
El prompt para unos caracteres japoneses devuelve 0e20ce y en la trn se visualiza eso en vez del caracter japones asociado.
• SAC # 17759 - Problema en check de web trn y enabled
En la grilla de una web trn de 2 niveles, se tiene condicionado que alguna columna se acepte o no. Cuando se hace check,
toda la columna queda habilitada.
• SAC # 17792 - Formulas aggregate/select no se generan correctamente
Se detectó que las formulas aggregate select, cuando había filtros condicionales (con WHEN) en el tab conditions del webpanel,
no se generaban correctamente.
• SAC # 17804 - Problema cuando se filtra por nullvalue en Oracle
En Oracle, cuando la sentencia select se genera en forma estática (se usa un when - restricción condicional), y es necesario
filtrar por un campo char nulo de GeneXus, el filtro se hace por '' (vacío), en vez de hacerse por ' ' (blanco)
• SAC # 17857 - Problema DateTime con Date Format = None en TRN
Se tiene un datetime con DateFormat None en las líneas de una webtrn. Sucede que si se ingresa una
hora no válida y se hace check, luego se insertan datos incorrectos en la base de datos.
• SAC # 17858 - Problemas con like en condiciones dinamicas contra Iseries
En un Work Panel condicionado con like, when y generado contra el db2 para iSeries, no se está generando en forma óptima.
Oucrre con el Iseries V5R3
• SAC # 17899 - Error en la generación de sentencia SQL
Se tiene un Work Panel en el que cual se hace un For Each con condiciones Where y When. Si el filtro es un Character y la
variable por la que se filtra tiene una comilla simple, al ejecutar da error de sintaxis SQL.
• SAC # 17928 - Error en ejecución con gxoffice2.dll y MS Office 2003
En una máquina con MS Office 2003 instalado, da error en gxoffice2.dll cuando se usan los tipos de datos Excel.
• SAC # 17947 - Aplicación se cuelga por parametro mal definido
Se tiene una aplicación Win VB con un Work Panel, donde se desea cargar todos los registros de una tabla en una grilla.
Cuando se intenta hacer esto, la aplicación se cuelga.
• SAC # 17952 - Error 13: Type Mismatch en aplicación C/S con FK nula
Se tiene un modelo VB C/S (Informix, SQL Server), con una TRN con una foreign key y se configuró la propiedad "Generate null
for nullvalue = Yes".
En la TRN se tiene una clave foránea y se agregó en las reglas:
allownulls(FkeyCod);
FkeyCod = nullvalue(FkeyCod) if null(FkeyCod) on aftervalidate;
Cuando se ejecuta la TRN y se pasa con Tab por la clave foranea dejando en blanco el campo, se da el error mencionado.
• SAC # 18050 - No imprime reporte texto con regla printer
Se tiene un reporte modo texto en el que se programa la regla printer. Este reporte no se imprime.
Si no se programa la regla printer funciona.
En geneXus 9.0 salió mal la rbuilder.dll para .net win provocando mismo problema.
• SAC # 18195 - Prompt en grilla no se deshabilita cuando debería.
Se tiene una web trn de dos niveles:
1. Si se entra en modo update y la clave del segundo nivel tiene prompt, este NO se debe habilitar (ya que el campo clave
tampoco se habilita - SAC# 17758)
2. En caso general, poner .enabled= 0 de un atributo del segundo nivel, deshabilita el campo pero no el prompt.
• SAC # 18231 - Error al acceder a tablas de gxpublic desde data view VB
Se tiene un modelo VB Access, en el que se definió un data view ADO para acceder a tablas de gxpublic.
El problema es que al ejecutar un Work Panel que muestra datos de la tabla Attribute de gxpublic, se da el error:
"Command text was not set for the command object."
• SAC # 18538 - Propiedad Autonumber y Datastores
La propiedad autonumber se está tomando en cuenta solamente utilizando el Datastore default.
• SAC # 18822 - No se genera bien sentencia con restricción condicional
Si se tiene una condition compuesta por varias condiciones y 2 o más de éstas son restricciones condicionales (usan WHEN),
sucede que no se arma correctamente la sentencia SQL.
• SAC # 18901 - Problema de lockeo en Oracle y VB
Cuando se usa un procedimiento numerador con commit on exit en NO, no se está respetando que esa tabla está lockeada.
• SAC # 19121 - Aplicación web en FireFox muestra lineas sobre Tabs
Si se ejecuta una aplicación web en FireFox, y la aplicación contiene Tabs, sobre los Tabs se ven unas líneas verticales
negras.
• SAC # 19214 - Err 221 Error allocating database memory - term too big
Se da el error mencionado al querer agregar un atributo a una tabla y querer ejecutar la reorganización de esa tabla.
• SAC # 19608 - Refcall no trae valor seleccionado
Se tiene una transacción de dos niveles en la que se llama a un refcall, al retornar el valor este queda en cero.
• SAC # 19905 - Error en gx_data.mdb al ejecutar reorg. en modelo C/S
En algunos casos puede suceder que al querer ejecutar una reorganización de un modelo C/S (VB contra SQL Server por ejemplo),
se den problemas porque se intenta acceder a una gx_data.mdb.
• SAC # 19906 - Error de tipos al hacer una reorganizacion
Al ejecutar una reorganización en la que se debe generar una tabla temporal para copiar los datos y luego se vuelven a copiar
los datos a la tabla real, en algunos casos se puede dar el error:
"Error 13: Type mismatch"
• SAC # 20417 - Problema con TRN de dos niveles, no funcionan los botones
Si se tiene una TRN de dos niveles y una regla error sobre el último atributo del cabezal, si se dispara la regla luego no
funciona ningún botón de la TRN (Close, botones con eventos standard, etc.).
La única forma que vuelvan a funcionar es ingresar un valor en el atributo que haga que no se dispare la regla error.
Este problema también se detectó al tener una TRN de dos niveles, llamarla en modo DSP y posicionarse en la grilla, luego
de eso los botones de la TRN dejan sin funcionar.
• SAC # 20536 - "The handle is invalid" luego de ejecutar Reporte
Se tiene una aplicación que utiliza el Report Viewer y se ejecuta desde el ejecutable (no en forma interpretada).
Luego de ejecutar un reporte se puede dar el error "The handle is invalid".
UPGRADE # 4
IMPORTANTE:
• En este Upgrade, se instala una nueva versión de las siguientes dlls:
gxoffice2.dll
gxform60.dll
deben ser actualizadas en las estaciones de trabajo y en los equipos cliente en el caso de utilizarla.
• Para hacer efectivos los cambios de este upgrade, luego de instalado el mismo el upgrade se deben borrar los archivos
.VER, .ARI y .VBP y realizar un build all forzado de la aplicación.
Nuevas Funcionalidades
• SAC # 16794 - Se implementó el NLS para DB2 UDB
Se implementó el 'National Language Support' para el DB2 Universal Database. Este soporte permite trabajar con caracteres
'double byte' (chino y japones) en el db2 udb.
Consiste en usar los tipos de datos GRAPHIC VARGRAPHIC y DBCLOB para los tipos char, varchar y long varchar respectivamente.
• SAC # 17031 - No se incluye en SW GXDFFuncs.dll
Si se genera un Setup de una aplicación que utiliza las funciones de texto implementadas en el U3 de VB 8.0, no se está incluyendo
la GXDFFuncs.dll que es donde se implementan estas funciones. Esto implica que en la máquina del cliente no es posible utilizarlas
sin llevar manualmente esta dll.
NOTA: Para solucionar este SAC, además de necesitar este Upgrade del generador VB 8.0, es necesario utilizar el Setup Wizard
8.0 con el Upgrade # 1 instalado para que esta dll se incluya correctamente en el Setup.
Errores Corregidos
• SAC # 10648 - Problema con la función Round en algunos casos
En algunos casos la fución Round no funciona bien.
• SAC # 12115 - Problemas al enviar mail por medio de servidor con Qmail
Si se envia un mail utilizando como servidor de mail un Linux con QMail, el mail no se envía.
• SAC # 12887 - Problema con data views con campos FLOAT en SQL Server
Si se tenía un campo float en sql server y se lo accedía via data view, los valores de dicho campo se leían en forma incorrecta.
Si se define un data view con un campo de tipo float y este tiene como datos valores con formato cientifico, el valor desplegado
no es correcto.
• SAC # 12978 - Dbconnection y Access
Si se define una variable tipo DBConnection en un modelo Access a la hora de ejecutar da: “User defined type not defined”
en la línea:
Dim AV5Dbconn As GXDBConnection
El arreglo consiste en no dar el mensaje de error al compilar, se van a aceptar las propiedades y métodos del DBConnection
en Access como dummy (para que compile la aplicación), pero no van a hacer nada, es decir, no está implementado DBConnection
en Access, solo se deja compilar la aplicación, pero no va a hacer nada.
• SAC # 14202 - Error con cond.en atributo DateTime, y filtros condicionales
Funcionan mal en Visual Basic los where sobre atributos datetime, si se tienen filtros condicionales. Por ejemplo, el siguiente
código GX falla:
&TstBDDTime = ymdhmstoT(2003,10,15,20,30,15)
For each
where TstBDDTime =&TstBDDTime when not null(&TstBDDTime)
……
endfor
• SAC # 14893 - No crea autonumber en Oracle si se usa schema
Se tiene un modelo en Oracle con una trn en la cual se setea un atributo como autonumber.
En el modelo se tiene seteado un schema.
• SAC # 14928 - Collapsed = TRUE en grillas anidados
No funciona indicarle a una grilla que está dentro de otra que esté colapsada al cargar la página.
• SAC # 15229 - No graba bien algunos caracteres chinos
Algunos caracteres chinos no se graban bien, quedan luego como ???? en la base de datos.
Si se los graba por el enterprise manager de sql server, luego se recuperan bien en la aplicación.
• SAC # 15543 - Problemas con numericos con signo y reportes con GX Edit
Está quedando mal el signo negativo de los campos numéricos con signo cuando se visualizan en reportes usando GX Edit.
• SAC # 15593 - Se pierde el autonumber en reorganizacion
En PostgreSQL y Oracle, luego de una reroganización sobre la tabla con la propiedad autonumber, ésta se pierde.
• SAC # 16050 - Error al filtrar por valor de WebSession / SDT en For Each
Se tiene un procedimiento web con un For Each que filtra por un elemento de una variable WebSession o un SDT (Structured
Data Type). Al ejecutarlo da error diciendo que no todas las variables de la sentencia SQL fueron asignadas.
• SAC # 16143 - Problema con load on request
No siempre se cargan todos los registros a pesar que se pagine. Se tiene un WKP con una grilla, con la preferencia load on
request. Desde otro WKP se lo llama, se página, hasta cargar los 2000 registros que tiene. Se cierra el objeto y se entra
nuevamente, al paginar solo se cargan 1228 registros.
• SAC # 16430 - Error al consumir servicio de google
Se consume el servicio de google http://api.google.com/GoogleSearch.wsdl, al ejecutarlo da el error "Name of parameter 2
different than expected.(2)"
• SAC # 16444 - PageCount no funciona si hay Join en el grid
Si se tiene un grid que implica un Join no funciona en forma adecuada el PageCount.
• SAC # 16495 - Se generan TAGS HTML de más
En algunas circunstancias, cuando se combinan grids dentro de tablas en cierto orden en la pantalla, podian aparecer mal
dibujados porque el HTML generado no está correcto.
• SAC # 16578 - Error al filtrar por campo de sdt en for each
No funcionan correctamente filtros con sdt en for eachs
• SAC # 16588 - Problemas con Tablas locales y Join
Se tienen dos tablas locales en un modelo Cliente/Servidor, con un workpanel que muestra información de ambas. El problema
es que no está evaluando bien las condiciones sobre esa grilla.
• SAC # 16690 - Problemas con archivos MDB temporales
Se registró un caso en que incorrectamente se borra una tabla de un MDB temporal correspondiente a una grilla de un wkp.
• SAC # 16692 - Call a procedimiento soap no funciona
Se tiene un procedimiento con call protocol Soap que recibe un parametro SDT y se invoca desde un objeto genexus con CALL(),
especificando el tipo de datos location. En ejecución no funciona
• SAC # 16726 - No muestra prompt en Trn con form HTML
Se tiene una trn con una clave foranea, en ejecucion no aparece el boton de prompt
• SAC # 16744 - No funciona ToXML con campo date nulo
Si un SDT que tiene una fecha con valor nulo se pasa a XML (TOXML), el elemento correspondiente al campo DATA (FECHA) no
se graba en el archivo XML.
• SAC # 16796 - No funcionan reportes PDF con PDFLib 4.0.3
Si se tiene instalada la versión 4.0.3 de la PDFLib, y se genera un reporte PDF, al ejecutar el reporte se da el error:
"Runtime error 429: ActiveX component can't create object."
• SAC # 16984 - No compila reorganización en Oracle (Not found GXCLOSEALL)
En algunos casos al hacer reorgs que impliquen Varchar, la misma no compila no encontrando definición para la función GXCLOSEALL
en el reorgrnm.bas
• SAC # 17088 - Error al ejecutar reporte desde aplicacion VB SQL Server
Se tiene un Work Panel desde el cual se realizan varios cálculos, y al finalizar los cálculos se invoca a un reporte para
mostrar los resultados de las operaciones.
Cuando se ejecuta el reporte se da un error en la aplicación, que hace que la aplicación se cierre.
UPGRADE # 3
IMPORTANTE:
• Este Upgrade requiere el Upgrade #5 del Development Enviroment. Mientras no esté disponible, es necesario instalar el Upgrade
#4 del Development Environment y copiar los archivos que se encuentran en archivos.zip al directorio raiz de la instalación
de GeneXus.
• En este Upgrade, se instala una nueva versión de la gxoffice2.dll la cual debe ser actualizada en los equipos cliente
en el caso de usar tipos de datos de manejo de Office.
• Para hacer efectivos los cambios de este upgrade, luego de instalado el mismo el upgrade se deben borrar los archivos
.VER, .ARI y .VBP y realizar un build all forzado de la aplicación.
Nuevas Funcionalidades
• SAC # 15797 - Funciones de texto en el generador VB
Se implementaron funciones para manipular archivos de texto desde GeneXus. La documentación de estas funciones se puede obtener
en la URL: http://www.artech.com.uy/gxdlsp/pub/Genexus_8.0_Help_System/Functions/ascii_functions.htm
• SAC # 15910 - Cambio en generación de WebWrapper
Cuando el Web panel enviado por mail, usando el tipo de datos WebWrapper no es un formulario (no tiene eventos/botones),
no se genera un tag FORM en el HTML de ese Web panel, ni se incluyen los javascripts que serían necesarios solo en el caso
de estar enviando un formulario por mail.
• SAC # 15991 - Javascripts y CSS del DatePicker
Ahora no se incluyen los javascripts y CSS del DatePicker en el HTML generado, a menos que sea necesario.
• SAC # 16065 - Nuevo Valor de la propiedad Format: RawHTML
Se agregó un nuevo valor a la propiedad Format, con el objetivo de optimizar el código HTML generado en el caso de usar textblocks
o variables con caption HTML puro.
• SAC # 16092 - Cambio en generación de javascripts
Por razones de performance, a partir de ahora se incluyen los javascripts Valid_integer, Valid_decimal y GX_js_close en un
único .js al cual se hace referencia desde el HTML.
Errores Corregidos
• SAC # 12277 - Connection is busy with results from another hstmt
Este error se da en dos casos diferentes:
Caso 1
Al intentar borrar un registro que es clave foránea en otra tabla, en SQL Server, se da el error mencionado.
Luego el mensaje: "Eliminación inválida, hay información en "nombre tabla""
Y al dar aceptar la aplicación da GPF. Sólo pasa compilado no interpretado.
Caso2
Puede suceder que se intente usar mas de un client cursor a la vez sobre la misma conexión y debido a la limitación de un
cursor abierto por conexión, se puede dar el error:
"S1000: [Microsoft][ODBC SQL Server Driver] Connection is busy with results for another hstmt"
• SAC # 13280 - No se muestra imagen en reporte PDF si tiene camino relativo
Si se genera reporte PDF desde un Web Panel compilado, y si el reporte tiene imágenes que se acceden a través de caminos
relativos, cuando se salva el reporte PDF, no se incluyen las imágenes.
• SAC # 13831 - Noaccept condicional en subfile de TRN funciona mal GX Edit
Si en una TRN de dos niveles se tiene una regla noaccept condicionada para uno de los atributos del segundo nivel, si se
ingresa en modo insert la regla funciona bien, pero si se ingresa en modo update se permite modificar el valor del atributo
cuando no debería.
• SAC # 14202 - Error con cond.en atributo DateTime, y filtros condicionales
Funcionan mal en Visual Basic los where sobre atributos datetime, si se tienen filtros condicionales. Por ejemplo, el siguiente
código GX falla:
&TstBDDTime = ymdhmstoT(2003,10,15,20,30,15)
For each
where TstBDDTime =&TstBDDTime when not null(&TstBDDTime)
……
endfor
• SAC # 14384 - No es posible copiar datos en celda de grilla si es numerico
Si en una TRN de dos niveles se tiene en la grilla un campo numérico, si se quiere copiar un valor por ejemplo desde un archivo
externo a ese campo, no es posible hacerlo.
• SAC # 14700 - Problemas con reportes PDF y caracteres en chino o japones
Los reportes PDF con textos en chino o japonés no salen bien o fallan al ejecutar.
• SAC # 14868 - Error al generar un reporte PDF con imagen
Cuando se quiere generar un reporte PDF a partir de un reporte que tiene una imagen, se da el error:
"Run time error '-2147218792 (80040a98)':
[2200] PDF_end_page: Unmatched save level"
• SAC # 15092 - DatePicker Flat graba mal la hora con formato 12hs
Si se usa DatePicker Flat ("Display Flat = True”), cuando se graba fecha y hora, y se usa formato 12 hs ("Time Format = 12
hour”), se graba en la base de datos la hora con ese formato.
• SAC # 15393 - Problemas con tamaño del Calendario Win en KB en Chino
No se visualiza correctamente el calendario en los forms Win, en Visual Basic, cuando el lenguaje de la KB es Chino (Traditional
Chinese o Simplified Chinese). La ventana que se despliega es muy chica, y se pierden algunas columnas de la derecha.
• SAC # 15453 - Textos en menu bar no quedan bien en Chino
Al trabajar en una KB en Chino, en los textos de las menu bar aparecen caracteres incorrectos.
• SAC # 15465 - 'ByRef argument type mismtach' en TRN con formula SUM
Se da el error 'ByRef argument type mismtach' al ejecutar una TRN que tiene un atributo definido como formula SUM.
• SAC # 15779 - Connection busy with results for another statement
"Connection busy with results for another statement" en C/SQL.
"Connection busy with results from another hstmt " en VB.
• SAC # 15807 - PageCount en grid con filtros condicionales queda mal
No genera bien sentencia COUNT en un webpanel con grid con paginado y filtros condicionales.
• SAC # 15864 - Código generado excede límite permitido
Se tiene un web panel bastante complejo, usado como web component y contiene controles varios. Al ejecutar falla con un
error.
• SAC # 15940 - Problema con onlineactivate, refresh y subfile
Se tienen dos grillas en un Work Panel, y se tiene programada la carga condicional de la segunda, o sea que se carge la segunda
a partir de lo seleccionado en la primera. El problema es que la segunda grilla se carga siempre, menos cuando se vuelve
al primer registro.
• SAC # 16031 - No se genera correctamente gx400dcl si hay Namespace
Si se configura la propiedad Namespace for RPC declarations, cuando se genera el gx400dcl no se está agregando lo que se
configuró en el Namespace cuando se hace un DROP de los RPCs.
• SAC # 16050 - Error al filtrar por valor de WebSession / SDT en For Each
Se tiene un procedimiento web con un For Each que filtra por un elemento de una variable WebSession o un SDT (Structured
Data Type). Al ejecutarlo da error diciendo que no todas las variables de la sentencia SQL fueron asignadas.
• SAC # 16051 - GXData81.dll no se está incluyendo en Setups
A partir del U2 de VB 8.0 se cambió la dll de C/S para GXData81.dll .
El problema es que el archivo GXSWF.INI que se encuentra en el directorio del modelo, no está grabando la información correspondiente
a esa dll y por eso cuando se arma un Setup no se incluye esta dll, sino la gxdata80.dll.
• SAC # 16137 - "Cursor XXX not open" al actualizar en DB2 iSeries
Se da el error "Cursor XXX not open" o "Cursor XXX no abierto" en una aplicación C/S con DB2 UDB iSeries, al realizar un
update sobre una tabla.
• SAC # 16221 - Checkboxes readonly en Web
Si se tiene un checkbox en un Web Panel, o en una Web TRN, y el checkbox es readonly, de todas formas se ve editable (se
puede modificar).
• SAC # 16247 - Problema con espacios en blanco, y prop. Format = Text
No se estan escapeando los espacios en blanco cuando la propiedad Format tiene el valor Text, en las aplicaciones Web.
• SAC # 16271 - Variables con Format RAWHTML y eventos
No funcionan los eventos asociados a variables readonly con Format RAWHTML.
• SAC # 16387 - No compila objeto que recibe vector como parámetro
No compila objeto que recibe vector como parametro, y hace referencia a algun elemento.
• SAC # 16476 - Metodo ToXML de SDT da error al compilar en VB
Se tiene un campo definido como SDT, y se utiliza el método ToXML para generar un archivo XML a partir de él.
El problema es que al compilar se da el error: "Wrong number of arguments ..."
UPGRADE #2
IMPORTANTE:
• En este Upgrade, se instala una nueva versión de las siguientes dlls:
gxoffice2.dll
gxform60.dll
deben ser actualizadas en los equipos cliente en el caso de utilizarlas.
• Para hacer efectivos los cambios de este upgrade, luego de instalado el mismo el upgrade se deben borrar los archivos
.VER, .ARI y .VBP y realizar un build all forzado de la aplicación.
Nuevas Funcionalidades
• SAC # 11789 - Error de Overflow al acceder a tabla con Long VarChar
Se tiene una TRN con un atributo definido como Long VarChar de 32Kb (L(32kb)). El modelo está definido como VB C/S. El problema
es que al ejecutar la TRN que tiene el atributo Long VarChar se da el error: 'Runtime Error 6: Overflow'
Solución: Se cambió la dll de C/S para soportar campos Long VarChar de más de 32Kb, se implementó esta funcionalidad en
la gxdata81.dll. A partir de ahora dll de C/S no tiene límite para el tamaño de los Long VarChar. A nivel del generador,
si se utiliza el control VB Edit se soportan campos Long VarChar de hasta 64Kb., ya que es el máximo que soporta el control
Edit de VB. Si se utiliza el control GX Edit tampoco hay límites de tamaño.
Si se muestra el campo Long VarChar como columna de una grilla también está limitado a 32Kb.
• SAC # 15483 - Se agregó la propiedad CancelOnError al tipo Location
Se agrego la propiedad CancelOnError al tipo Location. Esta propiedad indica como se van a procesar los errores al hacer
un call SOAP a un objeto GeneXus o al invocar a un Web Service importado con el WSDL inspector.
Los valores posibles son:
0 – Default
1 – Cancela el programa llamador cuando hay un error
2 – Se atrapa el error, no cancela el programa llamador y la informacion del error se obtiene con las funciones GetSoapErr()
y GetSoapErrMsg()
• SAC # 15536 - No se reciben archivos adjuntos al recibir mail con POP3
No se reciben archivos adjuntos al recibir mail con POP3. Cuando se configura la propiedad AttachDir para indicar donde se
salvarán los archivos adjuntos a un correo, y se ejecuta el evento que recibe el mail, no se están salvando los mails en
ese directorio.
Solución: Se implementa el decoding attachments uuencoded para que esto funcione.
• SAC # 15780 - Se cambió el nombre de la dll de C/S a gxdata81.dll
Se cambió el nombre de la dll de C/S para la versión 8.0. Ahora pasó a llamarse GXDATA81.DLL (antes se llamaba GXDATA80.DLL).
Errores Corregidos
• SAC # 12693 - ServerXXX funciona mal cuando se tienen varios Data Stores
Se tiene un modelo C/S en el que se utilizan varios Data Stores, si se utilizan las funciones ServerXXX en un ese modelo,
los datos que se deben mostrar son los que se corresponden con el Data Store por default, pero se están mostrando los datos
del último data store definido.
• SAC # 14201 - Error con pasaje de parameto SDT en VB
Si pasas mas de dos parametros como item de un SDT los valores se sobreescriben.
• SAC # 14208 - Problema con like y filtros condicionales
No se estan haciendo bien los filtros con like cuando se trabaja con DB2 iseries o PostgreSQL.
• SAC # 14682 - Da "Tabla was changed" al trabajar con 2 digitos en el año
En un WP con tabla base se tiene una grilla y se agrega una regla Order por un atributo secundario (se crea un indice temporal).
Además se tiene una condición que involucra el mismo atributo usado en la regla Order. Cuando se ejecuta el WP no se realiza
la carga de la grilla al entrar al objeto.
• SAC # 14866 - Long VarChar con @! solo muestra 255 caracteres en TRN
Si en una TRN se tiene un atributo definido como Long VarChar con la picture @!, cuando se ingresa el valor para el campo
permite escribir todos los caracteres que se deseen, pero luego al entrar a la TRN en modo UPD solo muestra 255 para ese
campo.
• SAC # 15279 - Problemas con las funciones GxMLines y GxGetMLi
Si se utilizan las funciones GxMLines y GxGetMLi para desplegar un texto en un reporte con determinado formato, y el texto
contiene los caracteres chr(13) + chr(10), no queda bien.
• SAC # 15299 - Grilla se carga solo al hacer click sobre la misma
Se tiene un work panel con tres tabs control, en el primero con 2 grillas y una en cada uno de los tabs siguientes.
Además cada Tab tiene un combo.
El problema es que el primer subfile del primer tab se carga solo al hacer click en el mismo.
• SAC # 15314 - "Runtime Error 3075" al usar indice temporal y condiciones
Se da el error: "Runtime Error 3075: Syntax Error (missing operator) in query expression '()'" al usar indice temporal y
tener las siguientes condiciones en un Work Panel:
lower(Atributo) like lower(&Var);
• SAC # 15418 - No se hace "Load at startup" en grilla con indice temporal
Si en un WP con tabla base se tiene una grilla y se agrega una regla Order por un atributo secundario (se crea un indice
temporal).
Además se tiene una condición que involucra el mismo atributo usado en la regla Order.
Cuando se ejecuta el WP no se realiza la carga de la grilla al entrar al objeto.
Se tiene la propiedad "Load at startup = Yes".
• SAC # 15457 - Error en texto de menu en Simplified Chinese
En un modelo con Simplified Chinese el item correspondiente a la menu bar Help/Contents esta mal... tienen un "^" antes del
texto chino.
• SAC # 15485 - Campos numericos quedan en blanco en lugar de 0 con GX Edit
Se tiene un objeto en el que se tiene un campo numerico.
Cuando se ejecuta el objeto, si no se ingresó ningún valor para el campo, en lugar de aparece como 0, aparece en blanco.
• SAC # 15496 - Se graban mal caracteres chinos en SQL Server
Si se tiene una KB en Chino al insertar datos desde una TRN, los caracteres quedan mal grabados.
Las tablas fueron creadas configurando la propiedad "Enable national language support = Yes".
Cuando se ingresa a una TRN para ingresar un registro y se presiona Confirm, los datos que quedan grabados en la base de
datos, son incorrectos, se ven caracteres raros.
• SAC # 15531 - No compila objeto que llama a dos web services
Falla al compilar un objeto que llama a dos web services.
• SAC # 15543 - Problemas con numericos con signo y reportes con GX Edit
Está quedando mal el signo negativo de los campos numéricos con signo cuando se visualizan en reportes usando GX Edit.
• SAC # 15554 - Problema con Web Component que recibe un parámetro date
Los web components no reciben bien el valor de los parámetros de tipo date.
• SAC # 15758 - "An unexpected error has occurred while updating your data"
El momento de disparo after(confirm) o también "On AfterValidate" en las reglas hace que aparezca el mensaje mencionado.
UPGRADE #1
IMPORTANTE:
• Este Upgrade requiere el Upgrade #1 o superior del Development Environment.
Nuevas Funcionalidades
• SAC # 13072 - Numeros como shortcut en Items de Menu Bar
En los items de menu bar, se pueden definir numeros como shortcut (ej.: "Alt + 3"), además de las letras y teclas de función.
Notas:
- No funcionan con el teclado numerico de la derecha
- Se requiere el Upgrade 5 o superior del Development Environment para utilizar esta funcionalidad.
• SAC # 14525 - Nueva Propiedad: Web Server Aplication Namespace
Se implementó la propiedad a nivel de modelo: Web Server Aplication Namespace.
Este propiedad se encuentra dentro del grupo Web Information.
El propósito de esta propiedad es prefijar las conexiones a la base de datos y los cursores con el valor que se indique
en la propiedad.
• SAC # 14530 - Nuevas descripciones de error al recibir mails
Se agregaron nuevas descripciones de error en la gxoffice2.dll, para controlar el recibo de mails con MAPISession. Estas
descripciones se agregaron al código de error 22 que tenía como descripcion: "Error receiving message".
Estas nuevas descripciones aportan más información sobre el problema al recibir un mail y darse el código de error 22.
Son válidas únicamente cuando se utiliza MAPISession para recibir mails.
• SAC # 14705 - SQL Server y "Client cursors" más inteligentes.
Se introdujo una mejora que hace que se identifiquen de forma más inteligente los client cursors para SQL Server 7.0 o 2000.
En SQL Server existen dos clases de cursores, los “Server cursors” y los “Client cursors”. Lo segundos son más eficientes
pero tienen la desventaja que sólo puede haber uno abierto por conexión.
• SAC # 14935 - Nuevo control Calendar para objetos web
Los atributos y variables de tipo Date y/o DateTime que se muestren en aplicaciones Web podrán tener opcionalmente un calendario
asociado. Esto facilita y mejora enormemente tanto la visualización como la selección de una fecha y hora. Es por lo tanto
una funcionalidad que incide directamente en la usabilidad y amigabilidad de la interfaz generada.
Errores Corregidos
• SAC # 5201 - Los parámetros son solo de ida en llamada a stored procedure
Cuando se ejecuta un Stored Procedure en algún ambiente C/S que recibe y devuelve parámetros, al finalizar la ejecución el
parámetro devuelto no vuelve con el valor indicado en el Stored Procedure, sigue manteniendo el valor antiguo.
• SAC # 6528 - Problema con Enter en subfile de transaccion
Se tiene una transaccion de dos niveles con subfile.
Se ingresa el cabezal, se pasa a las lineas y se ingresan valores de la primer linea, al dar Enter al final de la misma
para confirmarla, se graba pero en lugar de quedar en INSERT de la 2da linea queda en UPDATE de la primera y se dio de alta
un registro en blanco.
Se está usando la preference Field Exit = Tab, Shift-tab
• SAC # 7673 - Checkbox se desmarca si está el cursor, al ordenar subfile
Se tiene un WP donde en el subfile se tienen atributos y una variable que está definida como checkbox.
Se ejecuta el WP y se marca alguna línea donde se encuentre el checkbox, luego se ordena el subfile por una de las columnas
del subfile (por ej. se ordena por uno de los atributos), y al ordenar se desmarca el checkbox de la línea donde se encontraba
el cursor.
• SAC # 7814 - Problemas con la calculadora en VB
El botón "%" no funciona como se espera en VB. En lugar de calcular el porcentaje calcula el módulo.
• SAC # 9520 - Se borra integridad referencial al ejecutar reorganización
Cuando se tiene "Declare Referential Integrity = Yes", algunas reorganizaciones no mantienen la integridad referencial entre
algunas tablas del modelo.
• SAC # 10774 - Calendario no se despliega si campo esta en rectangulo 3D
Si se tiene un rectángulo 3D alrededor de un Tab, y una fecha dentro del Tab, no se muestra el calendario.
• SAC # 11714 - Valor 'While variables are being modified' funciona mal
Se dan problema si se tiene un Work Panel con una grilla y una variable en la parte fija, además se tiene en el WP configuradas
las siguientes propiedades:
Automatic refresh = When any variables change
When to refresh = While variables are being modified
El problema es que es cuando la variable que se encuentra en la parte fija del Work Panel, tiene la picture @!, en ese caso
cuando se está digitando en la variable y se presiona Space, el cursor vuelve al principio.
• SAC # 12592 - Regla prompt on no funciona dentro de web components
Se tiene un web panel con una regla prompt on.
Si este web panel se ejecuta por sí solo, funciona correctamente la regla, pero si se ejecuta como web component, no se
ejecuta.
• SAC # 13211 - Serial en Web TRN no funciona, deja todas las lineas en 1
La regla serial en Web TRNs muestra ‘1’ en todas las líneas del segundo nivel, pero cuando se confirman la TRN, las líneas
no cambian el valor por el correspondiente, y al confirmar la TRN se da el error:
"Record already exists".
• SAC # 13747 - "Err 200 Illegal use of an erased ref or key" en Web TRN
Al generar una web transaction con subfile, si la variable GxRemove se encuentra como última columna del subfile, se da el
error:
"Err 200 Illegal use of an erased ref or key"
y no se genera el objeto.
• SAC # 14084 - Error "201 Incorrect Syntax" en Informix
Si se configura la propiedad de la tabla Size y Extent y la propiedad del modelo “Lock Mode” en “Use row level”, al ejecutar
una reorganización o una creación de la base de datos, se da el error: “201 Incorrect Syntax”.
• SAC # 14304 - "Function Sequence Error" al ejecutar TRN con combo dinámico
Si en una transacción se tiene una clave foránea definida como un combo box dinámico, y en la tabla base no se tiene ningún
registro ingresado, cuando se ejecuta la transacción que tiene el combo se da el error:
'Function Sequence Error' o 'Error en la secuencia de la funcion'
Esto sucede cuando se trabaja con la DBMS Option "SQL Server Version = 2000 or higher".
• SAC # 14316 - Select for update cannot be applied to the nullable ....
El mensaje completo es:
"Select for update cannot be applied to the nullable side of the an outer join."
Se da al hacer un outer join en postgreSQL cuando uno de los valores es nulo.
• SAC # 14320 - Problema con check box en subfile luego de regla error
Se tiene una TRN de dos niveles, en el subfile se definieron algunas columnas como check boxes.
Además se tiene una regla error para realizar un control sobre la cantidad de check boxes que se marcan.
Estando en modo insert, luego de que se ejecuta la regla error, no es posible modificar algunos de los check boxes del subfile.
• SAC # 14368 - Permite cambiar clave de grilla en UPD con GX Edit si es FK
En una TRN de dos niveles, utilizando GX Edit, es posible entrar en modo update y modificar la clave del segundo nivel, aunque
los cambios no tienen efecto al grabarlos.
Esto sucede si la clave de la grilla es clave foranea.
• SAC # 14415 - Al usar Tab Dialogs el calendario queda mal posicionado
En algunos casos cuando en las TRNs se utilizan Tab Dialogs y se utiliza el calendario para seleccionar una fecha, el calendario
queda mal posicionado.
• SAC # 14459 - Problema con regla Serial en Web TRN
Si se utiliza una regla Serial para numerar automáticamente las líneas de una TRN de dos niveles, pero en el diseño se tienen
2 TRNs, una para la definición del cabezal, y otra para la definición de la grilla, la regla Serial no funciona correctamente.
• SAC # 14667 - No se genera bien "+" en un where en Oracle
Se tiene un for each donde en el where se concatena con + dos strings. Si se trabaja con Oracle como DBMS, la sentencia Select
queda mal generada.
• SAC # 14671 - 'Sub or function not defined' en reorg con atrib.blob
Se tiene una tabla Access con algún atributo Blob. Si se reorganiza la tabla, se produce un error de compilación en la reorganización:
Compile Error in File 'D:modBlobDATA006C1.BAS', Line 115 : Sub or Function not defined
• SAC # 14672 - No se dispara evento click en Grid anidado
Se tienen dos grid freestyle anidados, se programa el evento click en un atributo del grid interior, en ejecución éste no
se dispara.
• SAC # 14678 - Se genera mal for each en modelo C/S y tabla local
Si en un modelo C/S con tablas locales, se tiene un procedimiento con un for each con condiciones sobre la tabla local, la
generación del procedimiento queda incorrecta, porque no se toma en cuenta la condición del for each.
• SAC # 14681 - Generate prompt programs = No da error en TRN de 3 niveles
Si se tiene una TRN de 3 niveles, y se configura la propiedad Generate prompt programs = No, se da un error al compilar,
el error es: "End if without block if"
• SAC # 14718 - Problemas con MenuBar y opción Caller's
Se da el Error 6 Overflow, en algunos casos al utilizar la opción de menubar de un objeto Caller's.
• SAC # 14730 - WSDL Inspector no genera correctamente SDT de 2 niveles
El WSDL Inspector no está importando correctamente los tipos de datos cuando el web service está hecho con GeneXus y utiliza
un parámetro que es un SDT de 2 niveles (por ej.una factura).
En la KB en donde se importa la definición, en el tipo de datos correspondiente al cabezal no está incluyendo la coleccion
de las líneas
• SAC # 14927 - No queda bien fecha en mails enviados via SMTP
En máquinas con configuración regional en español, los mails enviados via SMTP quedaban con fecha incorrecta.
• SAC # 14955 - 'Optional feature not implemented' en aplicación SQL Server
En algunos casos, puede darse el error: "Optional feature not implemented" al ejecutar una aplicación SQL Server 2000.
• SAC # 14979 - Problemas en el manejo de cursores en aplicaciones C/S
Se estaban dando varios problemas en las aplicaciones C/S que utilizan la dll de C/S (gxdata76.dll o gxda80.dll) con el manejo
del pool de cursores.
• SAC # 15070 - Incorrect syntax near '['.'' en SQL Server 6.5
Al trabajar con SQL Server 6.5 da error [Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near '['.'
en un select así:
SELECT [FerTipo], [FerDsc], [FerFecha] FROM fcmasa.[FER001] (NOLOCK) WHERE YEAR([FerFecha]) >= ? ORDER BY [FerFecha]
• SAC # 15112 - GXSelDir retorna distinto valor dependiendo como se llame
GXSelDir retorna distinto valor dependiendo como se llame
• SAC # 15186 - No incluye codigo HTML puesto en el source
En ciertos casos no incluye en el HTML generado los tags puestos en el source un web panel.