我正在使用C#编写一个项目附加(VSTO),以便以编程方式生成一个挣值图(计划工作量与实际工作量与完成的实际工作),并且我希望将每周实际工作量数据存储在Microsoft 2016 (MSP)文件(.mpp)中。
在MSP中:我们不需要知道每个活动花费了多少精力。对于这个图表,我只需要每周整个项目的实际努力。我们使用不同的系统来度量计划的工作量和每个开发活动的实际工作量。
我想存储的示例数据集:Week# Hrs per week 2018-W16 900.00 2018-W17 1038.50 2018-W18 811.25
我有推导/存储“计划工作”和“实际工作已完成”的解决方案。如果我能够将这个“每周实际工作”数据存储在MSP文件中,那么最后一个部分将得到解决。
AFAIK,并避免使用XY问题:下面列出的限制使我无法使用内置MSP特性(生成图形)或数据存储(存储我的自定义数据)。
约束条件
Resource Names、Duration、Start、Finish、Predecessor、Successor。这样做会改变计划,并招致建筑师和项目经理对我的愤怒。- Extracting this data from MSP and time-tracking systems, then manually creating dataset to generate Earned Value Chart (in Excel) takes too long, want to automate this.
- Assigning time-phased actual hours onto tasks (via `View > Task Usage`) has consequence of MSP automatically adjusting `Duration` on that task, which violates constraint above.
- Tasks in MSP and items in external time-tracking systems are not mapped one-to-one. Manually deciding which hours go onto which MSP tasks is onerous and time-consuming. Storing hours with dates on MSP tasks suffers consequences mentioned in previous issue (auto-adjustment of `Duration`).
Auto-scheduling。允许手动调度任务,只要它们是单独手动设置的(例如:手动重写Start)。我可以在操作期间暂时禁用Auto-scheduling (通过Microsoft.Office.Interop.MSProject.Application.Calculation = PjCalculation.pjManual),只要之后恢复它。我试过的
Duration = 0 days创建虚拟任务,并通过View > Task Usage记录小时数。当为此任务分配任何小时时,MSP会相应地调整Duration。由于这个任务现在出现在项目计划中,我怀疑Arch/PM不会批准,因为他们是根据项目中的Duration值进行计算的。View > Resource Usage为其分配小时。MSP会防止这种情况发生,直到我将用户分配给任务为止。将这个虚拟用户分配给任何任务,然后分配任何小时数据,将导致MSP自动调整Duration。Duration = 0、Start = last day of week、Finish = last day of week,并将每周实际时间存储在自定义字段中(以避免MSP自动调整Duration)。重复每周的项目执行。- Technically this works, but requires user applying a filter (via `View > Data > Filter`) to avoid seeing all these extra dummy tasks (one per week) appearing within the project. I'm hoping for a better solution to store this data, or a better way to hide this data from user.
custom data storage ms project的搜索返回有关使用自定义字段的信息,这还不够解决。发布于 2018-04-20 19:57:15
听起来您的核心问题是:我想将项目级别(而不是任务/资源/外派数据)存储在.mpp flie的某个地方。看一看类似的讨论我可以在哪里保存用户输入的设置?;有关于自定义字段的扩展信息,我认为这些信息可以解决您的问题。
https://stackoverflow.com/questions/49948583
复制相似问题