首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Primavera Integration无法创建用户许可证

Primavera Integration无法创建用户许可证
EN

Stack Overflow用户
提问于 2014-10-17 21:49:26
回答 1查看 164关注 0票数 0

我试图创建一个用户,它的工作就像一个魅力。但我不能给他/她分配一个用户许可证。我收到了错误信息。字段ObjectId尚未加载或设置。未设置哪个字段ObjectId?

代码语言:javascript
复制
    User user = new User(_sessionHelper.getSession());
    user.setName(importResourcesData.getSsoID());
    user.setPersonalName(importResourcesData.getFirstName() + " " + importResourcesData.getLastName());
    User.setEmailAddress(importResourcesData.getEmailAdress());
    user.setPassword(importResourcesData.getSsoID(), importResourcesData.getSsoID());
    user.setAllResourceAccessFlag(false);
    user.setGlobalProfileObjectId(getDefaultGlobalSecurityProfile());

    ObjectId userId = user.create(); //WORKS!!!
   
      BOIterator<UserLicense> loadResources = _sessionHelper.getElm().loadUserLicenses(new String[]{"LicenseType"}, "LicenseType = 'Timesheets'", null);
      Userlicense ul = loadResources.next();
      //This Fails!
      user.createUserLicense(ul);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-31 00:48:41

一般来说,集成API的结构使得一旦调用了对对象的创建或更新,就不应该继续使用该对象。相反,您应该从API中读取一个新对象,并继续使用该新对象。在您的例子中,您将在调用user.create()之后添加类似的内容

代码语言:javascript
复制
final User user2 = User.load(_sessionHelper.getSession(), null, userId);

然后在调用user2时使用user代替createUserLicense

代码语言:javascript
复制
user2.createUserLicense(ul);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26433906

复制
相关文章

相似问题

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