2017-03-02 1 views
0

Alfresco Community v5.2 (andere Versionen auch) enthält einige vorkonfigurierte Workflows, die auf der Seite verfügbaren /share/page/start-workflowWie überschreibt man einige der Ajax-basierten Picker-Logik?

ich in „Bewertungs interessiert bin und Genehmigen (eine oder mehrere Gutachter) - eine Rezension Aufgabe mehreren Weisen Rezensenten ".

Eigentlich, um genauer zu sein - in der Logik der Zuweisung.

Zum Beispiel möchte ich einige Anpassungen machen - Customization of the user task screen

Ich mag Mitglieder in der Tabelle angezeigt wird, nicht in der Liste. Dazu muss ich verstehen, wie sie in der Liste erscheinen.

In der Datei share-config-custom.xml kann ich den Pfad zu den Vorlagen finden.

Zum Beispiel für die bpm:workflowDueDate wird es sein:

... 
<field id="bpm:workflowDueDate" set="info" label-id="workflow.field.due"> 
    <control template="/org/alfresco/components/form/controls/info.ftl" /> 
</field> 
... 

Aber für bpm:assignees die Vorlage nicht angegeben ist:

... 
<field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" /> 
... 

Ich gehe davon aus, dass es einige Back-End-Bohnen, dass den Großteil der Logik ausführen.

Wie kann ich einige der ajax-basierten Picker-Logik überschreiben?

Ich wäre sehr dankbar für die Informationen. Dank an alle.

+1

Welche Ajax Logik möchten Sie ändern? oder Sie möchten die Personensuche überschreiben? –

+0

Ich denke, das ist, was ich brauche - [Class Alfresco.ObjectFinder] (http://sharextras.org/jsdoc/share/community-4.0.d/symbols/Alfresco.ObjectFinder.html) –

Antwort

2

Wenn in der Freigabeformularkonfiguration keine Formularsteuerung bereitgestellt wird, greift Alfresco Share abhängig vom Feldtyp auf einige Standardeinstellungen zurück.

bpm:assignee is an association an eine Person Knoten, so würde ich erwarten, dass es standardmäßig auf association.ftl zeigen!

Was ich vorschlagen, ist, dass die Datei in eine neue kopieren die src/main/amp/alfresco/site-webscripts/${project.groupId}/form/controls/custom-association.ftl

sagen lassen und dann in Ihre share-config-custom.xml Kopie über das Formular Config für die Aufgabe mit einem kleinen Update:

... 
<field id="bpm:assignee" label-id="workflow.field.reviewer" set="assignee" > 
    <control template="/${project.groupId}/form/controls/custom-association.ftl" /> 
</field> 
... 

und dann Sie können sicher mit custom-association.ftl fiedeln, weil es fast nie eine gute Idee ist, die Standardeinstellungen von alfresco zu überschreiben!


UPDATE: Der Wert dieser Steuerung ist eine Liste von nodeRefs zu den Knoten der ausgewählten Benutzer verweisen. Es ist das ObjectFinder-Java-Skriptobjekt, das Dinge hinter der Szene verwaltet, einen speziellen Endpunkt aufruft, um alle anzuzeigenden Daten abzurufen, und dann das DOM entsprechend manipuliert! Vielleicht möchten Sie sich object-finder.js und picker.inc.ftl ansehen

+0

Brilliant! Ich danke Ihnen sehr für Ihre Antwort!.. –

+0

Können Sie mir bitte sagen, wenn ich Personen auflisten möchte, indem ich die '# list' Direktive in' custom-association.ftl' verwende - was soll ** der Name des Modells ** sollte ich verwenden? Zum Beispiel - '

<#list what's_in_here? wie what's_in_here>
$ {what's_in_here?}
'' –

+0

association.ftl' enthält nur eine 'div' wo alle Personen platziert -?' '

Verwandte Themen