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 Professional: Programming > goovy: zugriff auf Daten aus Referenz

goovy: zugriff auf Daten aus Referenz

Hallo,

ich habe in einer Datengruppe Refernzen auf andere eingebaut. Alles was ich an der Maske damit zusammenklicke funktioniert tatellos. Nun möchte ich auf den Wert im aktuellen Datensatz mit groovy zugreifen.

auf die normalen Felder funktioniert der Zugriff problemlos
nval=g_record["CF770AE31887028B15716F79E328457DCE5D3359"].value


Der Zugriff auf die Daten aus der Referenz funktioniert so leider nicht. Ich habe es mit der guid des Feldes aus der Referenz versucht, und habe auch die guid der Referenz selbst versucht. Ich erhalte jedes Mal einen Null-Wert...

data:image/png;base64,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

Ich hoffe, ich konnte mich verständlich ausdrücken... huh
22.03.2016 08:37 von Frank Illner
das sollte schon so gehen, die Guid ist die aus dem Feld in der Referenz wie eigentlich aus dem Bild zu erkennen.
Das einzige was es sein kann, ist dass dieses Feld auch auf der Seite benutzt werden muss, damit das geht, d.h. zur not einfach in den verstecken Bereich schieben.
22.03.2016 09:02 von falkh
hmm, läuft leider nicht... Sowohl im Datensatz, den ich auslese als auch in g_record stehen die alten Werte drin. Beim Datensatz ist das ok.. huh Dann muss es erstmal ohne gehen.
23.03.2016 07:02 von Frank Illner
Was Heißt denn "stehen die alten Werte drin", ich dachte du kommst an den Wert nicht ran?
23.03.2016 07:58 von falkh
Wann, wo und wie wird das Groovy-Skript denn ausgeführt?
Was für eine Art Datengruppe ist das auf welcher das ausgeführt wird?

Ich kenne das Verhalten von Fremddatengruppen die auf SAP zugreifen.
23.03.2016 08:18 von MartinW
Ich bin jetzt mal wieder an dem Thema dran; danke erstmal für eure Bemühungen.

Ich schreibe automatisiert die Historie zu Datensätzen. Dazu lese ich über den Event-Handler "processBefore" der Eingabeseite die Werte aus der Datenbank und vergleiche die mit den Werted des aktuellen Datensatzes (g_record). Das funktioniert gut für die Felder, die direkt in der Tabelle stehen. Mit den Refenzen tue ich mich schwer. Da ich nur an die IDs komme brauache ich eine gesonderte Abfrage (ab Zeile 40). Es funktioniert zumindest...


import de.uplanet.scripting.groovy.util.Safely

def conn = g_dbConnections.systemConnection
def stmt = null
def rs = null

def isCanged = false
def infoText = ""
def strStatus = ""
def strStatusNeu = ""
def intStatus = 0
def anzDs = 0
try
{

//alte daten werden aus DB-View gelesen, bei Umstellung muss diese angepasst werden
def sql="SELECT st.STR_BEZ_E0CA959C, anf.REF_E8DEF5E6 FROM DATAGROUP('A659C166F3BC077AEE84295271B1D92BAD25A975') as anf,DATAGROUP('253F510E700E6037833F50FA99F240011E7249D6') as st WHERE anf.REF_E8DEF5E6=st.LID and anf.LID = ?"
stmt = g_dbQuery.prepare(conn, sql)
stmt.setInt(1, Integer.parseInt(g_record.getRecId()))
rs = stmt.executeQuery()

while (rs.next())
{
strStatus =rs.getStringValue(1)
intStatus =rs.getIntValue(2)
anzDs++
}

rs = Safely.close(rs)
stmt = Safely.close(stmt)

//ausführung nicht für neue DS
if(anzDs>0) {

nval="xx"
guid="2DA375EE0D082E04394010B52D9E73A7F15ABB0F"
if(g_record[guid]) {nval=g_record[guid].value}
if(nval && nval!="null" && intStatus != nval) {
//abfragen Statustext
sql="select STR_BEZ_E0CA959C from DATAGROUP('253F510E700E6037833F50FA99F240011E7249D6') where LID = ?"
stmt = g_dbQuery.prepare(conn, sql)
stmt.setInt(1, nval)
rs = stmt.executeQuery()

while (rs.next())
{
strStatusNeu=rs.getStringValue(1)
}

rs = Safely.close(rs)
stmt = Safely.close(stmt)

isCanged = true
infoText += "\nStatusänderung: [alt: ${intStatus}-${strStatus} -> neu: ${nval}-${strStatusNeu}]"
}
}

}
finally
{
rs = Safely.close(rs)
stmt = Safely.close(stmt)
}

//schreibe die Werte in die Shared Variablen um sie mit dem Prozess abzugreifen
//bearbeitender Prozess: KEY_WRT_History


g_sharedState.KEYisCanged = isCanged
g_sharedState.KEYinfoText = infoText


26.04.2016 11:06 von Frank Illner
Ja anders als mit einer weiteren SELECT Anweisung geht es nicht, da du wie erwähnt ja nur die ID in der DB hast.
ich hatte das selbe Problem und habe das auch so gemacht, sieh hier
https://www.unitedplanet.com/forum/index.php?page=Thread&postID=37778#post37778
26.04.2016 11:15 von falkh
bin mal wieder dran, danke für die Info. Ich werd's mal testen...
07.06.2016 09:50 von Frank Illner
Zurück | Alles über Intrexx | Impressum | Datenschutzerklärung

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