Hallo Pascal.Neuhaus ,
die agorum Version ist 11.10.0.3-1885, und das Plugin hat die Version 2.1.5.
Über "Plug-in Liste aktualisieren (Internet)" wird allerdings kein weiteres Update angeboten.
Vielen Dank und beste Grüße aus dem Rheinland
Fabian
Hallo Pascal.Neuhaus ,
die agorum Version ist 11.10.0.3-1885, und das Plugin hat die Version 2.1.5.
Über "Plug-in Liste aktualisieren (Internet)" wird allerdings kein weiteres Update angeboten.
Vielen Dank und beste Grüße aus dem Rheinland
Fabian
Genau diese Aktion wird ausgeführt.
Vielen lieben Dank annkatrin.goepfert !
Hallo zusammen,
mal wieder bin ich auf ein neues Problem gestoßen. Bei der Anlage einer neuen Konfiguration erscheint der Fehler
Zitatthis package needs agorum core Pro
der vollständige Fehler anbei:
this package needs agorum core Pro (promise.js#97)
at promise.js:97 (anonymous)
at aguila.js:802 (anonymous)
Origin: org.mozilla.javascript.JavaScriptException: this package needs agorum core Pro (promise.js#97)
at org.mozilla.javascript.gen.promise_js_91._c_anonymous_8(promise.js:97)
at org.mozilla.javascript.gen.promise_js_91.call(promise.js)
at org.mozilla.javascript.ScriptRuntime.applyOrCall(ScriptRuntime.java:2697)
at org.mozilla.javascript.BaseFunction.execIdCall(BaseFunction.java:287)
at org.mozilla.javascript.IdFunctionObject.call(IdFunctionObject.java:101)
at org.mozilla.javascript.optimizer.OptRuntime.call2(OptRuntime.java:42)
at org.mozilla.javascript.gen.aguila_js_87._c_anonymous_93(aguila.js:802)
at org.mozilla.javascript.gen.aguila_js_87.call(aguila.js)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:399)
at agorum.roi.scripting.EngineFactory$1.doTopCall(EngineFactory.java:58)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3452)
at org.mozilla.javascript.gen.aguila_js_87.call(aguila.js)
at org.mozilla.javascript.ArrowFunction.call(ArrowFunction.java:43)
at org.mozilla.javascript.InterfaceAdapter.invokeImpl(InterfaceAdapter.java:137)
at org.mozilla.javascript.InterfaceAdapter$1.run(InterfaceAdapter.java:83)
at org.mozilla.javascript.Context.call(Context.java:526)
at org.mozilla.javascript.ContextFactory.call(ContextFactory.java:509)
at org.mozilla.javascript.InterfaceAdapter.invoke(InterfaceAdapter.java:86)
at org.mozilla.javascript.jdk13.VMBridge_jdk13$1.invoke(VMBridge_jdk13.java:132)
at com.sun.proxy.$Proxy609.run(Unknown Source)
at agorum.aguila.main.BaseContext.dispatchMessage(BaseContext.java:519)
at agorum.aguila.main.BaseContext.lambda$wake$11(BaseContext.java:685)
at agorum.roi.common.utils.Chain.lambda$sync$0(Chain.java:25)
at java.util.concurrent.CompletableFuture.uniWhenComplete(CompletableFuture.java:774)
at java.util.concurrent.CompletableFuture$UniWhenComplete.tryFire(CompletableFuture.java:750)
at java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:456)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:750)
Alles anzeigen
Wie kann ich den Fehler beheben und wie gewohnt neue Konfigurationsprojekte anlegen?
Danke für Eure Hilfe!
Fabian
Hallo volker.trotte ,
vielen Dank für Deine schnelle Info... Wieder ein Fall von "richtig Lesen würde helfen" ![]()
Hatte die JSON Bib nur der Verarbeitung von JSON-Daten zugeordnet...
Damit ist das Problem eindeutig gelöst! Danke!
Wie ist denn die Java-Implementation zu bewerkstelligen? Für den API Zugriff ist das hinfällig, allerdings habe ich noch eine Anpassungsidee, die den Zugriff auf die bash erfordert... Kannst Du mir hier noch einen kleinen Tipp geben?
Viele Grüße
Fabian
Hallo zusammen,
gibt es eine Möglichkeit eine externe API anzusprechen?
Gerne auch via JavaScript.
Zielsetzung ist es in einer Vikunja Instanz ein ToDo zu erstellen, wenn eine Datei in agorum angelegt/verarbeitet wurde.
Oder gibt es eine Möglichkeit aus agorum auf curl oder ähnliche Tools des Betriebssystems zuzugreifen?
Finde zu beidem leider keine Infos in der Doku, ich hoffe ihr könnt mir helfen....
Vielen Dank für die Unterstützung!
Fabian
Hallo zusammen,
mein Know-How im Bezug auf agorum core open wächst stündlich und langsam werden die Projekte und Integrationen komplexer.
Daher kam bei mir die Frage auf, ob und wie eine Versionsverfolgung der Entwicklungen mit git möglich ist.
Viele Grüße aus dem regnerischen Rheinland
Hallo volker.trotte,
noch einmal vielen Dank für deine schnelle, perfekte Unterstützung!
Du hast natürlich recht, dass die Abfrage durch common/metadata ausreicht. Ich hatte mit, da ich mich gerade erst in die Materie einarbeite, einfach das fill-template Script kopiert, alles unbenötigte gelöscht und auf meine Bedürfnisse angepasst.
Ich denke ich werde mit deinen Tipps das ganze "von vorne" beginnen und sauber aufsetzen.
Dein Script ist natürlich sehr schlank. Meine Zielsetzung war es in diesem Fall tatsächlich die zusätzlichen Infos, also z.B. den Betreff in diesem Fall, nicht in den Metadaten zu speichern, sondern nur dem fill-template zu übergeben und nach dem Speichern des Dokumentes wieder zu verwerfen, da sie dann nicht mehr benötigt wird.
Aus diesem Grund verzichte ich explizit auf metadata(mdFolder).save(objects.find(neueDatei.ID));.
Ich bin gerade schwer begeistert, dass mein Widget funktioniert und macht, was ich mir gedacht habe... So macht das ganze viel Freude ![]()
PS: Danke auch für deine Hinweise, selbst bei solchen "Kleinigkeiten", die ich mir hier baue merke ich, wie schnell Chaos in die Variablennamen kommt...
Beste Grüße aus dem regnerischen Rheinland
Ich möchte per Rechtsklick in einem Ordner mit Metadaten ein Dokument erzeugen und die Metadaten des Ordners per fill-template dort einfügen.
Durch den Start als Server Aktion wird das metadataObject beim Aufruf dem widget mitgegeben...
Hier war aber auch der Fehler. Ich habe zu debugging Zwecken die IDs "fixiert" um per "Run" das Widget starten zu können. Einziger Fehler dabei: in diesem Fall werden die metadaten nicht übergeben und es ist undefined...
Du hast mich (mal wieder) ein riesen Stück weitergebracht!
Auch wenn es schwer ist einen Anfang zu finden: agorum core ist ein mächtiges Tool...
Das stammt aus den properties des AguilaWidget... So zumindest meine wilde Interpretation ![]()
Das Widget wird über eine ASA Server-Aktion gestartet und funktioniert ohne Erweiterung der Metadaten auch.
/* global sc, sca, folder, objects */
let aguila = require('common/aguila');
let objects = require('common/objects');
let objectsSca = require('common/objects')(sca);
let lcs = require('/agorum/roi/customers/fill-template/js/tools/load-customer-settings');
let cnt = require('/agorum/roi/customers/fill-template/js/worker/tools/create-new-template');
let su = require('/agorum/roi/customers/fill-template/js/tools/script-utils');
let fillData = require(lcs.getFillDataScriptAll());
let metadata = require('filingassistant/metadata');
let zielPfadId;
// create widget
let widget = aguila.create({
width: 500,
height: 300,
type: 'agorum.single',
properties: ['targetId', 'metadataObject'],
relayProperties: ['targetId', 'metadataObject'],
items: [
{
type: 'agorum.vbox',
border: true,
items: [
{
type: 'agorum.spacer',
flexible: true,
},
{
type: 'agorum.composite.form.basic',
name: 'form',
labelWidth: 130,
/*
// Das hier anklemmen, dann kommt kein validChanged mehr durch
validation: [
{
required: true, // Global eingestellt, dass das Feld nuicht leer sein darf
},
],
*/
showError: 'always',
elements: [
{
type: 'agorum.textArea',
name: 'testfeld',
},
{
type: 'agorum.composite.form.element.text',
name: 'name',
label: 'Dokumentenname',
},
{
type: 'agorum.composite.form.element.objectPicker',
name: 'empfaenger',
label: 'Empfänger',
pickerType: 'search',
},
{
type: 'agorum.numberInput',
label: 'briefBetreff',
name: 'Betreff',
},
{
type: 'agorum.hbox',
items: [
{
type: 'agorum.spacer',
flexible: true,
},
{
type: 'agorum.composite.form.element.button',
name: 'btCreate',
text: 'Speichern',
disabled: true,
},
{
type: 'agorum.spacer',
flexible: true,
},
],
},
],
},
{
type: 'agorum.spacer',
flexible: true,
},
],
},
],
});
let form = widget.down('form');
let btCreate = form.down('btCreate');
form
.on('validChanged', valid => {
btCreate.disabled = true;
if (valid) {
btCreate.disabled = false;
}
})
.on('action', button => {
if (button.name === 'btCreate') {
//------TESTDATEN ANFANG
let empfaengeriD= '1222212'; // ID der Empfängeradresse
let templateId = '1226265'; // ID der Vorlage
zielPfadId = '1225470'; // ID des Zielordners
//------ TESTDATEN ENDE
let filename = form.down('name').value;
let object;
let templateObject;
object = objects.find(empfaengeriD);
templateObject = objects.find(templateId);
metadataObject.briefBetreff= "Betreffzeile";
let data = {
object: object,
filename: filename,
template: templateObject,
created: objectsSca.find(zielPfadId),
ext: templateObject.nameExtension.toLowerCase(),
metadataObject: metadataObject,
};
fillData = require(lcs.getFillDataScript()).fill(data);
let dataS = metadata().load(templateObject, 'filltemplate_placeholderScript').data();
let script = 'filltemplate_placeholderScript' in dataS ? dataS.filltemplate_placeholderScript : null;
fillData = su.fill(script, fillData);
let createFile = cnt.create(sc, data.created, data.object, data.template, fillData);
}
});
let metadataObject;
// Zusätzliche Metadaten
widget.on('metadataObjectChanged', mdo => {
metadataObject = mdo;
});
widget.on('targetIdChanged', metadataObject => {
form.down('testfeld').value = metadataObject;
});
widget.on('targetIdChanged', targetId => {
zielPfadId = targetId;
});
widget;
Alles anzeigen
Es handelt sich um ein aguila Widget, dem ursprünglichen fill-template nachgebaut.
Mein Ziel ist es, dass die Metadaten vor der Übergabe an die fill Funktion erweitert werden.
Die Metadaten sollten - so mein Verständnis - aus der targetId stammen. Das übergebene object enthält die Adressdaten.
Hier der Code in Anlehnung an die /agorum/roi/customers/fill-template/js/aguila/test-template-details
form.on('action', button => {
metadataObject.briefBetreff= "Betreffzeile";
let data = {
object: object,
filename: filename,
template: templateObject,
created: objectsSca.find(zielPfadId),
ext: templateObject.nameExtension.toLowerCase(),
metadataObject: metadataObject,
};
fillData = require(lcs.getFillDataScript()).fill(data);
let dataS = metadata().load(templateObject, 'filltemplate_placeholderScript').data();
let script = 'filltemplate_placeholderScript' in dataS ? dataS.filltemplate_placeholderScript : null;
fillData = su.fill(script, fillData);
let createFile = cnt.create(sc, data.created, data.object, data.template, fillData);
}
Alles anzeigen
Ohne die Erweiterung der Metadaten werden zumindest die Adressdaten ausgefüllt...
Danke für die ausführliche Erklärung.
In Sachen OOP hangel ich mich ganz gut durch, das klappt schon ganz passabel, aber die Besonderheit von JS, dass keine Deklarationen notwendig sind, hat mir aber gefehlt - sehr praktisch! ![]()
Möglicherweise kannst Du mir noch einen Tipp in gleicher Sache geben:
Ich versuche gerade dem fill-template ein "metadatum" mitzugeben und scheitere.
Das Standard fill-template reicht an die untergeordneten Funktionen das metadataObject weiter. Jetzt hatte ich den naiven Gedanken dieses Objekt mit metadataObject.briefBetreff = "Betreffzeile" zu erweitern.
Hier bekomme ich aber einen Rüffel in Form von
zurück. Wie kann ich das metadataObject denn (temporär, also ohne Änderung der eigentlichen Metadaten auf dem Objekt) erweitern oder muss ich mir das fill-template um einen Übergabeparameter erweitern?
Vielen Dank und einen guten Start in die Woche!
Und das "Problem 1" hat sich ebenfalls erledigt. Ich habe verzweifelt nach der Definition der Variablen gesucht und nichts gefunden.
Der Zugriff auf die Variable erfolgt ohne Definition in der Zeile data._capitalPath = "Ordnername";
Somit kann das Thema geschlossen werden, vielen Dank nochmal an Dich, volker.trotte!
Ohne screenshot etwas schwer - aber ich vermute einfach mal, dass es um die untere Tabelle direkt auf der "Akte" im Smart-Assistant-Konfigurator Punkt "Anlage" geht (die Ebene mit dem Plus-Symbol davor).
Diese Metadaten werden automatisch aus der tieferliegenden Struktur übernommen und von dort nur solche Metadaten, die keinen festen Werden haben - also eingegebene werden müssen.
Angenommen deine Struktur hat einen Hauptordner "Akte".
Auf diesem legst du fest, das er Metadatum "a" und Metadatum "b" hat (vorher über metadata.yml erstellen).Bei Metadatum a schreibst du in der Spalte "Fester Wert" ein beliebiges Wort rein, in Metadatum "b" kommt nichts rein, das ist leer.
Dann erscheint Metadatum b auf der obersten Ebene in der unteren Tabelle und du kannst nur noch sagen, ob das optional ist oder nicht (dann ist es Pflicht)
Und somit ist das zweite Mysterium ebenfalls gelöst! Danke vielmals, auch für die passenden Erklärungen dazu!
Beste Grüße aus dem Rheinland!
Fabian
volker.trotte Die Erklärung ergibt Sinn, erklärt mir einiges und noch besser: sie funktionert! ![]()
Vielen Dank!
Hallo Annkatrin,
danke für Deine Antwort.
Ich hatte die vorhergehenden Tutorials durchgearbeitet. Auch die MetaDaten sind über die metadata.yml vordefiniert und eingespielt. Dennoch bekomme ich Sie nur in die obere Tabelle eingefügt. der "Stift" der unteren Tabelle lässt (browserunabhängig) keine Aktion zu. Nur das Feld "Optional" lässt sich hier editieren.
Leider ist auch trotz Deaktivierung meiner "Konfigurationen" der Explorer nicht wieder aufgetaucht. Gibt es eine Möglichkeit diesen wieder sichtbar zu machen bzw. das System so zu debuggen, dass ich die Ursache finden kann? Ein erneutes aufsetzen des Systems ist (leider kam dies schon mehrfach vor) nicht der richtige Weg ![]()
VG Fabian
Hallo zusammen,
nach längerer Abstinenz von der begonnenen agorum-Konfiguration stellen sich heute erneut die ersten, selbstgenerierten Probleme durch (vermutlich) Fehlbedienung ein...
Problem 1:
Ich habe den Versuch unternommen dem Tutorial mit der Nr. 8 zu folgen und eine neue ASA Config erstellt. Leider finde ich - auch in den Files aus dem Tutorial 8 - nirgendwo die Info, wo die Variablen _capitalPath etc. definiert werden.
Im "nachgebauten" Versuch von mir, wird ein Verzeichnis mit dem Namen ${_capitalPath} erzeugt, die Variable aber nicht durch das MetaDatum ersetzt.
Problem 2:
Hängt dies damit zusammen, dass ich auch nicht in der Lage bin in der Liste Metadaten Einträge zu erstellen, sondern nur in der oberen Liste Platzhalter (Metadatum)?
Die erwähnte Doku zum ASA finde ich leider auch nicht.
Und weil es so schön ist direkt noch eine weitere Frage hinterher - Problem 3:
Ich habe eine weitere ASA Config angelegt, hierin unter Datei => Metadaten ein Metadatum angelegt und die Einstellungen über "Exportieren" ins System gespielt. Die Folge war leider etwas unerwartet und überraschend: der Explorer ist verschwunden... Wie kann ich die Ursache herausfinden / die config debuggen und den Explorer wieder herstellen? Gibt es eine Möglichkeit eine ASA config zu löschen?
Mit vielen Fragezeichen und der Hoffnung auf Erleuchtung warte ich gebannt, ob Ihr mir helfen könnt ![]()
Fabian
Hi Annkatrin,
danke für die schnelle Antwort!
Über die freie Ablage ist es ohne Aufwand auffindbar... Meine Frage bezieht sich darauf, ob man auch in die geführte Ablage Einträge "einschleusen" kann ![]()
Hallo Annkatrin,
mein Anliegen ist vermutlich für Profis ohne weiteres nicht nachvollziehbar ![]()
Mein Ziel ist es Dokumente aus dem Zentraleingang mit Hilfe der Verschlagwortung in einen Bereich, der nicht im Archiv liegt verschieben.
Im Tutorial wurde beispielsweise ein Template für Kundenakten im "Root-Verzeichnis" und nicht im "Archiv" erstellt. Wie kann ich in der Verschlagwortung die Ablageposition "Mails" innerhalb der Kundenakte sichtbar machen?
Hoffentlich hat diese Erklärung mehr Klarheit geschaffen ![]()
Hallo,
nachdem ich schon grandiose Hilfestellung hier im Forum erhalten habe komme ich direkt mit der nächsten Frage um die Ecke ![]()
Wie kann ich Ordnersysteme, die ich extern durch eine eigene Konfiguration erstellt habe in der geführten Ablage sichtbar machen? Und wie verhält es sich mit Unterordnern (und bis zu welcher Ebene)?
Konkret: Was muss ich machen, wenn ich diesem Tutorial folge (großes Lob an dieser Stelle, tolle Videos und für Einsteiger sehr hilfreich! Ich hoffe hier auf weitere Folgen
) und den "Projects" Ordner der "agorum software GmbH" in der geführten Ablage auffindbar machen?
Vielen Dank und einen guten Start in die Woche!
Hallo,
die Anleitung hat bestens Funktioniert. Vielen Dank!