通过使用ModelService无法更新以前的数据。

2020-09-29 20:21发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在使用ModelServic...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在使用ModelService的save()方法将数据保存在itemType中。 但是我无法更新该特定行的数据。 我想使用ModelService更新行。 我的代码中是否缺少任何键:

最终字符串查询="从{user}中选择{pk},{name}"; 最终SearchResult搜索= flexibleSearchService.search(query); 最终列表userModel = search.getResult();

 最终字符串query1 ="从{Order}中选择{pk}";
      最终SearchResult  search1 = flexibleSearchService.search(query1);
      最终List  orderModel = search1.getResult();


      用于(最终UserModel userModel2:userModel)
      {
          int orderCount = 0;
          int loyaltyPoints = 0;
          最后的日历c = Calendar.getInstance();

          用于(最终OrderModel orderModel2:orderModel)
          {
              最终日期creationTime = orderModel2.getCreationtime();
              c.setTime(creationTime);
              c.add(Calendar.YEAR,1);
              最终日期expiryDate = c.getTime();

              如果(userModel2.getPk()。equals(orderModel2.getUser()。getPk()))
              {
                  orderCount = orderCount + 1;
                  忠诚度积分= orderCount * 1;

                  最终的LoyaltyModel loyaltyModel = new LoyaltyModel();

                  final String query2 ="从{忠诚度}中选择{pk},其中{user} ='" + orderModel2.getUser()。getName()+"'";
                  最终SearchResult  search2 = flexibleSearchService.search(query2);
                  最终List  loyaltyModel1 = search2.getResult();

                  for(最终迭代器迭代器= loyaltyModel1.iterator(); iterator.hasNext();)
                  {
                      final LoyaltyModel loyaltyModel2 =(LoyaltyModel)iterator.next();

                      如果(!loyaltyModel2.getUser()。equals(orderModel2.getUser()。getName()))
                      {
                          loyaltyModel.setUser(orderModel2.getUser()。getName());
                          loyaltyModel.setLoyaltyNumber(userModel2.hashCode());
                          loyaltyModel.setLoyaltyPoints(loyaltyPoints);
                          loyaltyModel.setExpiryDate(expiryDate);

                          modelService.save(loyaltyModel);

                      }
                  }
              }
          }
      }