`
suipian1029
  • 浏览: 57136 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

java与SAP集成批批量处理模版(JCO3)

    博客分类:
  • SAP
阅读更多
java
Java批量获取sap数据代码 
package com.topband.web.struts.action.supplier; 
 
 
import java.util.ArrayList; 
import java.util.List; 
import org.quartz.Job; 
import org.quartz.JobExecutionContext; 
import org.quartz.JobExecutionException; 
import com.sap.conn.jco.AbapException; 
import com.sap.conn.jco.JCoDestination; 
import com.sap.conn.jco.JCoException; 
import com.sap.conn.jco.JCoFunction; 
import com.sap.conn.jco.JCoParameterList; 
import com.sap.conn.jco.JCoTable; 
import com.tbsap.jcosap.SAPJCO; 
import com.topband.supplier.model.SupplierBean; 
import com.topband.web.struts.action.supplier.SAPJobSupplier; 
 
public class zhugx01 implements Job{ 
     public zhugx01() { 
            super(); 
        } 
     /* 
      * SAP定时更新临时供应商记录 
      */ 
    public void execute(JobExecutionContext context)  throws JobExecutionException { 
          SAPJobSupplier supplierlsbean = new SAPJobSupplier(); 
         JCoDestination destination = null; 
         SAPJCO sapjco = new SAPJCO();  
         
        try 
        { 
            destination = sapjco.getJcoConnection(); 
                        JCoFunction function = destination.getRepository().getFunction("ZMM_VENDOR_CQ"); 
                        if (function != null) 
                        { 
                            JCoTable saplssupplier = function.getTableParameterList().getTable("ZVENDOR_STRUC"); 
                            JCoParameterList paramList = function.getImportParameterList(); 
                            paramList.setValue("ZBZ","1"); 
                            function.execute(destination); 
                             List  lslist= new ArrayList(); 
                             System.out.println("临时供应商条数"+saplssupplier.getNumRows()); 
                             for (int i = 0; i < saplssupplier.getNumRows(); ++i) { 
                                 saplssupplier.setRow(i); 
                                 SupplierBean lsbean= new SupplierBean(); 
                                 lsbean.setGysbh(saplssupplier.getString("LIFNR"));  //供应商编号 
                                 lsbean.setName(saplssupplier.getString("NAME"));   //公司名称 
                                 lsbean.setGyszt("临时供应商"); 
                                 lslist.add(lsbean); 
                             } 
                             supplierlsbean.UpdateSupplierfz(lslist,null,null); 
                        } 
        }catch(AbapException e)      
        {     
            destination = null; 
         } catch (JCoException e) { 
             destination = null; 
            e.printStackTrace(); 
        }finally{ 
            destination = null; 
        } 
 
    } 


单个与批量回写sap模版代码 
package com.topband.web.struts.action.Recruitment; 
 
import java.io.PrintWriter; 
import java.sql.Connection; 
import java.sql.Statement; 
import java.util.List; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import org.apache.struts.action.ActionForward; 
import org.apache.struts.action.ActionMapping; 
import org.apache.struts.action.ActionForm; 
import org.apache.struts.actions.DispatchAction; 
import com.sap.conn.jco.AbapException; 
import com.sap.conn.jco.JCoDestination; 
import com.sap.conn.jco.JCoException; 
import com.sap.conn.jco.JCoFunction; 
import com.sap.conn.jco.JCoTable; 
import com.tbsap.jcosap.SAPJCO; 
import com.topband.recruitment.model.Family; 
import com.topband.recruitment.model.LYXX; 
import com.topband.recruitment.model.ZGJL; 
import com.whir.common.util.DataSourceBase; 
 
public class zhugx extends DispatchAction{ 
     
     DataSourceBase dsb = new DataSourceBase(); 
         Connection conn = null; 
         Statement stmt = null; 
         String sql =null; 
         java.sql.ResultSet rs =null;   
         LYWK ly = new LYWK(); 
 
    public zhugx() { 
        super(); 
    } 
    public ActionForward HXSAP(ActionMapping actionMapping, 
                                 ActionForm actionForm, 
                                 HttpServletRequest reuqest, 
                                 HttpServletResponse response) { 
         JCoDestination destination = null; 
        String workid = reuqest.getParameter("lid"); 
        String adr = reuqest.getParameter("adr"); 
        String msgs = ""; 
        String text = ""; 
        String id = ""; 
        LYXX lyx = (LYXX)ly.GetLYxx(workid); 
        List jtlist = ly.Getjtlist(workid); 
        List gzlist = ly.Getgzlist(workid); 
         SAPJCO sapjco = new SAPJCO();  
             
            try 
            { 
                destination = sapjco.getJcoConnection(); 
            JCoFunction function = destination.getRepository().getFunction("ZHR_RZ_01"); 
            if (function != null) 
            { 
                JCoTable lysap = function.getTableParameterList().getTable("ZZHR_RZ"); 
                JCoTable gz = function.getTableParameterList().getTable("ZZHR_GZ"); 
                JCoTable jt = function.getTableParameterList().getTable("ZZHR_JT"); 
                JCoTable msg = function.getTableParameterList().getTable("ZMSGTAB"); 
                lysap.appendRow(); 
                if(lyx.getNAME() ==null){ 
                    lysap.setValue("NACHN",""); 
                }else{ 
                    char[] name = lyx.getNAME().toCharArray(); 
                    lysap.setValue("NACHN",name); 
                } 
                if(lyx.getZY() ==null){ 
                    lysap.setValue("SPEC_NAME",""); 
                }else{ 
                    char[] zy = lyx.getZY().toCharArray(); 
                    lysap.setValue("SPEC_NAME",zy);  
                } 
                 
                for(int i =0;i<jtlist.size();i++){ 
                    Family jtxx= (Family)jtlist.get(i); 
                    jt.appendRow(); 
                    jt.setRow(i); 
                    if(jtxx.getLxdz() ==null){ 
                        jt.setValue("ADDRESS",""); 
                    }else{ 
                        char[] addre = jtxx.getLxdz().toCharArray(); 
                        jt.setValue("ADDRESS", addre); 
                    } 
                    if(jtxx.getLxtel() ==null){ 
                        jt.setValue("ZTELEPOHNE",""); 
                    }else{ 
                        char[] tel = jtxx.getLxtel().toCharArray(); 
                        jt.setValue("ZTELEPOHNE", tel); 
                    } 
                } 
                 
                for(int j =0;j<gzlist.size();j++){ 
                    ZGJL gzxx= (ZGJL)gzlist.get(j); 
                    gz.appendRow(); 
                    gz.setRow(j); 
                    if(gzxx.getKssj() ==null){ 
                        gz.setValue("BEGDA2",""); 
                    }else{ 
                        char[] kssj = gzxx.getKssj().toCharArray(); 
                        gz.setValue("BEGDA2", kssj); 
                    } 
                    if(gzxx.getJssj() ==null){ 
                        gz.setValue("ENDDA2",""); 
                    }else{ 
                        char[] jssj = gzxx.getJssj().toCharArray(); 
                        gz.setValue("ENDDA2", jssj); 
                    } 
                } 
                function.execute(destination); 
                 for (int i = 0; i < msg.getNumRows(); ++i){ 
                     msg.setRow(i); 
                     msgs = msg.getString("MSGTYP"); 
                     text = msg.getString("TEXT"); 
                     id = msg.getString("PERNR1"); 
                        System.out.println("值3"+id);  
                 } 
            } 
        }catch(AbapException e)      
        {     
            destination = null; 
         } catch (JCoException e) { 
             destination = null; 
            e.printStackTrace(); 
        }finally{ 
            destination = null; 
        } 
        PrintWriter out = ly.getWriterOut(response); 
        out.print(msgs.concat("@".concat(text)).concat("%".concat(id)));  // S/成功   E 失败  
        return null; 
           
        
    } 
     
分享到:
评论

相关推荐

    JAVA 调用SAP端接口的相关包(sapjco3.jar,sapjco3.dll,sapjcorfc.dll)

    JAVA 通过JCO调用SAP端接口的相关包(sapjco3.jar,sapjco3.dll,sapjcorfc.dll)打包下载

    sapjco3.dll结合sapjco3.jar包下载

    1.sapjco3.dll 需要与 sapjco3.jar 在同一目录 2.设置系统环境变量,将sapjco3所在目录加入系统环境变量 3.根据自己的操作系统版本选择对应的sapjco3包 32位系统 例如: 新建环境变量 变量名: JAVA_SAPJCO 变量...

    java和sap集成jco包

    NULL 博文链接:https://xz-struggle.iteye.com/blog/1841208

    java连接sap接口包sapjco3

    java连接sap系统需要通过sap javaconnect来连接,对于sapjco3.jar系列文件有32位与64位之分。 a)确定本机使用JDK版本,一般均为32位。 b)将相对应位数的sapjco3.dll文件拷贝至system32。 c)将相对应位数sapjco.jar...

    sapjco3 jar包

    1.sapjco3.dll 需要与 sapjco3.jar 在同一目录 2.设置系统环境变量,将sapjco3所在目录加入系统环境变量 例如: 新建环境变量 变量名: JAVA_SAPJCO 变量值: E:\sapjco3\sapjco3-win32 将新建的 JAVA_SAPJCO 环境...

    SAP官网最新版本 sapjco3.jar

    java连接sap的工具包,SAP官网最新版本sapjco3资源 内含sapjco3.dll 、sapjco3.jar等文件

    java连接sap接口包sapjco3 window36/64

    java连接sap系统需要通过sap javaconnect来连接,对于sapjco3.jar系列文件有32位与64位之分。 a)确定本机使用JDK版本,一般均为32位。 b)将相对应位数的sapjco3.dll文件拷贝至system32。 c)将相对应位数sapjco.jar...

    sapjco30/sapjco3.dll/sapjco3.jar SAP官网2017/7/18更新版本

    sapjco30 SAP官网2017/7/18更新版本,Windows64...因项目开发SAP RFC接口,使用sapjco3.dll/sapjco3.jar,而网上下载多个版本的sapjco3.dll都提示版本等级太低,最后从SAP官网上下载了2017/7/18更新的文件,使用后OK。

    sapjco3 32位64位.dll+jar

    windows 环境设置 1.sapjco3.dll 需要与 sapjco3.jar 在同一目录 2.设置系统环境变量,将sapjco3所在目录加入系统环境变量 例如: 新建环境变量 变量名: JAVA_SAPJCO 变量值: E:\sapjco3\sapjco3-win32 将新建的 JAVA_...

    SAP2021年6月版本sapjco3.1

    SAP2021年6月版本sapjco3.1, sapjco3.jar , sapjco3.dll ,均以包含。64X86,windowserver可使用。

    sapjco3.zip

    java 连接SAP相关的环境工具包。 sapjco3.dll sapjco3.jar

    sapjco3.dll

    windows环境设置1.sapjco3.dll需要与sapjco3.jar在同一目录2.设置系统环境变量,将sapjco3所在目录加入系统环境变量例如:新建环境变量变量名:JAVA_SAPJCO变量值:E:\ sapjco3 \ sapjco3- win32将新建的JAVA_SAP...

    JAVA对接SAP接口使用sapjco3.dll跟jar文件

    JAVA对接SAP接口使用sapjco3.dll跟jar文件

    JAVA链接SAP相关jar包(sapjco3.jar、sapjco3.dll、libsapjco3.so)

    JAVA链接SAP相关jar包(sapjco3.jar、sapjco3.dll、libsapjco3.so),下载后手动导入到maven项目的pom文件中即可

    SAP JCo2 to SAP JCo3

    How to Migrate from SAP JCo2 to SAP JCo3 and use SAP JCo3 in a Multi-Threaded Environment

    java 使用JCO3 连接SAP实例项目

    安装步骤: ...1、 将sapjco3.dll复制到:C:\WINDOWS\system32,如WEB项目需要把sapjco3.dll放到apache-tomcat-6.0.13\bin目录下; 2、 复制sapjco3.jar到apache-tomcat-6.0.13\lib,同时放入项目lib;

    sapjco3-3.0.jar下载

    sapjco3-3.0.jar下载

    sapjco3.dll&sapjco3;.so&sapjco3;.jar

    提供sapjco3.dll和sapjco3.jar还有sapjco3.so包下载 64位 SAP Java Connector(JCo) JCo是一个高性能的,基于JNI的中间件,它实现了SAP的RFC(Remote Function Call)协议

    sapjco3压缩包下载

    sap编程接口.JCo3.0是Java语言与ABAP语言双向通讯的中间件。

    SAP官网最新linux、windows版 sapjco3.jar

    java连接sap的工具包,SAP官网最新版本sapjco3资源 内含sapjco3.dll 、sapjco3.jar等文件

Global site tag (gtag.js) - Google Analytics