CodamAIDocs
Themafertig

Wie CRMS die Vorlage findet

Die Reihenfolge, in der CRMS Scopes und Sprachen durchsucht, warum nur veröffentlichte Revisionen zählen und was das Dokument über seine Herkunft sagt.

Ausprägungen
USER vor TENANT vor SYSTEMSprache mit Region, Sprache, Standardvariantenichts gefunden

Worum es geht

Eine Render-Anfrage nennt nur den Schlüssel der Vorlage, etwa audit-report, und vielleicht eine Sprache. Welche Ausgabe und welche Revision dann wirklich rendert, entscheidet CRMS. Diese Suche heißt Auflösung.

Die Reihenfolge

flowchart TB
    A["Anfrage: Schlüssel + Sprache"] --> U{"USER-Ausgabe<br/>der Person?"}
    U -->|"veröffentlicht in<br/>passender Sprache"| OK["diese Revision rendert"]
    U -->|"keine oder nichts<br/>veröffentlicht"| T{"TENANT-Ausgabe<br/>des Mandanten?"}
    T -->|"veröffentlicht in<br/>passender Sprache"| OK
    T -->|"keine oder nichts<br/>veröffentlicht"| S{"SYSTEM-Ausgabe?"}
    S -->|"veröffentlicht in<br/>passender Sprache"| OK
    S -->|"keine oder nichts<br/>veröffentlicht"| NF["404 template-not-found"]

In jeder Ausgabe probiert CRMS die Sprachen in dieser Reihenfolge:

Die Sprachen innerhalb einer Ausgabe, am Beispiel de-CH
  1. 1
    CRMS
    die angefragte Sprache genau so: de-CH
  2. 2
    CRMS
    nur die Sprache, ohne Region: de
  3. 3
    CRMS
    die Standardvariante der Ausgabe, zum Beispiel en
  4. 4
    CRMS
    hat keine dieser Varianten eine veröffentlichte Revision, geht es zum nächsten Scope

Nennt die Anfrage keine Sprache, nimmt CRMS die Sprache, die CIAS für die Person gewählt hat, sonst die Standardsprache der Installation. Mehr unter Sprache und Zeitzone.

Was übersprungen wird

  • Ein Scope, den die Installation nicht zulässt (CODAMAI_CRMS_TEMPLATE_SCOPES). Ist USER abgeschaltet, sucht CRMS gar nicht nach Personen-Ausgaben.
  • TENANT für eine Person ohne Mandant. Es gibt keinen Mandanten, dessen Ausgabe passen könnte.
  • Eine Ausgabe ohne veröffentlichte Revision. Hat eine Person nur einen Entwurf oder eine Revision in Prüfung, bricht das ihre Berichte nicht. CRMS sucht einfach weiter.

Beispiele

Die Plattform hat audit-report mit den Varianten de (Standard) und en. Der Mandant acme hat eine eigene Ausgabe mit nur de.

Wer fragtSpracheEigene USER-AusgabeWas rendert
Person bei acmedekeineTENANT acme, Variante de
Person bei acmede-CHkeineTENANT acme, Variante de (Region fällt weg)
Person bei acmeenkeineTENANT acme, Variante de, weil de dort die Standardvariante ist
Person bei acmedenur ein EntwurfTENANT acme, Variante de. Der Entwurf zählt nicht
Person bei einem anderen MandantenenkeineSYSTEM, Variante en
Person bei einem anderen MandantenfrkeineSYSTEM, Variante de (Standardvariante)

Was das Dokument über seine Herkunft sagt

Jedes Ergebnis nennt, woher es kommt. Über REST stehen diese Angaben in Headern der Antwort:

HeaderInhaltBeispiel
Crms-Template-Keyder Schlüsselaudit-report
Crms-Template-Scopeder Scope der Ausgabe, die gewonnen hatTENANT
Crms-Template-Variantdie Sprache der Variante, die benutzt wurdede
Crms-Template-Revisiondie ID der Revision0b7e…
Crms-Template-Revision-Hashder Ketten-Hash dieser Revisionsha-256:9f86…

Ein endgültiges Dokument hält dieselben Angaben dauerhaft fest, siehe Endgültige Dokumente.

Fallen

Weiter

Suchen