如何使用PSI使用查找表值更新企业自定义字段? [英] How to update an Enterprise Custom Field with a lookup table value using PSI?
问题描述
大家好,
我正在尝试使用PSI修改项目级ECF值和相应的查找表。我能够读取CODE_VALUE并使用LookupTableTreesRow,我可以获得CODE_VALUE的相应LT_VALUE_FULL。我的问题是如何更新
CODE_VALUE,以便在我的项目属性窗口中,我可以看到新的ECF值。在我的队列中,我可以看到"来自PSI的项目更新"。成功的工作但是当我查看我的项目时,价值不会改变。以下是我的代码。我不确定
我是否正确操作或者我是否缺少任何步骤:
I'm trying to use PSI to modify a project-level ECF value with a corresponding lookup table. I am able to read the CODE_VALUE and using LookupTableTreesRow, I can get the corresponding LT_VALUE_FULL of the CODE_VALUE. My question is how can I update the CODE_VALUE so that in my project properties window, I can see the new ECF value. In my queue I can see the "Project Update from PSI" job that is successful but when I look at my project, the value is not changed. Below is my code. I'm not sure if I did it correctly or if I am missing any step:
Guid codeValue =
new
Guid < span style ="font-size:x-small">();
Guid codeValue = new Guid();
WebSvcProject。
WebSvcProject.
{
{
projectGuid = projectRow.PROJ_UID;
projectGuid = projectRow.PROJ_UID;
project.CheckOutProject(projectGuid,sessionUid,
project.CheckOutProject(projectGuid, sessionUid,
WebSvcProject。
WebSvcProject.
dsProject = project.ReadProject(projectGuid,WebSvcProject。
dsProject = project.ReadProject(projectGuid, WebSvcProject.
{
{
codeValue = rowProjectCF.CODE_VALUE;
codeValue = rowProjectCF.CODE_VALUE;
WebSvcLookupTable。
WebSvcLookupTable.
dsLookupTable = lookupTable.ReadLookupTablesByUids(ltUidList,
dsLookupTable = lookupTable.ReadLookupTablesByUids(ltUidList,
{
{
divName = rowLookupTable.LT_VALUE_FULL;
divName = rowLookupTable.LT_VALUE_FULL;
}
}
rowProjectCF.CODE_VALUE =
rowProjectCF.CODE_VALUE =
rowProjectCF.AcceptChanges();
rowProjectCF.AcceptChanges();
dsProject.AcceptChanges();
dsProject.AcceptChanges();
project.QueueUpdateProject(jobUid,sessionUid,dsProject,
project.QueueUpdateProject(jobUid, sessionUid, dsProject,
WaitForQueue(queue,jobUid);
WaitForQueue(queue, jobUid);
jobUid =
project.QueueCheckInProject(jobUid,projectGuid,
project.QueueCheckInProject(jobUid, projectGuid,
codeValue = rowProjectCF.CODE_VALUE;
codeValue = rowProjectCF.CODE_VALUE;
{
{
divName = rowLookupTable.LT_VALUE_FULL;
divName = rowLookupTable.LT_VALUE_FULL;
}
}
}
}
}
}
提前致谢,
Noynoy
Noynoy
推荐答案
大家好,
我忘了提到我想要更新的ECF使用层面文本查找表。
I forgot to mentioned that the ECF that I am trying to update use heirarchical text lookup table.
提前感谢。
Noynoy
这篇关于如何使用PSI使用查找表值更新企业自定义字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!