Import Parameter setzen

Portaltechnologie.

Import Parameter setzen

Postby Eymen3483 » Wed Mar 12, 2003 10:43 am

Hallo,

vielen Dank für die Hilfe!

Ich versuche den BAPI BAPI_DEBTOR_GETDETAIL aufzurufen.
Die Import Parameter setzte ich mit Hilfe der setValue(Wert, Name) Methode.
Leider erscheint im Portal nur eine Tabelle mit den Spaltenüberschriften aber keine Werte.
Offensichtlich sind die Parameter nicht genommen worden.
Hier ist das Coding zum Besseren Verständnis:

client = getJcoClient();
// make a connection to the R/3 system
client.connect();

// create the repository
IRepository myRep = null;
myRep = new JCO.Repository("SAP", client);
// get a handle to the function we wish to call
IFunctionTemplate ftemplate = myRep.getFunctionTemplate("BAPI_DEBTOR_GETDETAIL");
// create the JCO function with the template
JCO.Function func = new JCO.Function(ftemplate);
JCO.ParameterList params = new JCO.ParameterList();
params = func.getImportParameterList();
params.setValue("1000","DEBTORID");
params.setValue("1000","COMPANYCODE");


JCO.ParameterList ex = new JCO.ParameterList();
JCO.ParameterList tab = new JCO.ParameterList();

// execute the function
client.execute(func);
kontoTable = func.getTableParameterList().getTable ("DEBITOR_BANK_DETAIL");

Wie kann ich erreichen das der BAPI mit Importparametern ausgeführt wird?

Gruss

Caroline
Eymen3483
.
.
 
Posts: 6
Joined: Wed Mar 12, 2003 10:43 am

Postby Emre397 » Wed Mar 12, 2003 11:18 am

Hi Caroline oder Nina? wie auch immer. :)

auf den ersten Blick fällt mir nichts besonderes auf.
Solltest auf jeden fall prüfen, ob die Daten im backend richtig im R/3 ankommen.
Wenn nicht ist das vielleicht ein Anzeigeproblem. Konnstest du schon irgendwelche Daten in deinem I-View anzeigen?

Gruß Azreal

ps. Benutzt du eigentlich einen Connection pool?
Emre397
...
...
 
Posts: 141
Joined: Mon Dec 09, 2002 1:53 pm

Postby Eymen3483 » Wed Mar 12, 2003 11:26 am

Hallo,

ich benutze keinen Connection Pool.
Daten werden dann angezeigt, wenn ein BABI keine Import Parameter benötigt, beispielsweise BAPI_COMPANY_GETLIST (gibt eine Liste aller Companies zurück).

Wie kann ich überprüfen, ob die Daten im R/3 ankommen? oder wie sie ankommen?

Gruß
Caroline
Eymen3483
.
.
 
Posts: 6
Joined: Wed Mar 12, 2003 10:43 am

Postby Jarne2165 » Wed Mar 12, 2003 11:29 am

Hallo,

gratuliere du bist die erste, die in den Portal Thread posted.
Von deinem Coding kann ich ersehen, daß du deine Parameter wie folgt setzt:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. params = func.getImportParameterList();
  2. params.setValue("1000","DEBTORID");
  3. params.setValue("1000","COMPANYCODE");
GeSHi ©


ich weiß nicht ob das ein Fehler ist ( hab hier gerade kein System um das nachzu vollziehen) aber bisher habe ich die Parameter folgendermaßen gesetzt:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. func.getImportParameterList().setValue("1000", "DEBTORID");
  2. func.getImportParameterList().setValue("1000","COMPANYCODE");
GeSHi ©


Ersetze mal die entsprechenden Stellen und probier es mal aus. Ich habe irgendwie die Vermutung, daß die Referenz auf das eigentliche Objekt verloren geht.

LG Jan
Jarne2165
..
..
 
Posts: 42
Joined: Mon Dec 02, 2002 1:25 pm

Postby Emre397 » Wed Mar 12, 2003 11:32 am

