cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MetaWizard for MetaAssociationEnd

PBugnet
Super Contributor

Hello,

 

I would like to create a MetaWizard on Application MetaClass in ordre to force user to select the parent application (Aggregation of) when he's creating an application object (this user haven't rights to create a high level application).

 

When I specify a MetaAttribute property, that works :

Manager.property("~LkkXoY8pHXQ9[Application Kind]") = "C"
Manager.property("~LkkXoY8pHXQ9[Application Kind]", "Visible") = True
Manager.property("~LkkXoY8pHXQ9[Application Kind]", "Updatable") = False

 

but when I specify a MetaAssociationEnd, that don't work

Manager.property("~isUijEB5i4M3[Aggregation of]", "Visible") = True
Manager.property("~isUijEB5i4M3[Aggregation of]", "Mandatory") = True
Manager.property("~isUijEB5i4M3[Aggregation of]", "Updatable") = True

 

From the courseware on MetaWizard, it was supposed to work without creating news pages (MetaPropertyPage).

 

Could you help me ?

 

Thank you,

Philippe

5 Replies

I understand, but as I said, it surely comes from specific Metamodel 🙂

 

But you can still unprotect the link, and then filter it (so that "normal" users will not be able to use it --> sub applications will still be linked to the library of the application, but that sounds logical... and you will not have any error message any more 🙂

PBugnet
Super Contributor

Hello Lionel,

 

I don't want to unprotect the link Owner Packager, because this link is not under the users' responsability.

 

For an Organizational Process (OP), the business process's library is automatically set on the OP.

Currently, the same behavior occurs for a Component of an Application (I will see why it's not a standard environnement behavior).

 

The troublesome behavior is this auto-settng of the Owner Packager which can't be disabled by any option / filter / access.

 

Philippe

Hello Philippe,

 

I think you must have a specific metamodel, because with a standard environment, when you create a sub-Application, it is not automatically linked to the library of the application (except if we are not talking about the same link... or if you activated an option that I do not know about)

So either you undo your metamodel modification (after finding where this modification was done), but you also have the choice to unprotect the link between Packaged Element and Owner Packager --> In that case, users will be able to link objects to libraries even if they do not have the Administrator level : 

 

scr01.jpg

 

 Lionel

PBugnet
Super Contributor

Hello Lionel,

 

thank you for your response, I finally success to find a suitable solution.

 

A last problem with the Library :

Our Libraries are used to arrange main objects by organizational direction. This arrangement is under the responsability of administrator, thus the Libraries are at a upper authorization level than the objects modelled by users.

When an application component is created from an application arranged in a Library, MEGA forces it to be arranged in the same Library (the same behavior occurs for Organizational Process of a Business Process, for example), even if the Library is filtered or the link between object and Owner Packager is not updatable (by accesses in Profile). Therefore, a error message appear "the link between XX and YY is protected by authorization level AA ...".

 => Do you know a way to desactivate the automatic assignment of the Library ?

 

Philippe

lionel
MEGA
MEGA

Hello Philippe,

 

To use a Mega.Property with a link, the concerned metaAssociation must be connected as a "LegAttribute" to your metaClass as you can see in the following screenshot :

!!!!!!!! --> The metamodel must be compiled after this modification !!!!!!!

 

scrshot1.jpg

 

 

But your case is a bit special as [Aggregation of] is used as a namespace for Applications.

And [Libraries] are also used as namespace for Applications.

--> therefore, you already have access to the [aggregation of] metaAssociation in your creation windows for application, exept that it is shows as "Owner" (with 2 choices as shown below) :

 

scrshot2.jpg

 

 

Because of this, your parameterization will force users to choose an owner, but they will be able to choose "library" instead of "application"... If you do not use "libraries", just filter the access to this metaclass, and your problem will be solved 🙂 :

 

scrshot3.jpg