Disons qu’on est sur le formulaire d’un record de l’objet MyObjA
, et qu’on veut ouvrir, via une action custom, le formulaire de création d’un objet MyObjB
(qui pointe sur MyObjA
via la FK myFK
) à la manière de ce qui se ferait quand on clique sur le bouton “Creer” du panel de cet objet (c’est à dire avec les infos du record parent prévalorisés), il faut faire renvoyer a son action un statement JS du genre:
return javascript(
"var b = app.getBusinessObject('MyObjB', 'action3_ajax_MyObjB'); " +
"$ui.displayForm(null, b, app.DEFAULT_ROW_ID, { parent: { name: obj.getName(), inst: obj.getInstanceName(), field: 'myFK', rowId: obj.getRowId(), object: obj } })"
);
NB: Dans ce contexte la variable obj
correspond à l’objet MyObjA
sur le record affiché.
ici j’utilise volontairement une instance specifique de mon objet MyObjB
ce qui me permet d’implémenter des règles particulières, soit statiques (= dans le postLoad
ou via des contraintes statiques) soit dynamiques (= dans le initCreate
ou via des contraintes back) => dans votre cas il s’agit ici des règles qui forcent le type d’avenant