gpt4 book ai didi

java - Primavera Integration API 无法创建用户许可证

转载 作者:行者123 更新时间:2023-12-01 12:25:02 25 4
gpt4 key购买 nike

我正在尝试创建一个用户,这就像一个魅力。但我无法为他/她分配用户许可证。我收到错误消息。 Field ObjectId尚未加载或设置。什么Field ObjectId尚未设置?

    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);


最佳答案

一般来说,集成 API 的结构使得一旦您对对象调用 create 或 update ,您就不应该继续使用该对象。相反,您应该从 API 读取一个新对象并继续使用该新对象。在您的情况下,您可以在调用 user.create()

之后添加类似的内容
final User user2 = User.load(_sessionHelper.getSession(), null, userId);

然后,您可以在调用 createUserLicense 时使用 user2 代替 user

user2.createUserLicense(ul);

关于java - Primavera Integration API 无法创建用户许可证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26433906/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com