anonymous Log in
Search
Recents:
v3.0
genexusextensions
Objetos que se distribuyen con GeneXus
30/09/19 15:53

Enrique Almeida

Replies: 4

En una extensión, me interesaria poder distinguir cuales son los objetos
que vienen con GeneXus y los que son del usuario.
Estoy trabajando en una extensión que revisa los objetos y me gustaria
poder excluir objetos de GXFLOW, GAM o con GeneXus, porque esos objetos en
algunos casos no los voy a poder corregir (porque son read only) y otros
me los va a pasar por arriba con cada instalación.
Hay una forma de distinguir esos objetos de los del usuario?
Replies

jjm

30/09/19 17:42
Hola Enrique. Con el User que lo modificó debería servirte para distinguirlos. Es el UserName del KBObject Casi todos los objetos tienen usuario Genexus o quizás alguna sea Artech\Genexus. Deberías filtrar esos. De cualquier forma sabemos que hay algunos objetos que deberían pero no tienen esos usuarios. Y que debemos corregirlos. En la UI algunos de esos objetos aparecen en la lista de Pending for Commits si la kb está conectada a un gxserver. O con el Work With Object (Ctrl-J) la columna Last User En los XPZ es el attribute user= en el cabezal de los objetos, atributos, domains... On Mon, Sep 30, 2019 at 3:54 PM Enrique Almeida

fazzato

30/09/19 20:00
Buenas, que tal? Si entendí el escenario, se busca reconocer objetos que son de GX por ser readonly, o porque serían sobrescritos más adelante. El caso de los objetos readonly, no es que sean readonly por ser de GX, sino que GX no permite modificar objetos cuya definición se encuentra en un módulo externo, ya que incluso no cuenta con la definición completa del objeto, sino con lo mínimo para representar la interfaz de invocación. Para consultar si una instancia de un KBObject se encuentra en un módulo externo, se puede utilizar la propiedad IsInterface, en bool isExternal = obj.IsInterface; De esa forma vas a poder detectar objetos readonly no solo de GX, sino también de cualquier módulo externo propio o de terceros. Saludos On Tue, Oct 1, 2019, 5:43 AM Jorge Juan Mastropietro

Enrique Almeida

01/10/19 10:43
Son varios los objetos que quiero excluir del chequeo. 1) Los que estan en un modulo externo. (pruebo lo que vos me decis). 2) Los que vienen con productos distribuidos con GeneXus y van a ser sobre-escritos, por ejemplo los que vienen con GAM, que no tienen IN: OUT: e INOUT: en los parametros y me ensucian los reportes de errores. Lo que me gustaria distinguir son los objetos que programamos nosotros, con los que programan otros y poder analizarlos por separado. En el caso de los objetos de (ejemplos y backend) GAM, no tienen usuario, no son de modulo externo, estan en el modulo Root y me gustaria poder excluirlos. Es como que falta un OWNER de esos objetos, pero la unica forma que se me ocurre de excluirlos es por el nombre y no me parece lo mas adecuado. El lun., 30 de sep. de 2019 a la(s) 20:01, Federico Azzato ( fazzato@genexus.com)

jjm

01/10/19 12:37
Creo que depende de la versión que estés usando también. Cuál estás usando ahora? Los ejemplos del GAM deberían tener usuario 'Genexus' Aunque ahora estoy viendo que los ejemplos para SD no tienen user (GAM_panels-for-SD.xpz ) Vamos arreglar eso. Confirmanos si son esos o tenés alguno más sin 'user' Gracias. Quizás te pueda servir ver en qué carpeta/folder están, hay algunos en GAM_General, GAM_SD, ... On Tue, Oct 1, 2019 at 10:44 AM Enrique Almeida


Back to genexusextensions