Таблицата SAP JCO3 е празна

Пренаписвам своя JCO2 код в JCO3 код, за да се изпълнява на 64-битов Windows сървър. Когато се опитвам да прочета моята SAP таблица с JCO3 кода, тя връща празна таблица. Въпреки това, когато стартирам JCO2 кода, имам 2 записа в таблицата.

Ето фрагмент от моя JCO3 код:


try
 {
System.out.print("after try");
try {
    ABAP_AS2 = JCoDestinationManager.getDestination(ABAP_MS);
    }
    catch (Exception e) {
        ABAP_AS2 = null;
        System.out.print("ABAP_AS2 = null");
    }
    ABAP_AS2.ping();
JCoFunction function = ABAP_AS2.getRepository().getFunction("ZPC_RFC_READ_QMLN");
        function.execute(ABAP_AS2);
        System.out.println("STFC_CONNECTION finished:");
        JCoTable return_table = function.getTableParameterList().getTable("DATA");   
        Sytem.out.println("get table");
   int records = return_table.getRow();
        System.out.println(records);

Резултатът е записи = 0. Когато стартирам JCO2 кода на същата таблица, резултатът е записи = 2.

Моля, кажете ми какво пропускам.


person user3654038    schedule 21.05.2014    source източник


Отговори (1)


Явно не сте чели документацията на API:

`int getRow()`
Returns the current row number. The first row number is 0, the second is 1, and so on.

Вероятно искате да преминете към getNumRows().

person vwegert    schedule 21.05.2014
comment
Благодаря ти. Така че промених кода на getNumRows() и все още получавам записи = 0. Когато се опитам да изпълня кода: for (int i = 0; i ‹ return_table.getNumRows(); i++) - (което идва директно от API документация) не влиза в цикъла. Някакви други идеи? - person user3654038; 22.05.2014
comment
Използвали ли сте средството за отдалечено отстраняване на грешки, за да разберете дали функционалният модул получава и връща правилните стойности на първо място? - person vwegert; 22.05.2014
comment
Не знам вашия RFC. Има ли някакви параметри за импортиране, които трябваше да зададете? Нещо като function.getImportParameterList().setValue("DATUM_VON", datum_von); Или има някакъв код за връщане, който можете да проверите? String rc = function.getExportParameterList().getString("RETURNCODE"); - person rawdog; 13.06.2014
comment
Благодаря на всички за коментарите. Изглежда, че проблемите ми бяха с инсталирането на JCO на сървъра. :( Моят код не беше проблемът. - person user3654038; 18.06.2014