Sorry bin davon ausgegangen daß du Daten ins Backend schickst und sie dort speicherst *g* :oops:

Solltest aber auf jeden fall prüfen, ob die Babi zu den Werten Daten zurückliefert. gehe aber davon aus, daß du das gemacht hast.
Emre397
...
...
 
Posts: 141
Joined: Mon Dec 09, 2002 1:53 pm

Postby Christian4831 » Wed Mar 12, 2003 11:36 am

Hi Nina,

eigentlich ist Deine Frage ja eher nicht Portal spezifisch und gehört daher eher in den Java Thread :-))

Zunächst einmal machst Du ein paar Sachen, die Du eigentlich gar nicht brauchst. Z.B. erzeugst Du JCO.ParameterList Objekte, die Du gar nich erzeugen musst, da sie ja bereits innnerhalb des function Objekts existieren. Hier eine korrigierte Verison Deines Codings:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. client = getJcoClient();
  2. // make a connection to the R/3 system
  3. client.connect();
  4.  
  5. // create the repository
  6. IRepository myRep = new JCO.Repository("SAP", client);
  7.  
  8. // get a handle to the function we wish to call
  9. IFunctionTemplate ftemplate = myRep.getFunctionTemplate("BAPI_DEBTOR_GETDETAIL");
  10.  
  11. // create the JCO function with the template
  12. JCO.Function func = new JCO.Function(ftemplate);
  13.  
  14. //hier holst Du Dir die Referenz auf das JCO.ParameterList Objekt, das
  15. //die Import Parameter enthält
  16. JCO.ParameterList params = func.getImportParameterList();
  17. params.setValue("1000","DEBTORID");
  18. params.setValue("1000","COMPANYCODE");
  19.  
  20. //für debugging Zwecke kannst Du Dir die Import Parameterliste in einer HTML Datei ausgeben lassen:
  21. params.writeHTML("c:\\ImportParamter.html");
  22.  
  23. // execute the function
  24.  
  25. client.execute(func);
  26. JCO.Table kontoTable = func.getTableParameterList().getTable ("DEBITOR_BANK_DETAIL");
  27.  
  28. //Debugging Ausgabe der Tabellenwerte
  29. kontoTable.writeHTML("c:\\KontoTabelle.html");
  30.  
GeSHi ©


Ich habe in das obige coding ein paar Debugging Sachen reingemacht. Diese geben Dir HTML Dateien aus, die unter c:\ abgelegt werden. In diesen Dateien kannst Du nachschauen, ob Du JCO die Werte richtig übergibst, bzw. von ihm richtig erhälst.

ciao,

Tim
Christian4831
..
..
 
Posts: 91
Joined: Mon Dec 02, 2002 7:33 pm

Postby Eymen3483 » Wed Mar 12, 2003 2:17 pm

Hallo Tim,

jetzt kann ich mir die Tabellen zwar anschauen, sehe auch dass die Werte gesetzt worden sind, wie ich sie mit setValue() übergeben habe, die Tabelle DEBITOR_BANK_DETAIL ist leider nach wie vor leer.

Habe bereits vesucht führende Nullen einzufügen:
Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1.    func.getImportParameterList().setValue("0000001000", ("DEBTORID"));
GeSHi ©


Doch dies ändert auch nichts.
Falls ihr noch eine Idee habt ....

Gruss

Caroline
Eymen3483
.
.
 
Posts: 6
Joined: Wed Mar 12, 2003 10:43 am

Postby Jarne2165 » Wed Mar 12, 2003 3:09 pm

Scheint so, daß das System nichts zu dem mitgegebenen Wert gefunden hat. Hast du den Bapi mal mit dem werten ausprobiert? Gibt es dazu etwas?

LG Jan
Jarne2165
..
..
 
Posts: 42
Joined: Mon Dec 02, 2002 1:25 pm


Return to Enterprise Portal

Who is online

Users browsing this forum: No registered users and 3 guests