Angezeigten Dateinamen im Variantenbaum konfigurieren

Bei uns wird ein sehr seltsamer “Dateiname” im Variantenbaum von ED angezeigt (vermutlich sind es die Werte aller möglichen DB-Felder hintereinandergehängt):

Ich habe keinen Ort gefunden, wo ich das konfigurieren kann.
Die Apryse-WebViewer Doku hilft dabei auch nicht weiter (wie auch - ist ja ED-spezifisch).

Habe ich etwas übersehen? Kann ich das ggf. per Interceptor anpassen?

Hallo @hajoh,

der einfachste Weg ist über einen Interceptor.
Die Embedded Documents Interceptoren unterstützen auch die Funktion onObjectInfo welche das folgende Interface bietet.

onObjectInfo(settings: Settings,objectInfo: ObjectInfo): Promise<void>;

Hier ein minimales Beispiel wie die API an sich funktioniert:

class ChangeFileName {
  async onObjectInfo(settings, objectInfo) {
    console.log(settings, objectInfo);
    objectInfo.filename = "Neuer Dateiname.pdf";
  }
}
window.ed.registerInterceptor(new ChangeFileName());

Vermutlich müsste man in diesem Fall per Metadaten per DMS-API
abrufen und passend zusammenbauen. Leider bietet enaio aktuell zentrale Stelle in denen man den Aufbau des Titels/Dateinamens für den jeweiligen Objekttypen definieren kann.

Die ObjectInfo hat folgende Eigenschaften:

export interface ObjectInfo {
    id: string;
    typeId: string;
    version: string;
    type: ObjectTypes;
    fileCount: number;
    title: string;
    filename: string;
    extension: string;
    mimetype: string;
    isPdf: boolean;
    url: string;
    archived: boolean;
    link: boolean;
    lockstatus: LockStatus;
    lockUsername: string;
    permissions: ObjectPermissions;
    typeless: boolean;
    // @deprecated Only available for Interceptors
    mode?: Mode;
    isPdfa?: boolean;
    pdfaCompliance?: string;
    signaturePermissions?: number;
    signatureAnnotationsAllowed?: boolean;
    signatureFormFillingAllowed?: boolean;
    signatureSigningAllowed?: boolean;
    signatureEditingAllowed?: boolean;
}

Wichtig ist, dass Änderungen an Eigenschaften wie Permissions zwar das Verhalten des Editors beeinflussen, aber am Ende trotzdem die enaio Rechte greifen. Daher können Änderungen an diesem Objekt zu undefinierten Fehlern auf der Client-Seite führen. Daher bitte mit Vorsicht und genug Tests die Anpassungen durchführen.

Liebe Grüsse
Uli

1 Like

Danke sehr. Das sieht einfach aus.

Habe das direkt mal ausprobiert, aber der objectInfo.title scheint vom Variantenbaum unabhängig zu sein. Denn dieser bleibt von der Änderung unberührt:

@uw die Dateinamen im Variantenbaum sehen so aus, als ob die Werte aller Felder hintereinandergehängt als Variantennamen verwendet werden. Ist das eine Client-Einstellung, welche Felder dafür verwendet werden oder können wir irgendwo auf ED-Seite konfigurieren, welche Werte ausgelesen werden sollen?