| by-exp | Index Level | c |
| Syntax | by-exp-dsnd attr.name {"explosion limiter"} |
| Category | Access |
| Type | Modifier |
| Description |
followed by an attribute name which references a multi-valued attribute to be used individually as sort keys in descending order.
The "by-exp-dsnd" modifier is used to sort attributes that may contain more than one value. When the "by" modifier is used on a multi-valued attribute, it only sorts on the first value in the attribute. Further, each item-id will only appear one time, assuming that its display is not suppressed. When the "by-exp-dsnd" modifier is used, it "explodes" each value in the attribute and treats each value as though it were a separate item. Each value sorts into its proper position, and the item-id will appear with each value. In other words, the number of times and item-id will appear on a report coincides to the number of values in the exploded attribute. The "explosion limiter" specifies that output only occurs on data elements meeting the print limiting criteria. This can be used with any verb that lists or selects items, such as "list", "sort", or "select". |
| Options | |
| See Also | by-exp by READNEXT modifiers attr.name seqlist sort by-dsnd collation order |
| Example |
If one invoice 0001 exists with quantity ordered attribute as follows:
005 1 6 3 sort invoices by-exp-dsnd quantity.ordered The above statement would result in the following. 0001 6 0001 3 0001 1 |
| Warnings | In D3 systems, if "by" is provided with a verb that does not "naturally" sort (such as the "list" verb), the verb is changed to its "sorting" counterpart. (e.g. "list" becomes "sort", "select" becomes "sselect", etc.) This does NOT work, however, on R83 releases. |
| Compatibility | D3 7.0 AP R83 |
| by-exp | Index Level | c |