RFC Java交互例子

来源:互联网 发布:linux man手册英文版 编辑:程序博客网 时间:2024/05/22 14:16
Class testJCOpublic class testJco {    public static void main(String[] args) {        GetMemberFarm testGetMemberFarm = new GetMemberFarm();        String memberFarm = testGetMemberFarm.GetMemberFarmFromSap(                "0111020155", "02");        System.out.println("Memberfarm: " + memberFarm);    }}
Class GetMemberFramimport com.sap.mw.jco.*;  //The JCO public class GetMemberFarm {              public String GetMemberFarmFromSap(String farm, String OwnerNumber){      String zzmemb ="";             String memberFarm = "";         JCO.Repository mRepository;         JCO.Client mConnection = null;         JCO.Function myFunction = null;         // --------------------------------------------------------- //Create    // Connection to SAP    // //---------------------------------------------------------    try          {                         mConnection = JCO.createClient("800",           // SAP client                "HFR",       // User ID                "vimmer3",     // Password                "EN",            // Language                "53.205.22.71", // Host                "03");           // System        mConnection.connect();                    System.out.println("Connection OK");                  }          catch (Exception ex)                  {                     System.out.println(ex);                  }      // --------------------------------------------------------- //                // Create function and parameters                // //---------------------------------------------------------        try                  {        // Create repository            mRepository = new JCO.Repository( "GetMember", mConnection );                            // Get a function template from the repository            IFunctionTemplate ftemplate = mRepository.getFunctionTemplate("ZNAS_HIE1_GET_MEMBER_FARM");                            // Create function            myFunction = new JCO.Function(ftemplate);                    System.out.println("Function created");                            // Set import parameter            JCO.Field zzfarm = myFunction.getImportParameterList().getField("ZZFARM");                    zzfarm.setValue(farm);                                   System.out.println("Parameters ok");                                      }              catch (Exception ex)                           {                                   System.out.println(ex);                     }     // ---------------------------------------------------------                    // // Execute function                    // //---------------------------------------------------------        try                 {                     mConnection.execute(myFunction);                    System.out.println("RFC Call OK");                                 }                  catch (Exception ex)                          {              System.out.println(ex); // Exception from function        }                // ---------------------------------------------------------        // Handle return table GT_HIERARCHY        // Loop over the table and find the record that        // has ZZCHCODE = OwnerNumber from the        // method parameters, and return Member for the        // record        // ---------------------------------------------------------        JCO.Table gt_HIERARCHY = null;             try                 {                      gt_HIERARCHY=myFunction.getTableParameterList().getTable("GT_HIERARCHY");                            // Loop thhrough table and return the member that has            // changecode (ZZCHCODE) = 02            for (int i = 0; i < gt_HIERARCHY.getNumRows(); i++)                    {                   gt_HIERARCHY.setRow(i);                        String zzchcode = gt_HIERARCHY.getString("ZZCHCODE");                        if (zzchcode.equals(OwnerNumber))                                                   {                                zzmemb = gt_HIERARCHY.getString("ZZMEMB");                                                }                                       }                             }                  catch (Exception ex)                          {  System.out.println(ex);                                       }                                  // --------------------------------------------------------- //        // Disconnect from SAP        // //---------------------------------------------------------        try                   {                        mConnection.disconnect();                           System.out.println("Disconnected from SAP");                       }              catch (Exception ex)                  {                     System.out.println(ex);                      }                          return zzmemb;  }              } // public class GetMemberFarmLast Updated (Thursday, 29 January 2009        // 05:58)    }    }}
0 0
原创粉丝点击