1.确保已经连通sap

2.发送数据:这是以表的形式发送,而且是批量发送给sap

3.接收sap返回信息:这个比较特别,碰到时试一试

package com.yiyezhiqiu.lyh.utils;

import com.alibaba.fastjson.JSON;
import com.sap.conn.jco.*;
import com.yiyezhiqiu.lyh.domain.Job;
import com.yiyezhiqiu.lyh.service.IWorkTimeService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Slf4j public class TestSap { @Autowired
IWorkTimeService workTimeService; public Map contextLoads(List<Job> jobList) { String xmlStr = "";
Map<String ,Object> maps = null;
for(Job list:jobList){
System.out.println("joblist"+list.getID()+"一叶知秋"+jobList.size()+list.getLSTAR());
} JCoDestination destination = null;
try{
SapConnection connection = new SapConnection();
destination = connection.connection();
}catch(Exception e){
return maps;
} log.info("JCoDestination: "+destination);
try {
if (destination != null) {
JCoFunction function;
try{
function = destination.getRepository().getFunction("ZFMMM_READ_XXXXX");
}catch(Exception e){
return maps;
} // function.getImportParameterList().setValue("I_DATA", jobList);
for(Job list:jobList){
JCoTable table = function.getTableParameterList().getTable("I_DATA");
table.appendRow();
table.setValue("ID",list.getID());
table.setValue("ARWKS",list.getARWKS());
table.setValue("VGE01",list.getVGE01());
table.setValue("TELPO",list.getTELPO());
table.setValue("PTYPE",list.getPTYPE());
table.setValue("BUDAT",list.getBUDAT());
table.setValue("CARDNAME",list.getCARDNAME());
table.setValue("CARDNO",list.getCARDNO());
table.setValue("ARBPL",list.getARBPL());
table.setValue("WRTNR",list.getWRTNR());
table.setValue("ZZPROJE",list.getZZPROJE());
table.setValue("WORKP",list.getWORKP());
table.setValue("AUFNR",list.getAUFNR());
table.setValue("JOBTYPENAME",list.getJOBTYPENAME());
table.setValue("JOBTYPE",list.getJOBTYPE());
table.setValue("LIFNR",list.getLIFNR());
table.setValue("LINEDNAME",list.getLINEDNAME());
table.setValue("LINED",list.getLINED());
table.setValue("ISDDZ",list.getISDDZ());
table.setValue("IEDDZ",list.getIEDDZ());
table.setValue("BGTYP",list.getBGTYP());
table.setValue("VGWRT",list.getVGWRT());
table.setValue("LSTAR",list.getLSTAR());
table.setValue("SJPNO",list.getSJPNO());
table.setValue("USNAM",list.getUSNAM());
table.setValue("CPUDT",list.getCPUDT());
table.setValue("AEDAT",list.getAEDAT());
table.setValue("FLAG",list.getFLAG());
table.setValue("TEXT",list.getTEXT());
table.setValue("ZDEL",list.getZDEL());
table.setValue("CPUDT1",list.getCPUDT1());
table.setValue("CPUTM1",list.getCPUTM1());
table.setValue("APUDT1",list.getAPUDT1());
table.setValue("APUTM1",list.getAPUTM1());
table.setValue("PHASE",list.getPHASE());
table.setValue("BATCH",list.getBATCH());
table.setValue("RUECK",list.getRUECK());
table.setValue("RMZHL",list.getRMZHL());
table.setValue("BLART",list.getBLART());
table.setValue("DSNAM",list.getDSNAM());
table.setValue("DEDAT",list.getDEDAT());
table.setValue("BELNR",list.getBELNR());
table.setValue("F01",list.getF01());
table.setValue("F02",list.getF02());
table.setValue("F03",list.getF03());
table.setValue("F04",list.getF04());
table.setValue("F05",list.getF05());
table.setValue("F06",list.getF06());
table.setValue("F07",list.getF07());
table.setValue("F08",list.getF08());
} function.execute(destination); // JCoParameterList tablePort = function.getTableParameterList(); //info = tablePort.toXML();
// System.out.println("info:"+info); // XmlParse xmlParse = new XmlParse();
//xmlStr = xmlParse.getXmlAttribute(info); JCoStructure r1 = function.getExportParameterList().getStructure("GS_XXXX"); String type = "";
String message = "";
type = r1.getString("TYPE");
message = r1.getString("MESSAGE");
maps = new HashMap<>();
maps.put("type",type);
maps.put("message",message);
return maps;
}
}catch (JCoException e){
e.printStackTrace();
} return maps; }
}

