发送数据给sap和接收
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和接收的更多相关文章
- C#使用HttpWebRequest发送数据和使用HttpWebResponse接收数据的一个简单示例
新建一个.NET Core控制台项目,代码如下所示: using System; using System.Text; using System.Net; using System.Collectio ...
- postman发送数据,django 获取接收数据
postman发起请求如下图 在django中使用如下方式获取token print(request.META) token = request.META.get('HTTP_X_TOKEN')
- AJAX中使用post,get接收发送数据的区别
如何发起请求 xhr.send(); 备注: 如果是get方式,send()命令中不用写任何参数 传递的数据可以写在url中,服务器用$_GEET["参数名"]接收 如果是post ...
- Http协议以及模拟http请求发送数据
1 为什么要使用http协议 假设我现在有两个客户端浏览器,一个是google,一个是IE浏览器:我现在有两个服务器,一个是tomcat,一个是JBoss;在最初的情况下是:如果google要往tom ...
- C# TCP socket发送大数据包时,接收端和发送端数据不一致 服务端接收Receive不完全
简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...
- 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 ...
- C#串口通信—向串口发送数据,同步接收返回数据
最近写C#串口通信程序,系统是B/S架构.SerialPort类有一个DataReceived事件,用来接收串口返回的数据,但这种方式在C/S架构下很好用,但B/S就不好处理了.所以写了一个同步模式接 ...
- Java基础知识强化之网络编程笔记06:TCP之TCP协议发送数据 和 接收数据
1. TCP协议发送数据 和 接收数据 TCP协议接收数据:• 创建接收端的Socket对象• 监听客户端连接.返回一个对应的Socket对象• 获取输入流,读取数据显示在控制台• 释放资源 TCP协 ...
- Java基础知识强化之网络编程笔记03:UDP之UDP协议发送数据 和 接收数据
1. UDP协议发送数据 和 接收数据 UDP协议发送数据: • 创建发送端的Socket对象 • 创建数据,并把数据打包 • 调用Socket对象的发送方法,发送数据包 • 释放资源 UDP协议接 ...
随机推荐
- mybatis入门案例2
1. 笔记:1.配置了typeAlias之后,在其他需要写com.itheima.domain.User的地方都可以用user代替 2.先用properties指定了jdbcConfig.proper ...
- C++使用taskkill 命令强制结束进程
一:查看 taskkill 命令和参数的方法 window系统下,快捷键win + R 打开运行 ,输入cmd回车,在 cmd 里面输入: taskkill /? 二:语法: taskkill [/ ...
- java流程控制结构
一.流程控制分三类 1. 顺序结构 - 程序是从上往下,从左往右执行 2. 选择结构(判断结构) - if语句 A. if(关系表达式){语句体} - 执行流程:成立就执行语句体,不成立就不执行 B. ...
- Maven修改test/rsource的output folder报错Test source folder 'src/test/java'... is not also used for main s
eclipse新建maven项目时候,只出来三个文件夹,然后大都督手动添加了缺失的src/test/resource 的文件夹,最后想修改一下 Output folder的路径为 (原来是 d ...
- linux c++调试日志函数
#ifndef MYLOG_H #define MYLOG_H #include <stdio.h> #define __DEBUG__ #ifdef __DEBUG__ #define ...
- JN_0009:win下快捷键注销,关机,重启
注销: wn + x + U 再按 I 键 关机: win + x + U 再按 U 键 重启: win + x + U 再按 R 键
- css动画 transition
比如输入框触交渐变 在原来的属性添加 : .form-control{-webkit-transition: all .3s; transition: all .3s;} .form-control: ...
- base(根URL)
指定用于一个文档中包含的所有相对 URL 的根 URL.一份中只能有一个 <base> 元素. 可以通过使用 document.baseURI 的 JS 脚本查询 属性 包含全局属性 hr ...
- setTimeout(call,0)作用
setTimeout(call,0)作用 经常看到setTimeout延时0ms的javascript代码,感到很迷惑,难道延时0ms和不延时不是一个道理吗?后来通过查资料以及实验得出以下两个作用, ...
- SQLserver还原提示正在还原中。解决方法
今天在Sqlerver还原数据库时一直就卡在那里提示“正在还原…”的状态,此时无法操作数据库,下面我来给大家介绍解决些问题的方法 解决方法: RESTORE DATABASE demo FROM DI ...