Domino Code Fragment

Code Name*
Sorting a text list
Date*
02/13/1999
Source (or email address if you prefer)*
Rlatulippe@romac.com
IP address:.18.216.124.8
Description*
For a specified accuracy, formula sorts a text list.
Type*
Formula
Categories*
List Processing/Sorting
Implementation:
Modify constants
Required Client:
Server:
Limitations:
This formula will sort a text list (without numbers or punctuation)
Comments:
You can adjust the accuracy from 1 to 10 characters. This formula is designed to work in a field. Replace Values with your text list, and change the Accuracy variable to meet your needs. Long lists work faster with lower accuracy numbers.
Files/Graphics attachments (if applicable): Code:


Formula
Accuracy:=10;
X := Accuracy - 1;
List := @Trim(@UpperCase(Values));
List2 := @Trim(@Implode(List + "Ü"; ""));
List3 := @Implode(@Explode(List2; " "); "Ö");
List4 := @Explode(List3; "Ü") + @Repeat("Ö"; X+1);
A := @Middle(List4; X; 1) + "Ü" + List4;
B := @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ"));
@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));

@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));
@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));

@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));
@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));

@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));
@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));

@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));
@If(X > 0; @Set("X"; X - 1); @Return(@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)));
@Set("A"; @Middle(B; X; 1) + "Ü" + B);
@Set("B"; @Trim(@Right(A; "ÖÜ") : @Right(A; "AÜ") : @Right(A; "BÜ") : @Right(A; "CÜ") : @Right(A; "DÜ") : @Right(A; "EÜ") : @Right(A; "FÜ") : @Right(A; "GÜ") : @Right(A; "HÜ") : @Right(A; "IÜ") : @Right(A; "JÜ") : @Right(A; "KÜ") : @Right(A; "LÜ") : @Right(A; "MÜ") : @Right(A; "NÜ") : @Right(A; "OÜ") : @Right(A; "PÜ") : @Right(A; "QÜ") : @Right(A; "RÜ") : @Right(A; "SÜ") : @Right(A; "TÜ") : @Right(A; "UÜ") : @Right(A; "VÜ") : @Right(A; "WÜ") : @Right(A; "XÜ") : @Right(A; "YÜ") : @Right(A; "ZÜ")));
@Replace(@Trim(@Explode(@Implode(@Explode(@Trim(@Implode(B + "Ü"; "")); "Ö"); " "); "Ü")); List; Values)