发送数据给sap和接收的更多相关文章

  1. C#使用HttpWebRequest发送数据和使用HttpWebResponse接收数据的一个简单示例

    新建一个.NET Core控制台项目,代码如下所示: using System; using System.Text; using System.Net; using System.Collectio ...

  2. postman发送数据,django 获取接收数据

    postman发起请求如下图 在django中使用如下方式获取token print(request.META) token = request.META.get('HTTP_X_TOKEN')

  3. AJAX中使用post,get接收发送数据的区别

    如何发起请求 xhr.send(); 备注: 如果是get方式,send()命令中不用写任何参数 传递的数据可以写在url中,服务器用$_GEET["参数名"]接收 如果是post ...

  4. Http协议以及模拟http请求发送数据

    1 为什么要使用http协议 假设我现在有两个客户端浏览器,一个是google,一个是IE浏览器:我现在有两个服务器,一个是tomcat,一个是JBoss;在最初的情况下是:如果google要往tom ...

  5. C# TCP socket发送大数据包时,接收端和发送端数据不一致 服务端接收Receive不完全

    简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...

  6. STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085和串口只发送数据不能接收数据问题

    STM32移植RT-Thread后的串口在调试助手上出现:(mq != RT_NULL) assert failed at rt_mq_recv:2085的问题讨论:http://www.rt-thr ...

  7. C#串口通信—向串口发送数据,同步接收返回数据

    最近写C#串口通信程序,系统是B/S架构.SerialPort类有一个DataReceived事件,用来接收串口返回的数据,但这种方式在C/S架构下很好用,但B/S就不好处理了.所以写了一个同步模式接 ...

  8. Java基础知识强化之网络编程笔记06:TCP之TCP协议发送数据 和 接收数据

    1. TCP协议发送数据 和 接收数据 TCP协议接收数据:• 创建接收端的Socket对象• 监听客户端连接.返回一个对应的Socket对象• 获取输入流,读取数据显示在控制台• 释放资源 TCP协 ...

  9. Java基础知识强化之网络编程笔记03:UDP之UDP协议发送数据 和 接收数据

    1. UDP协议发送数据 和 接收数据 UDP协议发送数据: • 创建发送端的Socket对象 • 创建数据,并把数据打包 • 调用Socket对象的发送方法,发送数据包 • 释放资源  UDP协议接 ...

随机推荐

  1. matlab bitset的理解

    在阅读别人的matlab程序中,发现了这个bitset函数.于是查阅资料搞明白了大概意思,意思如下: B= bitset(A,pos,V) 将A以二进制来表示,并将第pos个位置, 设置为 V 的值, ...

  2. 对主定理(Master Theorem)的理解

    前言 虽说在学OI的时候学到了非常多的有递归结构的算法或方法,也很清楚他们的复杂度,但更多时候只是能够大概脑补这些方法为什么是这个复杂度,而从未从定理的角度去严格证明他们.因此借着这个机会把主定理整个 ...

  3. 《剑指Offer》各面试题总结

    目录 前言 面试题4 二维数组的查找 面试题5:替换空格 面试题6:从尾到头打印链表 面试题7:重建二叉树 面试题8:二叉树的下一个节点 面试题9:用两个栈实现队列 面试题10:斐波那契数列 面试题1 ...

  4. python qrcode二维码生成与识别

    二维码 二维码生成 1.用法 https://github.com/lincolnloop/python-qrcode 2.使用 简单实用 import qrcode # 二维码内容 data = & ...

  5. Wannafly Camp 2020 Day 7H 游戏 - 欧拉筛,GCD

    忘记特判 \(1\) ,血了一地 听说 \(O(n^2 \log n)\) 能过? #include <bits/stdc++.h> #define int long long using ...

  6. jquery 清除内容

    jQuery empty() 方法删除被选元素的子元素. $("#div1").empty(); 清空文本框的值 $("#password").val(&quo ...

  7. spring项目启动报错

    个人博客 地址:http://www.wenhaofan.com/article/20180921134534 错误信息 ERROR [localhost-startStop-1] - Context ...

  8. flask入门(四)

    数据库 flask在数据库这一块有一个扩展应用叫做flask-sqlalchemy,去虚拟环境里pip install一下,如下 我这边用的是mysql,指定的url是这个mysql://userna ...

  9. python 音频可视化

    代码整理好放在 github 上了: https://github.com/darkchii/visualize bilibili 演示视频:https://www.bilibili.com/vide ...

  10. Date/Math/String对象的函数

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...