daniel_philippi
Occasional Collector

Eine mit $CMS_SET()$ erzeugte Map sortiert die Einträge

Hallo Zusammen.

Damit der Code etwas übersichtlicher wird habe ich mir eine Map gebaut und laufe die dann in einer FS_LIST durch.

Die Werte mit der ich die Map baue, sollen in genau der Reihenfolge ausgegeben werden wie sie angelegt werden. Bei der Ausgabe habe ich allerdings festgestellt, dass die Map nach den Keys sortiert ist. Kann ich das verhindern?

Viele Grüße,

Daniel

Hier der Code:

$CMS_SET(sv_table, {

    "products": st_products,

    "employees": st_employees,

    "area": st_area,

    "phone": st_phone,

    "fax": st_fax,

    "email": st_email

})$

$CMS_FOR(sv_table_row, sv_table)$

    $CMS_IF(!sv_table_row.value.isEmpty())$

        <tr>

            <td>$CMS_VALUE(sv_table_row.key)$</td>

            <td>$CMS_VALUE(sv_table_row.value)$</td>

        </tr>

    $CMS_END_IF$

$CMS_END_FOR$

0 Kudos
1 Reply
Peter_Jodeleit
Crownpeak employee

Bei Maps gibt es keine definierte Reihenfolge.

Du kannst eine Liste benutzen, in der die Schlüssel in deiner gewünschten Reihenfolge stehen:

$CMS_SET(keys, ["products, "employees", "area", "phone", "fax", "email"])$
    $CMS_SET(value, sv_table[key])$
    <tr>
            <td>$CMS_VALUE(key)$</td>
            <td>$CMS_VALUE(sv_table[key])$</td>
   </tr>
$CMS_END_FOR$
Peter
0 Kudos