2017-09-15 16 views
2

私は何千ものマッピングをODIで作成しています。私はそれらを実行する必要がありますが、1つずつ実行することは実行可能な選択肢ではないようです。GroovyスクリプトでODIマッピングを実行する方法は?

すべてのマッピングのリストを取得し、各マッピングを繰り返し処理できるグルーヴィースクリプトを作成しようとしています。私はこれを達成することができますが、私はどのように与えられたマッピングを実行するのか把握することができません。

はここに私のスクリプトです:

def fm = ((IMappingFinder) tme.getFinder(Mapping.class))   

def mappingList = fm.findAll().findAll{w -> w.getProject().getCode() == 'STOO'} 
if (mappingList == null){ 
    println "Map is null" 
} 

ms=mappingList.iterator() 
while(ms.hasNext()){ 
    ms_i = ms.next() 
    println ms_i.getName() // INSERT CODE TO EXECUTE MAPPING HERE 
} 

このスクリプトは、マッピング名を印刷し、私はそれを実行するための方法が必要です。 Plsヘルプ!

答えて

1

oracle.odi.runtime.agent.invocationのクラスRemoteRuntimeAgentInvokerを使用すると、シナリオまたはロード・プランを開始できます。

ローカル・エージェントで実行する場合は、oracle.odi.runtime.agentのクラスRuntimeAgentを使用して実行できます。しかし、ローカルエージェントでロードプランを実行することはできません。リモートエージェントでのみ実行できます。