این مقاله ساده جزئیاتی در مورد نحوه افزودن روزهای هفته در MPP با استفاده از C# با ارائه جزئیات در مورد راه اندازی محیط و استفاده از کد مثال ارائه می دهد. این شامل تمام منابع لازم برای توسعه این برنامه بدون وابستگی به MS Project یا هر نرم افزار مدیریت MPP دیگری برای تعریف روزهای هفته در Microsoft Project با استفاده از C# است.
مراحل اضافه کردن روزهای هفته به فایل MPP با استفاده از C#
- با استفاده از مدیر بسته NuGet، محیط توسعه را برای گنجاندن Aspose.Tasks for .NET ایجاد کنید
- یک فایل MPP جدید با استفاده از یک نمونه از کلاس Project ایجاد کنید
- یک نمونه از کلاس Calendar برای افزودن یک تقویم جدید و روزهای هفته ایجاد کنید
- زمان های کاری را برای نیم روز مشخص اضافه کنید و آنها را به تقویم اضافه کنید
- Save فایل پروژه حاصل را به عنوان فایل MPP روی دیسک
مراحل فوق الذکر در *C# با استفاده از تماس های بسیار ساده API، روزهای هفته را در فایل MPP اضافه می کند. این فرآیند با بارگیری یک فایل MPP موجود یا ایجاد یک فایل MPP جدید با استفاده از نمونه ای از کلاس Project آغاز می شود. سپس با استفاده از نمونه ای از کلاس Calendar، یک تقویم جدید شامل روزهای هفته اضافه می شود که پس از آن زمان های کاری آن روز اضافه می شود. در نهایت، فایل MPP با استفاده از شمارشگر SaveFileFormat روی دیسک ذخیره می شود.
کد برای تعریف روزهای هفته در MPP با استفاده از C#
using System; | |
using Aspose.Tasks; | |
using Aspose.Tasks.Saving; | |
namespace KbTasks | |
{ | |
public class WeekdaysForCalender | |
{ | |
public static void AddWeekdaysForCalender() | |
{ | |
string FilePath = @"C:/TestData/"; | |
// Applying product license to create the task with the calendar | |
License TaskCalendarLic = new License(); | |
TaskCalendarLic.SetLicense(FilePath + "Conholdate.Total.Product.Family.lic"); | |
// Create an empty project file using an instance of the Project class | |
Project taskProject = new Project(); | |
// Define Calendar | |
Calendar calendar = taskProject.Calendars.Add("Test Calendar1"); | |
// Include the working days Monday through Thursday with default timings | |
calendar.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday)); | |
calendar.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday)); | |
calendar.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday)); | |
calendar.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Thursday)); | |
calendar.WeekDays.Add(new WeekDay(DayType.Saturday)); | |
calendar.WeekDays.Add(new WeekDay(DayType.Sunday)); | |
// Set the Friday as short working day | |
WeekDay myWeekDay = new WeekDay(DayType.Friday); | |
// Set the working time. The only time part of DateTime is important | |
WorkingTime firstWorkingTime = new WorkingTime(); | |
firstWorkingTime.FromTime = new DateTime(2022, 1, 1, 9, 0, 0, 0); | |
firstWorkingTime.ToTime = new DateTime(2022, 1, 1, 12, 0, 0, 0); | |
WorkingTime secondWorkingTime = new WorkingTime(); | |
secondWorkingTime.FromTime = new DateTime(2022, 1, 1, 13, 0, 0, 0); | |
secondWorkingTime.ToTime = new DateTime(2022, 1, 1, 16, 0, 0, 0); | |
// Adding working time to the day | |
myWeekDay.WorkingTimes.Add(secondWorkingTime); | |
myWeekDay.WorkingTimes.Add(secondWorkingTime); | |
myWeekDay.DayWorking = true; | |
// Adding weekdays to the calendar | |
calendar.WeekDays.Add(myWeekDay); | |
// Saving the MPP file on the disk | |
taskProject.Save(FilePath+"Project_DefineCalendarWeekdays_out.mpp", SaveFileFormat.Mpp); | |
} | |
} | |
} |
برای افزودن روزهای هفته به داخل فایل MPP در سی شارپ، با بارگیری یک فایل MPP یا ایجاد یک فایل جدید از ابتدا شروع می کنیم. کلاس Calendar به شما امکان می دهد انواع مختلفی از تقویم ها از جمله شیفت های 24 ساعته، شبانه و استاندارد را اضافه کنید. با استفاده از نمونه کلاس WorkingTime می توانید هر روزی را برای کار تنظیم کنید و همچنین زمان کاری را برای یک روز خاص تنظیم کنید. فایل پروژه را می توان در فرمت های دیگر از جمله MPP، XML و PDF ذخیره کرد.
در این مبحث یاد گرفتیم چگونه روزهای هفته را در فایل MPP با استفاده از C# تعریف کنیم. اگر علاقه مند به تبدیل MPP به SVG هستید، مقاله نحوه تبدیل MPP به SVG با استفاده از سی شارپ را دنبال کنید.