首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >com.sap.conn.jco.ConversionException:(122) JCO_ERROR_CONVERSION :字符串至日期字段

com.sap.conn.jco.ConversionException:(122) JCO_ERROR_CONVERSION :字符串至日期字段
EN

Stack Overflow用户
提问于 2016-12-23 13:56:12
回答 2查看 2.5K关注 0票数 0

我正在开发SAP JCo。设置日期'12.16.2016‘时出现异常

异常: com.sap.conn.jco.ConversionException:(122) JCO_ERROR_CONVERSION:无法在字段日期将'12.16.2016‘的值从类型java.lang.String转换为结构。

我的代码是

代码语言:javascript
复制
  public static void YP_ECA_VIN(String date, String plant) throws Exception    {
    try {
        JCoDestination destination;
        JCoRepository sapRepository;
   destination = JCoDestinationManager.getDestination(DST1);
   JCoDestinationManager.getDestination(DST1);     
   JCoContext.begin(destination);
   sapRepository = destination.getRepository();        
   if (sapRepository == null) {
        System.out.println("Couldn't get repository!");
        JCoContext.end(destination);
        System.exit(0);
    } 
    JCoFunctionTemplate template =     sapRepository.getFunctionTemplate("YP_ECA_VIN");     
    if (template == null) {
        System.out.println("Couldn't get template for YP_ECA_VIN!");
    } else {
        JCoFunction function = template.getFunction();
        function.getImportParameterList().setValue("DATE", "12.16.2016");
        function.getImportParameterList().setValue("PLANT", plant);
        function.execute(destination);
        int numTRows = 0;
        int numTCoulmns = 0;
        JCoTable table =    function.getExportParameterList().getTable("OUTPUT");
      // some code
    }
EN

回答 2

Stack Overflow用户

发布于 2016-12-23 14:04:27

JCO.Functions中的所有参数都应为字符串。尝试将日期值也设置为字符串。在SAP中,日期字符串的格式是"yyyyMMdd“,如"20161223”。

票数 0
EN

Stack Overflow用户

发布于 2016-12-24 17:27:25

名为DATE的RFM导入参数显然不是日期类型,而是结构类型。在这种情况下,您必须在JCo端使用JCoStructure实例,而不是字符串。

但是我更愿意假设您在ABAP端定义远程功能模块接口日期时犯了一个错误,并且您希望这个导入参数YP_ECA_VIN实际上是ABAP DATE类型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41295925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档