Archiv des Intrexx Live! Forums

Hier sehen Sie die Foreneinträge aus dem Intrexx Live! Forum. Bis November 2016 war es das Forum für alle Fragen rund um die Software Intrexx von United Planet.
Seit November 2016 gibt es ein neues moderiertes Forum, das Intrexx Community Forum. Nutzen Sie bitte unbedingt dieses für aktuelle Fragen, Antworten und Informationen.

Wichtig: Dieses Forum dient als Archiv. Die Einträge beziehen sich oft auf ältere Versionen von Intrexx und entsprechen nicht mehr den aktuellen technischen Gegebenheiten.
Daher sollten alle Inhalte ausschließlich von Experten genutzt werden. Bei unsachgemäßer Anwendung kann es zu zeitaufwändigen Problemen oder Datenverlust kommen.
Übersicht > Intrexx Compact: Compact Intrexx > ID

ID

Hallo Zusammen,

folgendes Problem: In unserem Support-Ticketing-System, sollen Zukünftig Support-Anfragen über das Formular (siehe Anlage 01_Intrexx) aufgenommen werden.
Betätigt man den Button "Anfrage abschicken" wird das Ticket erstellt und der Benutzer erhält automatisch eine Bestätigungsmail. Der E-Mail-Betreff wird mit Javascript (siehe unten)
in ein verstecktes Eingabefeld "Betreff" geschrieben, das damit verbundene Datenfeld "Betreff" wird in der E-Mail-Konfiguration als Betreff verwendet.

Soweit funktioniert das auch, im Betreff steht der Titel und der statische Text aus dem Script, die FRAGE ist nun:

Wie krieg ich die ID (PK) in den Betreff? Dies ist kein Wert der manuell vom User eingetragen, sondern eine automatische, fortlaufende Nummer. Vielleicht hat jemand eine Idee.


function setBetreff()
{
var b_id = getElement("GUID?");
var b_titel = getElement("GUID Eingabefeld Titel");
var strBetreff = "[ID " + Browser.getValue(b_id) + "] " + Browser.getValue(b_titel) + " ** IT-Supportanfrage **";
Browser.setValue(getElement("GUID verstecktes Eingabefeld Betreff"), strBetreff);
return true;
}


Danke, LG
29.10.2013 13:33 von mcb_2013
Hallo!

Eine JavaScriptlösung habe ich nicht parat.

Aber in der Hoffnung, dass Du bereits Intrexx 6 verwendest sende ich eine kleine Applikation mit einem Prozess als Anhang.

Im Prozess gibt es eine Groovy Aktion. Diese ließt die gewünschten Datenfelder wie ID und Titel aus und steckt alles in den sharedState.


def iId = g_record["447E6F37C7B4E679BF5E6B3985580AEC244AFBFD"].value /* datafield ID <integer> */
def strTitle = g_record["8C5E3A54AEE61916B6F00CE14A930F284655B5C7"].value /* datafield Title <string> */

g_sharedState.SupportMailSubject = "Anfrage No.${iId}: ${strTitle} ** IT-Supportanfrage **"


Anschließend kommt eine E-Mail Aktion, welche dann folgenden Betreff hat:


urn:sharedState:SupportMailSubject

29.10.2013 16:27 von Helferlein
Schönen guten Morgen,

wunderbar es funktioniert. Danke attention
30.10.2013 08:41 von mcb_2013
Hallo

nochmal danke für die Unterstützung, aber ich hätte diesbezüglich noch eine Frage. Ich würde die E-Mail-Aktion nun gern von einem Datenfeld abhängig machen.
Habe dies bereits versucht mit einer

Filter-Bedinung: Wenn "Status" = "offen" dann E-Mail-Aktion ausführen.

Aber irgendwie funktioniert das nicht. Hintergrund ist folgender, bei unserem IT-Support-Formular hat man die Möglichkeit Dateien anzuhängen, aber unglücklicherweise wird beim hochladen von Dateien der Datensatz (das ganze Ticket) bereits gespeichert bevor man überhaupt die Anfrage abschickt. D. h. die E-Mail-Aktion wird bereits beim hochladen eines Anhangs ausgeführt...

Vielleicht hat noch jemand eine Idee.

Danke
30.10.2013 14:43 von mcb_2013
Hallo,

freut mich, dass hier die Version 6 im Einsatz ist und mein Ansatz daher funktioniert. ;-)

