`
suipian1029
  • 浏览: 57773 次
  • 性别: 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相关jar包(sapjco3.jar、sapjco3.dll、libsapjco3.so)

    首先,sapjco3.jar是SAP Java Connector的核心库,它提供了Java接口,使得Java程序能够与SAP系统进行通信。这个库包含了所有的Java类和接口,开发者可以通过这些API来创建连接、执行RFC(远程功能调用)和BAPI...

    SAP Java JCo 3.1.3 Linux + Windows 64bit下载

    总结起来,SAP Java Connector 3.1.3是Java开发者与SAP系统交互的重要工具,通过提供的`sapjco3.dll`、`sapjco3.jar`和`libsapjco3.so`文件,能够在Linux和Windows 64位环境下构建和运行与SAP集成的应用程序。...

    SAP2021年6月版本sapjco3.1

    SAP是一种全球领先的业务软件解决方案,它为企业提供...对于开发与SAP系统集成的Java应用,理解和掌握SAP JCo的使用至关重要,这包括对`sapjco3.jar`和`sapjco3.dll`的理解,以及如何在不同环境下正确配置和调用它们。

    java连接sap接口包sapjco3 window36/64

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

    Java连接SAP系统所用的JCo连接池的配置和使用

    "Java连接SAP系统所用的JCo连接池的配置和使用" Java连接SAP系统所用的JCo连接池的配置和使用是指在Java应用程序中使用JCo连接池来连接SAP R3系统的技术。JCo(Java Connector)是SAP提供的一种Java API,用于连接...

    sapjco3.zip sapjco3.dll

    标题 "sapjco3.zip sapjco3.dll" 提供了关于SAP Java Connector (SAP JCo)的关键信息,这是一个用于Java应用程序与SAP系统间集成的重要组件。SAP JCo允许开发者通过Java代码与SAP NetWeaver应用服务器进行通信,执行...

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

    本文将详细介绍如何使用SAP JCo(Java Connector)库,特别是通过`sapjco3.dll`和`jar`文件来实现JAVA与SAP接口的对接。 首先,SAP JCo是一个Java API,它允许Java应用程序与SAP系统进行通信。JCo提供了两种主要的...

    sapjco3.dll sapjco3.jar 版本 7210,1120,28,55042 64位.zip

    标题中的"SAPJCO3.dll SAPJCO3.jar"指的是SAP Java Connector 3的动态链接库(.dll)和Java档案(.jar),这是连接SAP系统与Java应用程序的关键组件。版本号"7210,1120,28,55042"代表了该软件的具体更新迭代,其中...

    java和sap集成jco包

    1. **JCO接口**:SAP JCo(Java Connector Architecture)是SAP NetWeaver系统提供的一套API,允许Java应用程序与SAP R/3系统无缝集成。它提供了客户端和服务器端的连接、数据传输以及事务管理等功能。 2. **组件...

    sapjco3压缩包下载

    SAP JCo3(Java Connector 3.0)是一个关键的中间件技术,它使得Java应用程序能够与SAP系统的ABAP环境进行无缝交互。在Java编程中,SAP JCo3提供了一组全面的API,允许开发人员创建、读取、更新和删除SAP系统中的...

    sapjco3 jar包

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

    java与sap交互 jco包

    Java与SAP交互是企业级应用集成中的常见需求,JCO(Java Connector)是SAP提供的用于Java应用程序与SAP系统通信的接口。本篇将详细介绍如何利用JCO包进行Java与SAP的交互,以及如何处理jar包和dll文件。 首先,JCO...

    java连接sap接口包sapjco3

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

    sapjco3.dll结合sapjco3.jar包下载

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

    sapjco3.jar下载

    SAP JCo (Java Connector) 是 SAP 提供的一款用于 Java 应用程序与 SAP 系统之间集成的重要组件。在本文中,我们将深入探讨 SAP JCo3,即 SAP Java Connector 的第三版本,以及如何处理其可能遇到的问题。 首先,`...

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

    总之,SAP JCo3是Java开发者与SAP系统集成的重要工具,它简化了Java应用与SAP的接口开发,提供了高效、稳定的数据交换机制。通过使用`sapjco3.jar`和对应的本地库文件,开发者可以轻松地在Linux或Windows环境中实现...

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

    在Java开发中,有时我们需要与SAP系统进行交互,实现数据的同步或者业务流程的集成。在这种场景下,SAP提供了Java Connector (简称JCo),它是一个用于在Java应用程序和SAP系统之间建立通信的库。JCo允许Java开发者...

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

    SAP JCo (Java Connector) 是一款用于连接Java应用程序与SAP系统的关键组件,它提供了在Java环境中访问SAP R/3系统或者SAP NetWeaver应用服务器的能力。"sapjco30"指的是SAP JCo的第三版,这个版本对应于JCo 3.0,是...

    SAP官网最新版本 sapjco3.jar

    SAP是一种全球领先的业务软件,用于企业...总的来说,SAP JCo3是Java开发者与SAP系统集成的重要工具,提供了高效且灵活的API来调用SAP的功能。通过理解其工作原理和最佳实践,你可以更有效地构建与SAP集成的应用程序。

Global site tag (gtag.js) - Google Analytics