After setting a column name in the "List Order By" dropdown parameter, the dropdown does not change the behavior.
SDM 17.x
It is necessary to set extra parameters when the "List Order By" is used.
This knowledge document focuses on the "Status" and "Impact" fields as examples.
Out of the box, the status and impact fields are coded as follows in the form detail_in.htmpl file.
<PDM_MACRO name=dtlDropdown hdr="Status" attr=status factory=crs_in>
<PDM_MACRO name=dtlDropdown hdr="Impact" attr=impact evt="onBlur='manual_modify();detailSyncEditForms(this)'" lookup=no>
"List Order By" on the properties on the WSP is specified as "list_orderby" in the source of the htmpl file. To specify with the "list_orderby", it is necessary to set the following factors.
factory : Factory name that is linked to the dropdown listbox.
list_display : Set $list.COMMON_NAME or $list.sym .
rel_attr_name : Set REL_ATTR .
list_orderby : Set id or enum (CA Support verified "code" and "sym" worked with "Status" field).
The sort order will be Ascending with the specified column here. Not possible the Descending.
use_list_display : Set 1.
whereclause : Needs to set even if all existed values are target.
So one could modify status and impact definitions to include the list_orderby clause as below:
Status
<PDM_MACRO name=dtlDropdown hdr="Status" attr=status factory=crs_in list_display="$list.COMMON_NAME" list_orderby="code" rel_attr_name="REL_ATTR" use_list_display="1" whereclause="sym<>'XX'">
<PDM_MACRO name=dtlDropdown hdr="Status" attr=status factory=crs_in list_display="$list.COMMON_NAME" list_orderby="sym" rel_attr_name="REL_ATTR" use_list_display="1" whereclause="sym<>'XX'">
Impact
<PDM_MACRO name=dtlDropdown hdr="Impact" attr=impact evt="onBlur='manual_modify();detailSyncEditForms(this)'" lookup=no factory=imp list_display="$list.sym" list_orderby="sym" rel_attr_name="REL_ATTR" use_list_display="1" whereclause="enum=0 OR enum=3 OR enum=5">
<PDM_MACRO name=dtlDropdown hdr="Impact" attr=impact evt="onBlur='manual_modify();detailSyncEditForms(this)'" lookup=no factory=imp list_display="$list.sym" list_orderby="enum"
rel_attr_name="REL_ATTR" use_list_display="1" whereclause="enum=0 OR enum=3 OR enum=5">
These are just examples and they can be applied to other objects, including custom objects/fields.