SortMatrix (Opus Funktion)

SortMatrix (Opus Funktion)

Beschreibung

Diese Funktion sortiert innerhalb einer Matrix einen angegebenen Bereich.
Sorts the rows of a 2D matrix by the values in the specified column. The short form sorts all rows and columns.

Argumente

Name

Typ

Beschreibung

Name

Typ

Beschreibung

Matrix

ID[]

integer[]

string[]

float[]

Matrix, die sortiert werden soll.
the two-dimensional matrix to sort (float, integer or string)

SortColumn

integer

zero-based column index to sort by

Ascending

integer

(optional)
1 = sort ascending

0 = sort descending

FirstColumn

integer

(optional) first column index to include in row swaps

LastColumn

integer

(optional) last column index to include in row swaps

FirstLine

integer

(optional) first row index to sort

LastLine

integer

(optional) last row index to sort

Rückgabewert float[] oder integer[] oder string[]

Matrix, welche gemäss Angaben sortiert wurde.

Beispiel

Sortierreihenfolge für TeacherIDs festlegen aufgrund des Kurzzeichens (s_Short):

Lo_Teachers = Ao_TimeTable.i_SSB_TeacherID;
Lo_Teachers := GetArrayDistinctList(Lo_Teachers);
Lo_Sort = StringArray(GetSize(Lo_Teachers));

for (Li_i = 0;Li_i < GetSize(Lo_Teachers);Li_i++)
{
Lo_Sort[Li_i] = GetSSB_Teacher_s_ShortEntry(Lo_Teachers[Li_i]);
} /* for */

Lo_Order = SortArray(Lo_Sort);

Lo_Teachers = SetArrayOrder(Lo_Teachers, Lo_Order);

Lo_Teachers = Ao_TimeTable.i_SSB_TeacherID;
Lo_Teachers := GetArrayDistinctList(Lo_Teachers);
Lo_Sort = StringArray(GetSize(Lo_Teachers));

for (Li_i = 0;Li_i < GetSize(Lo_Teachers);Li_i++)
{
Lo_Sort[Li_i] = GetSSB_Teacher_s_ShortEntry(Lo_Teachers[Li_i]);
} /* for */

Lo_Order = SortArray(Lo_Sort);

Lo_Teachers = SetArrayOrder(Lo_Teachers, Lo_Order);

Siehe auch

SetArrayOrder