Par de problemas

Obsydian, Cool:Plex, Advantage Plex, AllFusion Plex...

Moderadores: Jorge Ubeda, pacopicon

Par de problemas

Notapor cjaramillo » Lun Feb 08, 2010 5:05 pm

Hola. Tengo dos problemas en un modelo con el que estoy trabajando.

1. En una función en la que ya tenia escrito código en el diagrama de acción, por error cambie las herencias. A partir de eso cuando abro el diagrama de acción me sale totalmente en blanco y el siguiente mensaje de error: "Inheritance cannot be resolved because there are two or more action diagrams at the top of the hierarchy". A pesar de que ya he corregido las herencias no aparece el codigo de la herencia, ni tampoco los cambios que yo habia hecho. Como puedo resolver esto?

2.Mas que un problema, es una inquietud. Tengo varios campos definidos directamente como type numeric (no he heredado de ningún patrón) y todos
tienen la misma cantidad de caracteres. El problema sucede cuando quiero hacer una asignación en un diagrama de acción utilizando el comando SET me genera el error:
"Expression not valid because objects 'Campo<A>' - 'Campo<B>' are not in the same domain". Y debo utilizar el comando cast. Cual es la razón de este error?

Gracias
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE

Re: Par de problemas

Notapor Jorge Ubeda » Lun Feb 08, 2010 11:41 pm

cjaramillo escribió:1. En una función en la que ya tenia escrito código en el diagrama de acción, por error cambie las herencias. A partir de eso cuando abro el diagrama de acción me sale totalmente en blanco y el siguiente mensaje de error: "Inheritance cannot be resolved because there are two or more action diagrams at the top of the hierarchy". A pesar de que ya he corregido las herencias no aparece el codigo de la herencia, ni tampoco los cambios que yo habia hecho. Como puedo resolver esto?

Los dos son problemas de manejo de la herencia.
Respecto a éste primero, si eliminas el triple de la herencia aplicada en segundo lugar, deberías ver el primer diagrama. Si no lo consigues, hay algo cruzado (quizá haya más de una herencia agregada a la inicial)

cjaramillo escribió:2.Mas que un problema, es una inquietud. Tengo varios campos definidos directamente como type numeric (no he heredado de ningún patrón) y todos
tienen la misma cantidad de caracteres. El problema sucede cuando quiero hacer una asignación en un diagrama de acción utilizando el comando SET me genera el error:
"Expression not valid because objects 'Campo<A>' - 'Campo<B>' are not in the same domain". Y debo utilizar el comando cast. Cual es la razón de este error?

En este segundo caso, lo mismo que en el primero, debe existir un tronco común de herencia. De lo contrario, aunque sean del mismo tipo primitivo, se trata de dos valores que cada uno inicia una cadena de herencia por su cuenta. En este caso el cast es inevitable. En el primer problema, no ves los diagramas porque no parten de la misma raíz de herencia. Probablemente una de ellas (la primera) sea una función sin herencia, con diagrama de acción "primitivo".
Para ambos casos, lo más simple es partir de la base de herencia que está en los patrones estándar: heredar de los tipos de FIELDS (asumo de que estamos hablando de la segunda generación de patrones (no Obase)) , y heredar de Function Shell (revisar por Inheritance path la cadena de herencia). Si todas tus funciones arrancan del root Function Shell, o UI Shell si es una UI, o Server Shell si es una servidora, nunca tendrás incompatibilidad de herencias, y podrás organizar bien el agregado de lógica.
La otra solución es contruír su propio sistema de primitivas, pero eso es un trabajo mayor. Quedarse a mitad de camino lleva a soluciones forzadas.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

Notapor cjaramillo » Mar Feb 09, 2010 3:48 pm

Ya las tripletas estan como estaban originalmente. Aun asi el diagrama de accion sale en blanco. Que otra opción puedo utilizar para poder recuperar lo que tenia en el diagrama de acción?
cjaramillo
 
Mensajes: 22
Registrado: Mar Feb 03, 2009 4:33 pm
Ubicación: Ecuador GYE

Posibilidades de recuperación

Notapor Jorge Ubeda » Mar Feb 09, 2010 8:15 pm

cjaramillo escribió:Ya las tripletas estan como estaban originalmente. Aun asi el diagrama de accion sale en blanco. Que otra opción puedo utilizar para poder recuperar lo que tenia en el diagrama de acción?

Sólo puedo ayudarte en sugerirte alternativas para "encontrar" el diagrama perdido:
1. Obvio recordarte que recurras a cualquier backup anterior. En particular, recuerda que, dependiendo de cómo lo hayas configurado, existen dos versiones adicionales de tu modelo: el previo a iniciar (*.opn) y el previo a la última vez que haya sido salvado (*.bak).
2. Si el diagrama de acción había sido previamente salvado al modelo de grupo, crear un nuevo modelo local te traerá la versión previa, si no habías subido todavía la versión nueva.
3. Si acaso la lógica todavía subsiste, es posible intentar exportarlo (ver el manual para exportar a xml).
4. Suponiendo que el diagrama de acción esté todavía, una posibilidad es que lo hayas creado en una variante, o en una versión, y lo estés buscando en otra. En este caso, si configuraras el modelo a la variante/versión correcta, deberías verlo.
5. Quizá hayas agregado lógica en la versión con herencia agregada, lo que haría que no vieras la versión anterior, aunque quitaras la herencia (el triple ya no está, pero se ha agregado lógica en la capa nueva). Es posible que, si usas la característica de visualizar la fecha de las instrucciones, puedas distinguir todas las entradas hechas a partir del agregado de la herencia. En ese caso, eliminando todas las entradas posteriores al cambio de herencia, deberías poder ver el diagrama anterior (primero deberías cerrar el diagrama, y luego de reabrirlo estaría la versión anterior). En este caso te recomiendo probar sobre una copia del modelo, no sobre el original. Si funciona, volver a intentarlo en el original. Cuando me refiero a ver las fechas de las intrucciones cambiadas, me refiero a Plex 5.5 en adelante, con el diagrama abierto, la opción View/Show change dates.
Finalmente, una recomendación (para todo el grupo). Tener una política de backups. Tener una historia del modelo local y del modelo de grupo.
Jorge Ubeda
Site Admin
 
Mensajes: 229
Registrado: Mié Oct 26, 2005 6:00 pm
Ubicación: Valencia

Notapor pacopicon » Lun Feb 15, 2010 10:22 am

Hola:
Por si puedo aportar algo:

- Sobre el tema de las asignaciones, efectivamente es por que no tiene antecesores comunes. Échale un vistazo al verbo FLD LIMIT SYS.

- Sobre el tema de que has perdido código que tenías en Edit Points de unos antecesores, y que al reemplazarlo has perdido (o al menos no te salen), yo soy de la opinión de que si volvieras a establecer la misma estructura jerárquica de herencia, te volvería a aparecer (no estoy al 100% seguro, pero creo que sí)

Saludos,
Paco Picón
www.metadata.es
pacopicon
 
Mensajes: 121
Registrado: Lun Oct 03, 2005 12:28 pm
Ubicación: Málaga - España


Volver a Plex

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados

cron