Hallo Groovy Experten,Wert in einer Sammlung finden und weist oben eine Variable mit groovy
ich den unten Befehl verwenden alle ODI Dataserver zu bekommen.
def PSchema=DServer.getPhysicalSchemas();
Wenn ich drucken Sie die PSchema
Variable I die folgenden Werte zu bekommen.
[oracle.odi.domain.topology.OdiPhysicalSchema ABC.X1, oracle.odi.domain.topology.OdiPhysicalSchema ABC.X2]
Was ich versuche, hier zu erreichen, werde ich X1
oder X2
während der Laufzeit werden vorbei ...
Und dann will ich mit dem PSchema
Ergebnis diesen Wert bestätigen und den Druck den folgenden Wert:
oracle.odi.domain.topology.OdiPhysicalSchema ABC.X2
ich habe versucht, die folgenden Optionen:
def PSchema44 = PSchema11.findIndexValues { it =~ /(X1)/ }
def pl=PSchema11.collect{if(it.contains ('X1)){return it}}
ich für lo versucht op zu überprüfen, ob die Werte korrekt ..result gedruckt zu werden, ist in Ordnung:
for (item in PSchema11)
{
println item
}
die richtige Syntax für Collect sollte 'def pl = PSchema11.collect {it.contains ('X1')}' haben Sie das versucht? – OsaSoft
empfing den folgenden Fehler ** groovy.lang.MissingMethodException: Keine Signatur der Methode: oracle.odi.domain.topology.OdiPhysicalSchema.contains() gilt für Argumenttypen: (java.lang.String) Werte: [X1] Mögliche Lösungen: toString(), toString(), toString(), notify() ** – Ananda
Blick in die Dokumentation, sieht aus wie 'getPhysicalSchemas()' eine nicht änderbare Sammlung von IPhysicalSchemas Was genau versuchen Sie zu erreichen? Wenn ich richtig verstehe, übergebe ich zur Laufzeit X1 oder X2 und möchte den übergebenen Wert aus der von 'getPhysicalSchemas()' zurückgegebenen Sammlung auswählen? – OsaSoft