Bzgl. der zweiten Frage könnte man z.B. auf der Eingabeseite eine Kontrollkästcheneingabekontrolle platzieren. Diese wird dann per JS mit Browser.setValue..... auf 1 bzw. true gesetzt, sobald man z.B. den Absenden Button geklickt hat. (Die Kontrolle selbst kann man ja in den versteckten Bereich tun) Und wenn ein Benutzer vor dem Absenden noch einen Anhang hinzufügen möchte, dann wird bei diesem Click eben nicht die JS Funktion zum Setzen des Kontrollkästchen ausgeführt.

Und im Prozess baut man einfach direkt nach dem Datengruppenereignis eine Filterbedingung ein, die darauf prüft, ob im Kontrollkästchen WAHR steht. Und nur dann soll die E-Mail versendet werden.

Hier mein kleine JS Funktion um den boolschen Wert in das Kontrollkästchen zu schreiben:


function setBoolean()
{
var kontrollKaestchen = getElement("B1243FF02B372545C992CC67D9701D6EAA4B8291"); /*Kontrollkästchen checkcontrol*/
Browser.setValue(kontrollKaestchen,1);
return true;
}


schöne grüße aus Freiburg
30.10.2013 16:34 von Helferlein
Guten Morgen,

danke für die rasche Antwort attention

Sowas in der Art habe ich auch schon versucht. Beim Absenden wird ein Script ausgeführt , dass den Status auf "offen" setzt. Dies habe ich im Prozess als Bedingung eingebaut. Hat aber nicht funktioniert
.

Habe es eben noch mit dem Kontrollkästchen versucht, und es verhält sich genau wie mit der Statusbedingung. Sende ich das Ticket ohne Anhang, funktioniert es, es wird eine Email mit dem korrekten Betreff verschickt.
Hänge ich jedoch einen Anhang an, wird beim Datei-Hochladen keine Mail verschickt (so ist es gewünscht), aber auch beim Abschicken der Anfrage wird keine E-Mail-Aktion ausgeführt.

Habe noch einen Screenshot von meinem Prozess hochgeladen.

Danke

LG

mcb
31.10.2013 07:57 von mcb_2013
Hallo!

Hm, ist evtl. vlt. noch ein Leerzeichen vorhanden? Das also beim Status nicht "offen" sondern "offen " steht? Oder funktioniert der Vergleich des Filters evtl. nicht, wegen Groß-/Kleinschreibung von "offen".

Und bei der Version mit einem boolschen Feld. Ist das Feld durch das JS tatsächlich auf TRUE / 1 gesetzt, oder funktioniert das evtl. nicht? Setze das boolsche Feld doch einfach mal im Browser manuell auf TRUE bevor Du den Datensatz absendest. Macht das einen Unterschied?
31.10.2013 12:32 von Helferlein
Hi,

habe das Kontrollkästchen mal auf die Arbeitsfläche verschoben und das ganze manuell getestet.

1. Erstelle ich das Ticket, ohne einen Haken zu setzen, startet die E-Mail-Aktion nicht.

2. Setze ich vorher den Haken und schicke das Ticket ab, funktioniert die Mail-Aktion

3. Lade ich jedoch einen Anhang hoch, setze dann den Haken und schicke das Ticket dann ab, funktionierts wieder nicht. (Keine E-Mail-Aktion)

Versteh nicht warum das nicht geht.

Danke für die Bemühungen und einen schönen Feiertag attention

LG
31.10.2013 14:54 von mcb_2013
Hallo!

Kann es sein, dass der Prozess nur ausgelöst wird, wenn ein neuer Datensatz erstellt wird, aber nicht, wenn ein Datensatz geändert wird?
04.11.2013 15:01 von Helferlein
Hallo,

das ist ja toll, dass es ein Objekt gibt, mit dessen Hilfe die Emails anngegesprochen werden können.

g_sharedState.SupportMailSubject


Gibt es dazu auch noch irgendeine Doku? Unter der Groovy Dokumentation ist leider nichts darüber zu finden? attention

Gruß
Boris
05.11.2013 07:58 von BorisWenzel
Hallo Boris,

"SupportMailSubject" ist in dem Beispiel nur der frei wählbare Name der Variablen, die in den Verarbeitungskontext / SharedState geschrieben wird. Das ist kein eigenes Objekt.

schöne Grüße aus Freiburg
05.11.2013 08:58 von Helferlein
Ok es hat funktioniert. Ja der Prozess wurde nur ausgelöst bei Erstellung eines neuen Datensatzes.. whistling meine Güte so einfach.. da hät ich auch selbst drauf kommen könne.
Vielen Dank für die Unterstützung
:)

LG

mcb
05.11.2013 13:52 von mcb_2013
Zurück | Alles über Intrexx | Impressum | Datenschutzerklärung

Über United Planet
© 2019 United Planet GmbH
Schnewlinstraße 2
79098 Freiburg