Page 1 of 1

Probleme JCO Importparameter Tabelle

PostPosted: Fri Mar 23, 2007 3:51 pm
by Gudrun515
Hallo Allerseits,

Ich habe ein Problem bei der Übergabe von Importparameter mit der JCO Klassen.
Was funktioniert:
- Einfache Übergabeparameter werden korrekt an ABAP Übergeben
- Die Procedure wird korrekt aufgerufen (ich bekomme ein Ergebnis)
Was nicht funktioniert:
- Die TabellenParameter der Tabelle "FILTER_CRITERIA" kommen nicht im SAP an


Code: [Select all] [Expand/Collapse] [Download] (Untitled.txt)
  1. ...
  2. JCO.Function objFunction = this.createFunction(objRep, "Z_GET_ITEMS");
  3.  // Importparameter      
  4. objFunction.getImportParameterList().setValue(strType, "TYP");
  5.      
  6. JCO.Table r3FilterTable;
  7.        
  8. r3FilterTable = objFunction.getTableParameterList().getTable("FILTER_CRITERIA");
  9. //r3FilterTable.appendRow();
  10. r3FilterTable.insertRow(1);
  11. r3FilterTable.setValue("CREA_USER", "NAME");
  12. r3FilterTable.setValue("1","LINE");
  13. r3FilterTable.setValue("BSCHNEIDER","VALUE");
  14. //r3FilterTable.appendRow();
  15.  
  16. //objFunction.getTableParameterList().setValue(r3FilterTable,"FILTER_CRITERIA");
  17. objClient.execute(objFunction);
  18. ...
  19.  
GeSHi ©


Wie ihr sehen könnt habe ich schon mehrere Dinge versucht die Tabelle der Schnittstelle zu übergeben. Der ABAP Funktionsbaustein funktioniert selber auch - ich habe diesen in ABAP getestet.

Hat jeman eine Idee was da falsch sein könnte?

PostPosted: Mon Mar 26, 2007 2:28 pm
by Joscha5286
hallo

also eigentlich reicht

table.appendrow
table.setValue ....

um Tabellenparameter zu setzen

kann es seine dass der Tabellenparameter anders heißt als von dir im Java Code angegeben? Der JCo ist da nicht sehr hilfreich und ignoriert AFAIK bei falschen Parameternamen das ganze einfach

oder versuche einfach einmal im ABAP Teil Daten in die Tabelle zu schreiben und diese dann in Java auszulesen um zu schauen ob alle Parameternamen korrekt sind.

und mit dem JCO kommen einige Beispielanwendungen die sicherlich auch einen Blick Wert sind

lg franz

PostPosted: Sat Mar 31, 2007 7:29 am
by Gudrun515
Vielen Dank für deinen Tip.

Ich habe die Ursache weiter eingegrenzt und habe den Fehler gefunden.
Die Ursache war:
- die Daten wurden korrekt übergeben
- Allerdings ist zunächst bei der Schnittstelle über JCO keine Kopfzeile gefüllt
- im ABAP Quelltext wurde nach "if TABELLE is not initial..." abgefragt
- die Änderung "if TABELLE[] is not initial" hat das Problem dann behoben

das üble war, das beim debuggen in ABAP alles funktioniert hatte

Grüße[/code]