as400-l |
| jbusquets@grespania. | |
<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> </head> <body text="#000000" bgcolor="#FFFFFF"> <p>Hola gente, a ver si alguien puede darme una pista de como resolver esto , porque ya no se por donde mirarlo:</p> <p>Tengo un programa generado en rpg que hasta este momento estaba funcionando perfectamente, no lo había tocado en tiempo.</p> <p>Me piden una pequeña modificación, de modo que la hago y compilo... diez minutos.</p> <p>Genera y lanza bien la compilación.... pero el programa no se compila, el AS/400 me tira un error de compilación. <br> </p> <p>Me pongo a mirar el listado de compilación, y para mi sorpresa ,el error se produce porque Gx define mal la estructura de una tabla.</p> <p>En concreto, la tabla maestra de artículos, que se usa dos veces en el programa, porque el código de artículo está presente como tal y también como un subtipo. De forma correcta, define la misma tabla dos veces, una para cada consulta ¡ pero en la segunda vez añade al final de la lista de columnas una que ya había definido, repetida!</p> <p><tt> *</tt><tt><br> </tt><tt> * Alias definition</tt><tt><br> </tt><tt> *</tt><tt><br> </tt><tt> IF0000</tt><tt><br> </tt></p> <p><tt> ...blablabla</tt><tt><br> </tt></p> <p><tt> IF0001</tt></p> <p><tt>...blablabla...</tt><br> </p> <p>... ahora viene la tabla, definda por primera vez:<br> </p> <p><tt> IF0002</tt><tt><br> </tt><tt> I FORMAT P02051</tt><tt><br> </tt><tt> I MODELO P02052</tt><tt><br> </tt><tt> I DESART P020F6</tt><tt><br> </tt><tt> I MEDART P020MG</tt><tt><br> </tt><tt>.....</tt><tt><br> </tt><tt> I PORPRI P020UL</tt><tt><br> </tt><b><tt> I PIEZAS P0206Y</tt></b><tt><br> </tt><tt> I CODFOR P020DZ</tt><tt><br> </tt><tt>....</tt></p> <p><tt> I OBSAR1 P020NM</tt><tt><br> </tt><tt> I OBSAR2 P020NN</tt><tt><br> </tt><tt> I CEGART P020C4</tt><tt><br> </tt><tt> IF0003</tt></p> <p><tt>...blablabla...... </tt><br> </p> <p>.. y ahora viene la misma tabla, para cuando lee los atributos del subtipo</p> <p><tt> IF0004</tt><tt><br> </tt><tt> I FORMAT P041GX</tt><tt><br> </tt><tt> I MODELO P041GY</tt><tt><br> </tt><tt> I DESART P040F6</tt><tt><br> </tt><tt> I MEDART P041I8</tt><tt><br> </tt><tt> ....</tt><tt><br> </tt><tt> I PORPRI P040UL</tt><tt><br> </tt><b><tt> I PIEZAS P0425H</tt></b><tt><br> </tt><tt> I CODFOR P040DZ</tt><tt><br> </tt><tt>...</tt></p> <p><tt> I OBSAR1 P040NM</tt><tt><br> </tt><tt> I OBSAR2 P040NN</tt><tt><br> </tt><tt> I CEGART P040C4</tt><tt><br> </tt><tt> <b> I PIEZAS P0406Y</b></tt><br> </p> <p><br> </p> <p>Como se puede ver, en la segunda definición de la tabla, al final de todas las columnas , va y se le ocurre añadir una columna repetida, "PIEZAS", como se ve, es una columna que está mas arriba en la tabla. Lo mas gracioso es que en la primera definición de la misma tabla lo ha hecho perfectamente , y no añade esta duplicidad. ¡Encima la variable P0406Y después no la usa para nada!<br> </p> <p>Por tanto, este programa no compila, y no tengo la mas remota idea de qué hacer para arreglarlo. Probé a cambiar cosas al azar, tocar la definición del subtipo y eso, pero , claro, así puedo pasarme años probando e igual ni aún así se arregla. <br> </p> <p>¿alguna pista , algún consejo?</p> <p>¿Lo dejo todo y me pongo a programar las aplicaciones en Visual Basic 1.0 ?<br> </p> <p>Bufff</p> <p><br> </p> <div class="moz-signature">-- <br> <h3>Jesús Busquets</h3> <br> <p><a href="http://www.grespania.com"><strong><big><span style="font-size:20px">Grespania, S.A.</span></big></strong></a></p> </div> </body> </html> |
|
|
| | |
jbusquets@grespania. | |
Hola, gracias por las respuestas.
Tras varias pruebas, sin que cambiara la cosa, encontré que la
solución era mas fácil de lo que parecía: El problema,
evidentemente, es que algo en Genexus se había liado, y bien. El
miedo era que el problema estuviera en el diseño, o en el modelo
(en su base de datos SQL) Probamos a generar desde otra máquina,
apuntando al mismo modelo ¡y funcionó normalmente! así que algo
del directorio del modelo, en el ordenador de desarrollo tenía
algo que Gx habría generaod mal, y que al ser usado en la
generación estaba dando los problemas.
Bastó una eliminación de todo lo que tenía en el directorio del
modelo (excepto los cuatro archivos imprescindibles) y volver
generar, y se arregló por arte de magia.
Saludos
El 26/10/2018 a las 13:51, Arnoldo
Lezama |
|
|
|
|
Back to as400-l |
|