Чтение и запись информации Rate Scale

Эффективное управление назначениями ресурсов в планировании проектов требует не только отслеживания затрат и объёма работы, но и корректировки Rate Scale настройки. Rate Scale определяет, как затраты ресурсов применяются во времени (за час, за день, за неделю и т.д.). С помощью Aspose.Tasks for .NET вы можете программно читать и изменять эту информацию, обеспечивая гибкую автоматизацию проектов и интеграцию с финансовыми системами.

Чтение и запись информации RateScale для назначения ресурса

Aspose.Tasks for .NET предоставляет ResourceAssignment class, который включает RateScale property. Это свойство контролирует, как рассчитываются и распределяются ставки по назначениям в пределах временной шкалы проекта.

В следующем примере показано, как прочитать и обновить RateScale свойство назначения ресурса. Пример загружает существующий файл проекта, обращается к назначению, изменяет его свойство RateScale и сохраняет обновлённый проект.

 1Project project = new Project("New Project.mpp");
 2
 3Task task = project.RootTask.Children.Add("t1");
 4
 5Resource materialResource = project.Resources.Add("materialResource");
 6materialResource.Set(Rsc.Type, ResourceType.Material);
 7
 8Resource nonMaterialResource = project.Resources.Add("nonMaterialResource");
 9nonMaterialResource.Set(Rsc.Type, ResourceType.Work);
10
11ResourceAssignment materialResourceAssignment = project.ResourceAssignments.Add(task, materialResource);
12materialResourceAssignment.Set(Asn.RateScale, RateScaleType.Week);
13
14ResourceAssignment nonMaterialResourceAssignment = project.ResourceAssignments.Add(task, nonMaterialResource);
15nonMaterialResourceAssignment.Set(Asn.RateScale, RateScaleType.Week);
16
17project.Save("output.mpp", SaveFileFormat.MPP);
18
19project = new Project("output.mpp");
20
21ResourceAssignment materialResourceAssignment2 = project.ResourceAssignments.GetByUid(1);
22Console.WriteLine(materialResourceAssignment2.Get(Asn.RateScale));
23
24// only material resource assignments can have non-zero rate scale value.
25ResourceAssignment nonMaterialResourceAssignment2 = project.ResourceAssignments.GetByUid(2);

В этом примере код сначала получает текущее RateScale значение, затем обновляет его на новую шкалу (например, с почасовой на посуточную). Это особенно полезно при адаптации данных проекта к различным стандартам отчётности или соглашениям об оплате ресурсов.

Часто задаваемые вопросы

Вопрос: Для чего используется свойство RateScale?

Вопрос: Нужно ли устанавливать Microsoft Project, чтобы читать или обновлять RateScale?

Вопрос: Могу ли я изменить значение RateScale и сохранить его обратно в файл MPP?

Вопрос: Влияет ли обновление RateScale на стоимость назначений?

Заключение

В этой статье мы рассмотрели, как читать и обновлять RateScale свойство назначения ресурса с помощью Aspose.Tasks for .NET. Программно изменяя значения RateScale, разработчики могут обеспечить согласованность финансовой отчётности, адаптировать назначения под различные методы выставления счетов и плавно интегрировать данные проекта в собственные решения.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.