JCoFunction-Objekt anlegen
Um ein JCoFunction-Objekt anzulegen, gehen Sie in folgendermaßen vor:
...
1. Legen Sie ein Function Template (Schnittstelle IFunctionTemplate()) an. Ein Function Template enthält alle Metadaten (d.h. Parameter und Exceptions) für ein RFM. SAP JCo holt die Metadaten nur einmal und hält sie dann im Cache, um die Performance zu optimieren.
2. Verwenden Sie die Methode getFunctionTemplate() des Interface’ JCoRepository, um das Template anzulegen. Wird der Wert null zurückgegeben, konnte das RFM nicht im SAP Server gefunden wurden.
3. Vom Template aus können Sie dann ein JCoFunction-Objekt anlegen, indem Sie die Methode getFunction() verwenden.
Function-Objekt anlegenPublic JCoFunction createFunction (String name) throws Exception { try { IFunctionTemplate ft = mRepository.getFunctionTemplate (name.toUpperCase ()) if (ft == null) return null; return ft.getFunction (); } catch (Exception.ex) { throw new Exception (“Problem retrieving JCO.Function object.“); } } |
Ein Function-Objekt enthält nicht nur Metadaten, sondern auch die aktuellen Parameter für die Ausführung des RFMs. Das Verhältins zwischen einem Function Template und einer Funktion in SAP JCo ist ähnlich wie das zwischen einer Klasse und einem Objekt in Java. Der oben gezeigte Code kapselt das Anlegen eines Function-Objekts.

Es wird empfohlen, ein neues Function-Objekt für jede einzelne Ausführung anzulegen. So können Sie sicher sein, dass die Parameter nicht irgendwelche Elemente aus früheren Aufrufen enthalten.