Assigment.SetField 方法?
Assigment.SetField Method?
我正在开发一个函数,我需要访问给定任务的资源分配字段。分配可以在字段中有自己的值,并且可以在 MS Project 的任务分配视图中设置。
我需要在分配的字段上设置值。 Task 对象有一个 SetField 方法但 Assigment 对象没有,是否有任何等效的方法来调用 SetField 但对于 assigment 对象?我可以编写一个大的 switch 语句,它可以像这样接收字段常量作为参数:
我的问题是 PjField Enum 实际上并没有涵盖所有可能的字段,特别是,它没有在枚举中调用很多企业字段。例如,188776472 是我正在测试的项目中企业字段的 FieldID,但在 Enum 中找不到它。
这可以使用应用程序对象的 SetField 方法来完成,但需要注意的是它适用于任何活动的(选定的)对象。例如,要为“任务分配状况”视图中的活动分配设置企业字段“项目经理”:
SetField "Program Manager", "Kenny"
诀窍是在“任务分配情况”视图中激活正确的行。尝试这样的事情,而不是 FieldID,您使用字段名称:
ViewApply "Task Usage"
Find "UniqueID", "equals", a.Task.UniqueID
Find "Name", "equals", a.Resource.Name
SetField FieldName, Value
当然,添加代码以验证您是否找到了正确的行,return 到以前的活动视图等,并适应 c#。
我正在开发一个函数,我需要访问给定任务的资源分配字段。分配可以在字段中有自己的值,并且可以在 MS Project 的任务分配视图中设置。
我需要在分配的字段上设置值。 Task 对象有一个 SetField 方法但 Assigment 对象没有,是否有任何等效的方法来调用 SetField 但对于 assigment 对象?我可以编写一个大的 switch 语句,它可以像这样接收字段常量作为参数:
我的问题是 PjField Enum 实际上并没有涵盖所有可能的字段,特别是,它没有在枚举中调用很多企业字段。例如,188776472 是我正在测试的项目中企业字段的 FieldID,但在 Enum 中找不到它。
这可以使用应用程序对象的 SetField 方法来完成,但需要注意的是它适用于任何活动的(选定的)对象。例如,要为“任务分配状况”视图中的活动分配设置企业字段“项目经理”:
SetField "Program Manager", "Kenny"
诀窍是在“任务分配情况”视图中激活正确的行。尝试这样的事情,而不是 FieldID,您使用字段名称:
ViewApply "Task Usage"
Find "UniqueID", "equals", a.Task.UniqueID
Find "Name", "equals", a.Resource.Name
SetField FieldName, Value
当然,添加代码以验证您是否找到了正确的行,return 到以前的活动视图等,并适应 c#。