How to control Blue Yonder WMS authorization of Cycle MOCA connections

How to control Blue Yonder WMS authorization of Cycle MOCA connections

Problem

When connecting Cycle to a Blue Yonder WMS, it may be necessary to limit Cycle's access. 

Solution

The Cycle MOCA connection step, I connect to MOCA at "<ADDRESS>" logged in as "<USERNAME>" with password "<PASSWORD>" includes a check of the Blue Yonder WMS Policy and Authorization tables.

The WMS can be configured to control Cycle's access by Role or by User.

Configuration

Step 1: Insert the control policy

Depending on WMS version this policy can be entered in your client or by using the following insert:

[insert 
into poldat (polcod, polvar, polval, wh_id_tmpl, srtseq, rtstr1, rtstr2, rtnum1, rtnum2, rtflt1, rtflt2, moddte, mod_usr_id, grp_nam) 
values ('TRYON-SOLUTIONS-CYCLE', 'AUTHORIZATION-REQUIRED', 'ENABLED', '----', '1', '', '', '', '', '', '', sysdate, 'CYCLE', '')]catch(@?);

* This policy must be present and rtnum1 must = 1 for any of the restriction to take effect.

** If this policy is missing or if rtnum1 = 0, Cycle can connect to MOCA with no limitations.

 

Step 2: Insert into the menu option tables 

Depending on WMS version this data can be entered in your client or by using the following inserts:

[insert
into les_mnu_opt(opt_nam, opt_typ, pmsn_mask, ena_flg, exec_nam, exec_parm, btn_img_id, ath_grp_nam, addon_id, grp_nam)
values ('TRYON-SOLUTIONS-CYCLE', 'E', '-1', '1', 'TRYON-SOLUTIONS-CYCLE', '', '', '', '', '')] catch(@?);
[insert
into sys_dsc_mst(colnam, colval, locale_id, cust_lvl, mls_text, short_dsc, grp_nam)
values ('opt_nam', 'TRYON-SOLUTIONS-CYCLE', 'US_ENGLISH', '10', 'TRYON-SOLUTIONS-CYCLE', '', '')] catch(@?);

These inserts add a menu option with External Application as the option type and description for the control functionality so that it can be assigned through compatible clients.

If the TRYON-SOLUTIONS-CYCLE policy is installed and the rtnum1 = 1 then any user  attempting to connect through Cycle MUST be assigned to the menu option either by their Role or User.

 

Example 1: Setup by Role

Below is an example of assigning the TRYON-SOLUTIONS-CYCLE menu option to the CYCLE_TESTER role. Assign to roles appropriate for your instance.

When a role is assigned to the menu option then users with the role WILL be able to connect to MOCA through Cycle.

 

Example 2: Setup by User

Below is an example of assigning the TRYON-SOLUTIONS-CYCLE menu option to the CYC_USR user. Assign to users appropriate for your instance.

When a user is assigned to the menu option then that user WILL be able to connect to MOCA through Cycle.

mnu.png

 

Troubleshooting

Below is the Cycle error message produced when the TRYON-SOLUTIONS-CYCLE policy is enabled and the user, either individually or by role, is not assigned to the option.

 

 If your client does not support menu assignment by role or user then the functionality can be inserted manually.

 To insert for a specific user:

[insert
into les_opt_ath(opt_nam, ath_typ, ath_id, pmsn_mask, grp_nam)
values ('TRYON-SOLUTIONS-CYCLE', 'U', '<USR_ID>', '-1', '')] catch(@?);

 To insert for a specific role:

[insert
into les_opt_ath(opt_nam, ath_typ, ath_id, pmsn_mask, grp_nam) a.
values ('TRYON-SOLUTIONS-CYCLE', 'R', '<ROLE_ID>', '-1', '')] catch(@?);