Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
/* Sort by Customer Number (Right Justified), Ascending , then Descending */
 
declare subroutine V119
/* Customer Number, Region, Customer Name, Total Sales */
Record1 = "42" : @fm : "West" : @fm : "Acme Corporation"    : @fm : 5000
Record2 = "1"  : @fm : "East" : @fm : "Zeta Corporation"    : @fm : 200
Record3 = "3"  : @fm : "East" : @fm : "Midland Corporation" : @fm : 3500
Record4 = "2"  : @fm : "West" : @fm : "Orland Corporation"  : @fm : 300
SortData = Record1 : @rm : Record2 : @rm : Record3 : @rm : Record4 : @rm
 
/*  ascending sort  */
Bys   = 'A'
Justs = 'R'
V119('S', '', Bys, Justs, SortData, '')
 
/*  descending sort */
Bys  =  'D'
V119('S', '', Bys, Justs, SortData, '')

 

Example: Sorting by Two Columns

Code Block
/* Sort by Region (Ascending-Left), then Total Sales (Descending-Right) */
 
declare subroutine V119
/* Region, Total Sales, Customer Number, Customer Name */
Record1 = "West" : @fm : 5000 : @fm : "42"     : @fm : "Acme Corporation"
Record2 = "East" : @fm :  200 : @fm : "1"      : @fm : "Zeta Corporation"
Record3 = "East" : @fm : 3500 : @fm : "3"      : @fm : "Midland Corporation"
Record4 = "West" : @fm :  300 : @fm : "2"      : @fm : "Orland Corporation"
SortData = Record1 : @rm : Record2 : @rm : Record3 : @rm : Record4 : @rm
 
Bys   = 'AD'
Justs = 'LR'
V119('S', '', Bys, Justs, SortData, '')

...

Example: External Sort Logic

...