AnsweredAssumed Answered

How to create an update lrel form with the cr_trans object?

Question asked by josua on Dec 11, 2017
Latest reply on Dec 11, 2017 by josua

Hello everyone,

 

I'm trying to create an object called "Process", which will have related different status transitions. This process will be related to the request categories. Depending on the stablished category, the request will pass through the different transitions linked to the process. 

The problem is that in the update lrel popup, the left column shows all the existent transitions, but the right column which should contain the current process-related transitions, is empty.

 

In order to achieve this I have create an object called zProcess and another object called zlrel_zProcess_cr_trans. 

 

zProcess:

   id INTEGER UNIQUE
   producer_id LOCAL STRING(20)
   persistent_id LOCAL STRING(60)
+ zName STRING(512)
zTransitions BREL <- zlrel_zProcess_cr_trans.zProcess {zProcess = ?}
     DYNAMIC { DOMSET MLIST_DYNAMIC; WHERE zProcess = ? ; PARAM_NAMES id; }
   last_mod_dt DATE ON_CI {NOW}
   last_mod_by SREL -> cnt.id ON_NEW {USER} ON_CI {USER}

 

zlrel_zProcess_cr_trans:

 

   id INTEGER UNIQUE
   producer_id LOCAL STRING(20)
   persistent_id LOCAL STRING(60)
zProcess SREL -> zProcess.id
+ zTransition SREL -> cr_trans.id
   last_mod_dt DATE ON_CI {NOW}
   last_mod_by SREL -> cnt.id ON_NEW {USER} ON_CI {USER}

 

 

I have also added two attributes to the object cr_trans:

 

   id INTEGER UNIQUE
   producer_id LOCAL STRING(20)
   persistent_id LOCAL STRING(60)
   status SREL -> crs.code
   new_status SREL -> crs.code REQUIRED
   is_default INTEGER ON_NEW {0}
   must_comment INTEGER ON_NEW {0}
   delete_flag del SREL -> actbool.enum REQUIRED ON_NEW {0}
   condition SREL -> macro.persistent_id
   condition_error STRING(255)
   description STRING(255)
   last_mod_by SREL -> cnt.id ON_NEW {USER} ON_CI {USER} TENANCY_UNRESTRICTED
   last_mod_dt DATE ON_CI {NOW}
   t_type SREL -> transition_type.id DISPLAY_NAME "Transition Type"
+ zProcessRef BREL <- zlrel_zProcess_cr_trans.zTransition {zTransition= ?}
      DYNAMIC { DOMSET MLIST_DYNAMIC; WHERE zTransition = ? ; PARAM_NAMES id; }
+ zname STRING(250)

 

In the wsp.mods I have added the following lines:

////////////////////////////////////////////////////////////////////////
// Factory: cr_trans
////////////////////////////////////////////////////////////////////////

OBJECT cr_trans {
   ATTRIBUTES cr_trans {
      zProcessRef BREL zlrel_zProcess_cr_trans zTransition DYNAMIC{
         DOMSET MLIST_DYNAMIC;
      };
      zname STRING 250;
   };
};

////////////////////////////////////////////////////////////////////////
// Factory: zProcess
////////////////////////////////////////////////////////////////////////

OBJECT zProcess {
   ATTRIBUTES zProcess {
      zName STRING 512;
      zTransitions BREL zlrel_zProcess_cr_trans zProcess DYNAMIC{
         DOMSET MLIST_DYNAMIC;
      };
      last_mod_dt DATE { ON_CI SET NOW; };
      last_mod_by SREL cnt { ON_CI SET USER;
      ON_NEW DEFAULT USER; };
   };

   FACTORY zProcess {
      STANDARD_LISTS {
         MLIST OFF;
         RLIST OFF;
      };
      REL_ATTR id;
   };
};

////////////////////////////////////////////////////////////////////////
// Factory: zlrel_zProcess_cr_trans
// Description: Fac_Attr_Entry zlrel_zProcess_cr_trans
////////////////////////////////////////////////////////////////////////

OBJECT zlrel_zProcess_cr_trans {
   ATTRIBUTES zlrel_zProcess_cr_trans {
      zAssignee SREL ntfl;
      zProcess SREL zProcess;
      zTransition SREL cr_trans;
      last_mod_dt DATE { ON_CI SET NOW; };
      last_mod_by SREL cnt {

         ON_CI SET USER;
         ON_NEW DEFAULT USER;

      };
   };

   FACTORY zlrel_zProcess_cr_trans {
      STANDARD_LISTS {
         MLIST OFF;
         RLIST OFF;
      };
      REL_ATTR id;
      COMMON_NAME id;
   };
};

 

The process form shows a tab with the current related transitions.

 

When updating transitions, the list_cr_trans.htmpl appears.

After click on search button, we can see the problem.

 

Any ideas about to fix this.

Thank you and best regards

Outcomes