Sie sehen sich Hilfeinhalte der folgenden Version an:
- 6.4
- 6.3
- 6.2
- Ältere Versionen
Durch Verwenden der Benutzeroberfläche „Korrespondenz erstellen“ von Correspondence Management können Sie Entwürfe von Briefinstanzen unter Fortschritt speichern und es gibt gesendete Briefinstanzen.
Correspondence Management bietet APIs, mit denen Sie die Listenschnittstelle erstellen können, um mit gesendeten Briefinstanzen oder Entwürfen zu arbeiten. Die APIs listen und öffnen gesendete und Entwurfsbriefinstanzen eines Agenten, damit der Agent weiterhin am Entwurf oder an der gesendeten Briefinstanz arbeiten kann.
Correspondence Management stellt APIs bereit, um Briefinstanzen mithilfe von LetterInstanceService abzurufen.
Methode |
Beschreibung |
getAllLetterInstances |
Ruft Briefinstanzen anhand des Eingabeabfrageparameters ab. Um alle Briefinstanzen aufzurufen, geben Sie die Abfrageparameter als null weiter. |
getLetterInstance |
Ruft die angegebene Briefinstanz basierend auf der Briefinstanz-ID auf. |
letterInstanceExists |
Prüft anhand des angegebenen Namens, ob eine Briefinstanz vorhanden ist. |
Hinweis:
LetterInstanceService ist ein OSGi-Dienst und seine Instanz kann abgerufen werden, indem man @Reference in der Java
-Klasse oder sling.getService(LetterInstanceServiceKlasse) in JSP verwendet.
Die folgende API findet die Briefinstanzen basierend auf dem Abfrageobjekt (Gesendet und Entwurf). Wenn das Abfrageobjekt null ist, werden alle Briefinstanzen zurückgegeben. Diese API gibt eine Liste von LetterInstanceVO-Objekten zurück, die zum Extrahieren von zusätzlichen Informationen von Briefinstanz verwendet werden können
Parameter | Beschreibung |
Abfrage | Der Abfrageparameter wird verwendet, um die Briefinstanz zu finden/filtern. Hier unterstützt „Abfrage“ nur Attribute/Eigenschaften des Objekts auf höchster Ebene. „Abfrage“ besteht aus Anweisungen und dem „attributeName“ im Anweisungsobjekt und sollte mit dem Namen der Eigenschaft im Briefinstanzobjekt verwendet werden. |
Der folgende Code gibt die Liste der gesendeten Briefinstanzen zurück. Um nur Entwürfe zu erhalten, ändern Sie das LetterInstanceType.COMPLETE.name() zu LetterInstanceType.DRAFT.name().
@Reference LetterInstanceService letterInstanceService; Query query = new Query(); List<LetterInstanceVO> submittedLetterInstances = new ArrayList<LetterInstanceVO>(); Statement statementForInstanceType = new Statement(); statementForInstanceType.setAttributeName("letterInstanceType"); statementForInstanceType.setOperator(Operator.EQUALS); statementForInstanceType.setAttributeValue(LetterInstanceType.COMPLETE.name()); query.addStatement(statementForInstanceType); submittedLetterInstances = letterInstanceService.getAllLetterInstances(query);
Beispiel 2: Rufen Sie alle Briefinstanzen, die von einem Benutzer gesendet wurden auf; der Briefinstanztyp ist ENTWURF
Der folgende Code hat mehrfache Aussagen in der gleichen Abfrage zum Filtern der Ergebnisse, basierend auf unterschiedlichen Kriterien wie von einem Benutzer gesendete Briefinstanz (Attribut gesendet von) und Typ von letterInstanceType ist ENTWURF.
@Reference LetterInstanceService letterInstanceService; String submittedBy = "tglodman"; Query query = new Query(); List<LetterInstanceVO> submittedLetterInstances = new ArrayList<LetterInstanceVO>(); Statement statementForInstanceType = new Statement(); statementForInstanceType.setAttributeName("letterInstanceType"); statementForInstanceType.setOperator(Operator.EQUALS); statementForInstanceType.setAttributeValue(LetterInstanceType.COMPLETE.name()); query.addStatement(statementForInstanceType); Statement statementForSubmittedBy = new Statement(); statementForSubmittedBy .setAttributeName("submittedby"); statementForSubmittedBy .setOperator(Operator.EQUALS); statementForSubmittedBy .setAttributeValue(submittedBy); query.addStatement(statementForSubmittedBy ); submittedLetterInstances = letterInstanceService.getAllLetterInstances(query);
Rufen Sie die Briefinstanz auf, die von der angegebenen Briefinstanz-ID identifiziert wird.Sie gibt null zurück, wenn die Instanz-ID nicht übereinstimmt.
Syntax: public LetterInstanceVO getLetterInstance(String letterInstanceId) gibt ICCException zurück;
@Reference LetterInstanceService letterInstanceService; String letterInstanceId = "/content/apps/cm/letterInstances/1001/sampleLetterInstance"; LetterInstanceVO letterInstance = letterInstanceService.getLetterInstance(letterInstanceId );
Prüfen Sie anhand des angegebenen Namens, ob eine Briefinstanz vorhanden ist
Syntax: public Boolean letterInstanceExists(String letterInstanceName) gibt ICCException zurück;
Parameter | Beschreibung |
letterInstanceName | Der Name der Briefinstanz, die Sie überprüfen möchten, ob sie vorhanden ist |
@Reference LetterInstanceService letterInstanceService; String letterInstanceName = "sampleLetterInstance"; Boolean result = letterInstanceService.letterInstanceExists(letterInstanceName );
Briefinstanz kann vom Typ „Gesendet“ oder „Entwurf“ sein Wenn die beiden Briefinstanztypen geöffnet werden, werden unterschiedliche Verhalten gezeigt:
- Bei der Briefinstanz „Gesendet“ wird ein PDF-Dokument geöffnet, das die Briefinstanz darstellt. Briefinstanz „Gesendet“, die auf dem Server vorhanden ist, enthält auch die dataXML und verarbeitete XDP, die verwendet werden können, um Anwendungsfälle wie das Erstellen einer PDF/A weiter anzupassen.
- Im Falle der Briefinstanz „Entwurf“ wird die Benutzeroberfläche „Korrespondenz erstellen“ in den genauen Status wie zuvor neu geladen, als sie als Entwurf erstellt wurde
CCR Benutzeroberfläche unterstützt den cmLetterInstanceId-Parameter, der zum Neuladen des Briefs verwendet werden kann.
http://[hostName]:[portNo]/[contextPath]//aem/forms/createcorrespondence.html?random=[randomNo]&cmLetterInstanceId=[letterInstanceId]
Hinweis:
Sie müssen beim Neuladen einer Korrespondenz weder cmLetterId noch cmLetterName/State/Version angeben, da die gesendeten Daten alle Details zur Korrespondenz enthalten. RandomNo wird verwendet, um Browsercache-Probleme zu vermeiden; Sie können Zeitstempel als zufällige Zahl verwenden.