Dokumentvorlagen (CM/Doc)
Einführung in Dokumentvorlagen in ConSol CM
CM/Doc ist ein ConSol CM-Add-on für die Verwendung von Dokumentvorlagen. Dokumentvorlagen ermöglichen die Erstellung von Dokumenten direkt im Prozess, beispielsweise für Rechnungen, Verträge oder Bestellungen. Diese Dokumente werden an Vorgänge angehängt und können per E-Mail an Kontakte versendet werden.
Dokumentvorlagen tragen dazu bei, dass Dokumente bezüglich der Wortwahl und des Layouts einheitlich sind, und sie steigern die Produktivität der Benutzer, da diese nicht so viel Text schreiben müssen.
Konzepte, Begriffe und Definitionen
Konzept |
Andere Begriffe |
Definition |
---|---|---|
Dokumentvorlage |
|
Microsoft Office- oder OpenOffice-Datei, die als Vorlage für CM/Doc verwendet wird. |
Merge-Feld |
Mail-Merge-Feld |
In ein Microsoft Office- oder OpenOffice-Dokument eingefügte Variable |
Zweck und Verwendung
Dokumentvorlagen erleichtern die Arbeit der Web Client-Benutzer, indem sie Entwürfe für Dokumente bereitstellen. Die Dokumente können Variablen enthalten, die mit Daten aus dem Vorgang, aus dem das Dokument erstellt wird, gefüllt werden. Mit Variablen können Vorgangsdaten, die Daten des Kontakts oder Bearbeiters des Vorgangs oder die Daten des aktuellen Benutzers eingefügt werden.
Dokumentvorlagen werden auf der Seite Dokumentvorlagen des Web Clients gespeichert. Dieser Abschnitt ist nur verfügbar, wenn CM/Doc für das System aktiviert ist. CM/Doc unterstützt Microsoft Word- und OpenOffice-Dokumente.
Der Benutzer kann im Tab Dokument des Vorgangsprotokolls eine Dokumentvorlage auswählen. Das Dokument wird automatisch in Microsoft Word oder OpenOffice geöffnet und die Variablen werden durch die entsprechenden Daten aus dem Vorgang ersetzt. Der Benutzer kann das Dokument nach Wunsch editieren. Wenn er das Dokument speichert, wird es automatisch an den Vorgang angehängt und kann beispielsweise als Attachment an eine E-Mail angefügt werden.
Bei Bedarf können Dokumente in PDF-Dateien konvertiert werden, um sicherzustellen, dass keine weiteren Änderungen gemacht werden können, siehe Verwenden von Dokumentvorlagen in Skripten.
Verfügbare Einstellungen für Dokumentvorlagen
Allgemeine Einstellungen
Für Dokumentvorlagen sind folgende Einstellungen verfügbar:
-
Name
Pflichtangabe. Der Name der Vorlage. -
Gruppe
Pflichtangabe. Die Gruppe, zu der die Vorlage gehört. Diese Einstellung ist nützlich, um die Vorlagen zu ordnen und leichter finden zu können. Sie gilt sowohl in der Vorlagenverwaltung als auch im Auswahlfeld für die Vorlagen im Vorgangsprotokoll. -
Sprache
Pflichtangabe. Die Sprache der Vorlage. -
Prozesse
Pflichtangabe. Die Queues, in denen die Vorlage verfügbar sein soll. -
Datenobjekt
Optional. Das Kontaktobjekt, d. h. die Personen- oder Firmendefinition, das die Verfügbarkeit der Vorlage bestimmt, siehe Auswahl des Datenobjekts. -
Dokumentvorlage
Pflichtangabe. Laden Sie die Datei, die als Vorlage dienen soll, aus dem Dateisystem hoch. Formate: .doc, .docx oder odt.Für vorhandene Vorlagen heißt das Upload-Feld Dokumentvorlage aktualisieren und die aktuelle Vorlage kann über den Link im Feld Dokumentvorlage herunterladen heruntergeladen werden.
Auswahl des Datenobjekts
Das Datenobjekt bestimmt die Verfügbarkeit der Dokumentvorlage. Dokumentvorlagen sind nur in Vorgängen verfügbar, deren Hauptkontakt zu einer Kundengruppe gehört, die das Datenmodell dieses Datenobjekts verwendet. Dementsprechend können Sie die gleiche Vorlage für zwei Kundengruppen, die auf dem gleichen Datenmodell basieren, verwenden, aber Sie müssen eigenen Vorlagen erstellen, wenn die beiden Kundengruppen auf unterschiedlichen Datenmodellen basieren.
Das Datenobjekt muss mit der für die Dokumentvorlage ausgewählten Queue kompatibel sein, d. h. das Datenobjekt muss in einer der Kundengruppen verwendet werden, die der Queue zugewiesen sind.
Wählen Sie nur dann ein Datenobjekt auf der Firmenstufe, wenn die Option Firmen können Hauptkontakte von Vorgängen sein für das Kontaktdatenmodell ausgewählt ist. Siehe Kontaktmodelle für Details über die Datenmodelle.
Die verfügbaren Kontaktobjekte werden in der folgenden Syntax angezeigt:
- Name des Datenobjekts (Name des Datenmodells)
Es werden nur Datenobjekte angezeigt, die mindestens einer Kundengruppe zugewiesen sind. Zusätzlich braucht der aktuelle Benutzer mindestens Ansichtsberechtigungen auf mindestens eine Kundengruppe, die das Datenmodell verwendet.
Wenn Sie das Feld Datenobjekt leer lassen, ist die Dokumentvorlage für alle Kundengruppen verfügbar, aber es kann zu Laufzeitfehlern kommen, wenn benötigte Felder beim Laden der Vorlage nicht gefunden werden. In diesem Fall zeigt der Web Client eine Meldung an, dass Feldinhalt fehlt und die betroffenen Felder sind leer.
Verfügbarkeit von Dokumentvorlagen in Vorgängen
Die Verfügbarkeit einer Dokumentvorlage hängt von zwei Aspekten ab:
- Queue des Vorgangs
Die Vorlage ist nur für Vorgänge in den ausgewählten Queues verfügbar. - Hauptkontakt des Vorgangs
Die Vorlage ist nur in Vorgängen verfügbar, deren Hauptkontakt auf dem ausgewählten Datenobjekt basiert, siehe Auswahl des Datenobjekts.
Beide Bedingungen müssen erfüllt sein, damit die Dokumentvorlage verfügbar ist. Wenn CM/Doc aktiviert ist, für den Vorgang aber keine Dokumentvorlagen verfügbar sind, ist das Feld zur Vorlagenauswahl im Tab Dokument leer.
Grundlegende Aufgaben
Aktivieren und Konfigurieren von CM/Doc
Sie müssen die folgenden Schritte durchführen, um CM/Doc auf dem ConSol CM-Server zu aktivieren und zu konfigurieren:
-
Setzen Sie die System-Property cmweb-server-adapter, cmoffice.enabled auf true.
-
Legen Sie die Speicherstrategie in der System-Property cmweb-server-adapter, cmoffice.strict.versioning.enabled fest:
- true (Standardwert)
Bei jedem Speichervorgang in Microsoft Word oder OpenOffice wird ein neues Dokument an den Vorgang angehängt. Diese Option erzeugt ein Protokoll aller Änderungen an dem Dokument, kann aber zu einer großen Anzahl an Attachments führen, was die Vorgangsgröße deutlich erhöhen kann. - false
Beim ersten Speichervorgang in Microsoft Word oder OpenOffice wird ein neues Dokument an den Vorgang angehängt. Bei weiteren Speichervorgängen wird dieses Attachment überschrieben, sofern das Dokument in Microsoft Word oder OpenOffice nicht geschlossen wird. Diese Option begrenzt die Anzahl der Attachments und somit die Vorgangsgröße, da es nicht relevant ist, wie häufig die Benutzer in Microsoft Word oder OpenOffice auf Speichern klicken.
- true (Standardwert)
Verwenden von CM/Doc auf Client-Computern
Gehen Sie folgendermaßen vor, um CM/Doc auf einem Client-Computer zu installieren:
-
Stellen Sie sicher, dass der Computer folgende Anforderungen erfüllt:
- Microsoft Windows-Betriebssystem
- Lokal installierte CM/Doc-Applikation
- Lokal installiertes Microsoft Word / OpenOffice
Detaillierte Informationen über die unterstützten Microsoft Word- und OpenOffice-Versionen finden Sie in den aktuellen Systemanforderungen.
-
Stellen Sie sicher, dass CM/Doc im Benutzerprofil aktiviert ist (Abschnitt Allgemeine Einstellungen, Option Dokumenterstellung über CM/Doc). Standardmäßig ist CM/Doc aktiviert.
-
Laden Sie die CM/Doc-Applikation im Abschnitt Downloads des Benutzerprofils herunter.
Verwenden von CM/Doc mit OpenOffice
Wenn CM/Doc mit OpenOffice verwendet wird, müssen die Benutzer den Pfad zur OpenOffice-Installation in der CM/Doc-Applikation festlegen. Sie müssen dazu folgende Schritte ausführen:
- Klicken Sie in der Taskleiste auf das Icon der CM/Doc-Applikation.
- Gehen Sie zu Preferences -> Open Office.
- Wählen Sie im Dateibrowser die Programmdatei von OpenOffice aus.
Verwenden von CM/Doc mit Microsoft Edge und Microsoft Internet Explorer
Wenn Sie CM/Doc mit Microsoft Internet Explorer oder Microsoft Edge verwenden, sind einige zusätzliche Installationsschritte erforderlich. Für beide Browsers:
- Gehen Sie in Microsoft Internet Explorer zu Internetoptionen -> Sicherheit.
- Wählen Sie Lokales Intranet. Klicken Sie auf Sites. Klicken Sie auf Erweitert.
- Geben Sie die URL des ConSol CM-Servers ein und fügen Sie sie zu den Websites, die zur Zone lokales Intranet gehören, hinzu.
Wenn Sie Microsoft Edge verwenden, führen Sie als Administrator folgenden Befehl aus:
CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
Verwenden von CM/Doc mit HTTPS
Wenn HTTPS im Einsatz ist, müssen die Benutzer in ihren Browsern der URL vertrauen, die für CM/Doc konfiguriert ist (siehe cmweb-server-adapter, cmoffice.websocket.port). Die Aufforderung, CM/Doc zu vertrauen, wird automatisch im Standard-Browser angezeigt. Wenn die Bearbeiter den Web Client in einem anderen Browser verwenden, müssen sie das Zertifikat in diesem Browser manuell zu den vertrauenswürdigen Zertifikaten hinzufügen. Die entsprechende URL kann aus dem Fenster kopiert werden, das geöffnet wird, wenn Sie im Kontextmenü der CM/Doc-Applikation in der Taskleiste auf Einstellungen -> Webbrowser klicken.
Für Microsoft Internet Explorer muss das von CM/Doc erstellte Zertifikat (Datei public.crt in C:\Users\<Ihr Benutzername>\AppData\Local\cmdoc\security) zusätzlich manuell in den Zertifikatsspeicher Vertrauenswürdige Stammzertifizierungsstellen importiert werden. Gehen Sie zu Internetoptionen -> Inhalte -> Zertifikate -> Vertrauenswürdige Stammzertifizierungsstellen, um die Datei zu importieren.
Verwalten von Dokumentvorlagen
Die Dokumentvorlagen werden im Abschnitt Vorlagen-Archiv der Seite Dokumentvorlagen verwaltet. Sie benötigen die Berechtigung Vorlagen verwalten oder Administratorberechtigungen, um Textvorlagen zu verwalten, siehe Rollen.
Best Practice
Richten Sie eine spezielle Rolle für die Benutzer ein, die für die Text- und Dokumentvorlagen zuständig sind. Erstellen Sie dazu eine Rolle, die lediglich die Berechtigung Vorlagen verwalten enthält, und weisen Sie sie den Benutzern zu, die Vorlagen erstellen oder bearbeiten.
-
Neue Vorlage erstellen
Füllen Sie die Daten aus, die im Formular im oberen Bereich der Seite angezeigt werden, siehe Allgemeine Einstellungen. Details über das Schreiben des Dokuments, das Sie hochladen müssen, finden Sie in Erstellen des Dokuments. Klicken Sie auf OK, um die Vorlage zu speichern. -
Vorlage bearbeiten
Klicken Sie im Abschnitt Vorlagen-Archiv auf den Namen der Vorlage. Der obere Abschnitt der Seite wird mit den Einstellungen der ausgewählten Vorlage gefüllt. Sie können die Einstellungen ändern (siehe Allgemeine Einstellungen) oder ein neues Dokument hochladen, auf dem die Vorlage basieren soll (siehe Erstellen des Dokuments). Klicken Sie auf OK, um die Vorlage zu speichern. -
Dokument einer Vorlage herunterladen
Sie können das Dokument, auf dem eine Vorlage basiert, herunterladen, indem Sie auf den Link in der Spalte Dokumentvorlage der entsprechenden Vorlage klicken. Alternativ können Sie die Vorlage auswählen, und im oberen Bereich der Seite auf den Link im Feld Dokumentvorlage herunterladen klicken. Dies kann hilfreich sein, wenn Sie eine ähnliche Vorlage erstellen möchten, beispielsweise für ein anderes Kontaktdatenmodell. -
Vorlage löschen
Klicken Sie in der Spalte Löschen der entsprechenden Vorlage auf das X-Symbol, um diese Vorlage zu löschen.
Erstellen des Dokuments
Das Dokument, das Sie als Dokumentvorlage hochladen müssen, muss in Microsoft Word oder OpenOffice in einem der folgenden Formate erstellt werden:
-
Microsoft Word: doc, docx
-
OpenOffice: odt
Nutzen Sie nicht das Vorlagenformat des Textverarbeitungsprogramms (Dateien mit den Endungen .dot oder .ott).
Der erste Schritt ist die Erstellung eines Dokuments mit dem erforderlichen Inhalt in Microsoft Office oder OpenOffice. Sie können dem Dokument dann Variablen hinzufügen, die mit Vorgangs-, Kontakt- oder Benutzerdaten des aktuellen Vorgangs gefüllt werden. Dies erfolgt unter der Verwendung der Merge-Feld-Funktion der jeweiligen Applikation.
Schritte in ConSol CM:
-
Wählen Sie einen Vorgang mit den erforderlichen Feldern im Abschnitt Dokument Mailmerge-Felder. Die verfügbaren Felder werden in einer Tabelle mit folgenden Spalten angezeigt:
- Schlüssel:
Der Name des Feldes, der beim Hinzufügen eines Merge-Feldes zum Dokument verwendet wird. - Gruppe:
Der Name der Vorgangs- oder Kontaktfeldgruppe, zu der das Feld gehört. Ist für Benutzerdaten und grundlegende Vorgangsdaten leer. - Feld:
Der Name des Vorgangs- oder Kontaktfeldes. Ist für Benutzerdaten und grundlegende Vorgangsdaten leer. - Wert:
Der Wert des Feldes im ausgewählten Vorgang.
- Schlüssel:
-
Kopieren Sie den Namen der Variable aus der Spalte Schlüssel. Der Schlüssel gibt die Art des Feldes an:
- Schlüssel beginnt mit engineer:
Felder des aktuell angemeldeten Benutzers, d. h. des Benutzers, der die Dokumentvorlage verwendet. - Schlüssel beginnt mit ticket_engineer:
Felder des Bearbeiters, d. h. des Benutzers, dem der Vorgang zugewiesen ist. - Schlüssel beginnt mit ticket:
Vorgangsfelder und grundlegende Vorgangsdaten, z. B. das Vorgangsthema. - Schlüssel beginnt mit ticket_queue_fields_contacts_member oder ticket_queue_fields_contacts_member_customer:
Personenfelder des Hauptkontakts des Vorgangs (jedes Feld kann auf beide Arten referenziert werden) - Schlüssel beginnt mit ticket_queue_fields_contacts_member_companyRef:
Firmenfelder des Hauptkontakts des Vorgangs
- Schlüssel beginnt mit engineer:
Schritte in Microsoft Word:
- Wählen Sie den Menüeintrag Einfügen -> Schnellbausteine -> Feld.
- Wählen Sie MergeField.
- Kopieren Sie den Schlüssel des gewünschten MergeField aus dem Web Client in das Feld Feldname unter Feldeigenschaften (siehe folgende Abbildung).
- Klicken Sie auf den Button OK, um das Feld an der aktuellen Position des Cursors in das Dokument einzufügen.
Abbildung 13: Microsoft Word - MergeField in Dokument einfügen
Schritte in OpenOffice:
- Wählen Sie den Menüeintrag Einfügen -> Feldbefehl -> Andere.
- Wählen Sie im Dialogfeld Feldbefehle den Tab Variablen.
- Wählen Sie als Feldtyp Benutzerfeld und als Format Text.
- Geben Sie den Feldnamen (aus der Spalte Schlüssel im Abschnitt Dokument MailMerge-Felder) in das Feld Name unter der Liste Feldtyp ein.
- Geben Sie einen hilfreichen Wert ein, mit dem Sie das Feld im Dokument erkennen.
- Klicken Sie rechts neben dem Feld Wert auf das grüne Häkchen, damit das Feld in der Mitte unter Auswahl angezeigt wird, und klicken Sie dort auf das Feld.
- Klicken Sie auf den Button Einfügen, um das Feld an der aktuellen Cursor-Position in das Dokument einzufügen.
Abbildung 14: Erstellen einer Dokumentvorlage mit OpenOffice
Erweiterte Aufgaben
Verwenden von Dokumentvorlagen in Skripten
Sie können Dokumentvorlagen in automatischen Aktionen verwenden, um ein Dokument, das auf einer bestimmten Vorlage basiert, an einen Vorgang, Kontakt oder eine Ressource anzuhängen. Es ist ebenfalls möglich, ein PDF-Dokument aus einer Vorlage zu erstellen oder ein ganz neues Dokument zu erzeugen.
Dazu werden Methoden der Klasse ContentFileTemplateService verwendet:
-
generateWordDocumentByTemplate zum Erzeugen eines DOCX-Dokuments aus einer CM/Doc-Vorlage
-
generateWordDocumentFromXHTML zum Erzeugen eines DOCX-Dokuments aus einer XHTML-Eingabe
-
generatePDFDocumentFromXHTML zum Erzeugen eines PDF-Dokuments aus einer XHTML-Eingabe
-
generatePDFDocumentFromWord zum Erzeugen eines PDF-Dokuments aus einem DOCX-Dokument
-
generatePDFDocumentViaOpenOffice zum Erzeugen eines PDF-Dokuments aus einem DOCX-, PPTX- oder XSLX-Dokument mit OpenOffice oder LibreOffice
Die LibreOffice-Anwendung muss auf dem ConSol CM Server installiert sein. Wenn LibreOffice nicht im Standardverzeichnis installiert ist (z. B. C:\Program Files\ unter Windows), müssen Sie den Installationspfad zu den Java-Einstellungen des Application Servers hinzufügen:
-DofficeHome=C:\LibreOffice
Wenn Sie ein aus einer Dokumentvorlage erzeugtes DOXC-Dokument an einen Vorgang anhängen, werden die Merge-Felder mit den Daten aus dem entsprechenden Vorgang und Vorgangskontakt gefüllt.
Das folgende Beispiel zeigt ein Workflow-Skript, das vier Dokumente an den aktuellen Vorgang anhängt. Die Dateierweiterung wird automatisch hinzugefügt, sodass Sie nur den Dateinamen angeben müssen. Wenn Sie ein Dokument aus einer Vorlage erstellen, wird der Name der Vorlage als Dateiname verwendet.
Ticket ticket = workflowApi.ticket;
String html = "<html><header></header><body><h1>H1Text</h1><p>Text</p></body></html>";
ContentFile docxContentFile;
ContentFile pdfContentFile;
// generating docx from office template (template with testDocx name must be prepared before)
String templateName = "testDocxFromTemplate";
docxContentFile = contentFileTemplateService.generateWordDocumentByTemplate(templateName, ticket);
addContentFileAsAttachmentEntry(ticket, docxContentFile);
// generating pdf from docx
pdfContentFile = contentFileTemplateService.generatePDFDocumentFromWord(docxContentFile);
addContentFileAsAttachmentEntry(ticket, pdfContentFile);
// generating docx from XHTML
String fileName = "testDocxFromXhtml";
docxContentFile = contentFileTemplateService.generateWordDocumentFromXHTML(fileName, html);
addContentFileAsAttachmentEntry(ticket, docxContentFile);
// generating pdf from XHTML
fileName = "testPdfFromXhtml";
pdfContentFile = contentFileTemplateService.generatePDFDocumentFromXHTML(fileName, html);
addContentFileAsAttachmentEntry(ticket, pdfContentFile);
def addContentFileAsAttachmentEntry(Ticket pTicket, ContentFile pContentFile) {
AttachmentEntry attachmentEntry = new AttachmentEntry();
attachmentEntry.setFile(pContentFile);
attachmentEntry.setDescription(pContentFile.getName());
attachmentEntry.setMimeType(pContentFile.getMimeType());
ticketContentService.createContentEntry(pTicket, attachmentEntry);
}