Microsoft Project adalah perangkat lunak manajemen proyek populer yang memudahkan manajer proyek untuk mengelola proyek secara efisien. Ini memungkinkan manajer membuat tugas dan sumber daya, menetapkan tugas ke sumber daya, melacak kemajuan proyek, mengelola anggaran, dan melakukan operasi terkait proyek lainnya. Untuk membuat dan mengelola file MS Project secara terprogram, Microsoft menyediakan MS Office Automation. Namun, seiring dengan kekurangan lainnya, Anda harus menginstal MS Office. Untuk mengisi celah ini, Aspose masuk untuk memberi Anda solusi otomatisasi MS Project untuk aplikasi .NET sebagai Aspose.Tasks for .NET.

Aspose.Tasks for .NET adalah API kaya fitur yang memungkinkan Anda membuat file Proyek MS (.mpp/.xml) secara terprogram menggunakan C# atau VB.NET. Selain itu, ia menawarkan berbagai fitur untuk bekerja dengan tugas, sumber daya, dan kalender. Pada artikel ini, saya akan menunjukkan cara menggunakan Aspose.Tasks for .NET untuk membuat file Proyek MS dan bekerja dengan tugas dan sumber daya menggunakan C#. Sisa artikel ini dibagi menjadi beberapa bagian berikut.

Buat File Proyek MS menggunakan C#

MPP adalah format file milik Microsoft yang digunakan untuk file MS Project. Namun, Anda juga dapat menyimpan data proyek dalam file XML untuk dibagikan di antara berbagai aplikasi. Membuat proyek baru dari awal adalah tugas yang sederhana dan dapat dilakukan dengan menggunakan langkah-langkah berikut:

Contoh kode berikut menunjukkan cara membuat file MS Project menggunakan C#.

Simpan File Proyek MS sebagai MPP

// Buat proyek baru
Project project = new Project();

// Simpan sebagai file .mpp
project.Save("New Project.mpp", SaveFileFormat.MPP);

Simpan File Proyek MS sebagai XML

// Buat proyek baru
Project project = new Project();

// Simpan sebagai file .xml
project.Save("EmptyProjectSaveXML_out.xml", SaveFileFormat.XML);

Tambahkan Tugas ke File MS Project menggunakan C#

File MS Project yang kosong tidak berguna tanpa tugas dan sumber daya. Jadi mari kita lihat cara membuat dan menambahkan tugas ke proyek. Tugas bisa berupa tugas tunggal atau tugas ringkasan yang berisi sekelompok subtugas di dalamnya. Berikut ini adalah langkah-langkah untuk menambahkan tugas ke file MS Project.

  • Buat dan inisialisasi objek Project.
  • Tambahkan tugas ringkasan baru ke koleksi Tugas proyek menggunakan metode Project.RootTask.Children.Add(string).
  • Tambahkan subtugas ke tugas ringkasan menggunakan metode Task.Children.Add(string).
  • Simpan proyek menggunakan metode Project.Save().

Contoh kode berikut menunjukkan cara membuat dan menambahkan tugas ke file MS Project menggunakan C#.

// Buat proyek baru
Project project = new Project();

// Tambahkan tugas dan sub tugas
Task task = project.RootTask.Children.Add("Summary1");
Task subtask = task.Children.Add("Subtask1");

// Menyimpan file
project.Save("CreateTasks_out.xml", SaveFileFormat.XML);

Contoh kode berikut menunjukkan cara menyetel berbagai properti tugas seperti durasi, tanggal/waktu mulai, dll.

// Buat proyek
Project project = new Project();

// Tambahkan tugas dan atur properti tugas
Task task = project.RootTask.Children.Add("Task1");
task.Set(Tsk.Start, project.RootTask.Get(Tsk.Start).AddDays(1));
task.Set(Tsk.Name, "new name");

Tambahkan Sumber Daya ke File Proyek MS menggunakan C#

Sumber daya adalah entitas yang seharusnya melakukan tugas-tugas dalam sebuah proyek. Oleh karena itu, sebuah proyek tidak akan mungkin terjadi tanpa sumber daya untuk mengerjakannya. Jadi mari kita periksa cara membuat dan menambahkan sumber daya ke proyek. Berikut ini adalah langkah-langkah untuk menambahkan sumber daya ke file MS Project.

  • Buat proyek baru menggunakan kelas Proyek.
  • Tambahkan resource baru ke koleksi Resources project menggunakan metode Project.Resources.Add(string).
  • Simpan proyek menggunakan metode Project.Save().

Contoh kode berikut menunjukkan cara menambahkan sumber daya ke file MS Project menggunakan C#.

// Buat proyek
Project project = new Project();

// Tambahkan sumber daya
Resource resource = project.Resources.Add("Rsc");

// Simpan proyek
project.Save("CreateResources_out.xml", SaveFileFormat.XML);

Contoh kode berikut menetapkan properti sumber daya seperti tanggal/waktu mulai, jenis, dll.

// Buat proyek
Project project = new Project();

// Tambahkan sumber daya
Resource resource = project.Resources.Add("Rsc");

// Simpan proyek
project.Save("CreateResources_out.xml", SaveFileFormat.XML);

Tetapkan Tugas ke Sumber Daya dalam Proyek menggunakan C#

Setelah Anda menyelesaikan penambahan tugas dan sumber daya dalam proyek, Anda dapat menentukan tugas mana yang akan dilakukan oleh sumber daya mana. Dengan demikian, Anda akan menetapkan tugas ke setiap sumber daya. Berikut adalah langkah-langkah untuk menetapkan tugas ke sumber daya dalam sebuah Proyek.

  • Buat atau muat proyek menggunakan kelas Proyek.
  • Tambahkan sumber daya baru ke proyek dan atur propertinya seperti format tanggal, tanggal mulai, dll.
  • Tambahkan tugas baru ke proyek dan atur propertinya seperti tanggal/waktu mulai, durasi, dan lain-lain.
  • Lakukan penetapan tugas dengan menambahkan tugas dan sumber dayanya masing-masing ke koleksi Project.ResourceAssignments.
  • Simpan proyek menggunakan metode Project.Save().

Berikut ini adalah contoh kode lengkap tentang cara membuat dan menetapkan tugas ke sumber daya dalam file Proyek MS.

// Buat proyek
Project project = new Project("New Project.mpp")
{
    CalculationMode = CalculationMode.Automatic
};

// Tetapkan properti
project.Set(Prj.DateFormat, DateFormat.DateDddMmDdYy);
project.Set(Prj.StartDate, new DateTime(2019, 9, 16, 9, 0, 0));
project.Set(Prj.NewTasksAreManual, false);
project.Set(Prj.ActualsInSync, false);

// Tambahkan sumber daya
Resource workResource = project.Resources.Add("Servente (Work)");
workResource.Set(Rsc.Name, "Servente (Work)");
workResource.Set(Rsc.Initials, "S");
workResource.Set(Rsc.Type, ResourceType.Work);
workResource.Set(Rsc.StandardRateFormat, RateFormatType.Hour);
workResource.Set(Rsc.Code, "1503");

Resource materialResource = project.Resources.Add("Tijolo (Material)");
materialResource.Set(Rsc.Name, "Tijolo (Material)");
materialResource.Set(Rsc.Initials, "T");
materialResource.Set(Rsc.Type, ResourceType.Material);
materialResource.Set(Rsc.StandardRateFormat, RateFormatType.MaterialResourceRate);
materialResource.Set(Rsc.Code, "21341");

// Tambahkan tugas
Task task1 = project.RootTask.Children.Add("Task - 01");
task1.Set(Tsk.IsRollup, new NullableBool(true));
task1.Set(Tsk.IsPublished, new NullableBool(false));
Task task2 = task1.Children.Add("Task - 01.01");
task2.Set(Tsk.IsRollup, new NullableBool(true));
task2.Set(Tsk.IsPublished, new NullableBool(false));
Task task3 = task2.Children.Add("Task - 01.01.001");
task3.Set(Tsk.IsEstimated, new NullableBool(false));
task3.Set(Tsk.Start, new DateTime(2019, 9, 16, 9, 0, 0));
task3.Set(Tsk.Duration, project.GetDuration(10, TimeUnitType.Day));
task3.Set(Tsk.Work, project.GetDuration(10, TimeUnitType.Day));
task3.Set(Tsk.IsRollup, new NullableBool(true));
task3.Set(Tsk.IsPublished, new NullableBool(false));

// Tetapkan tugas
ResourceAssignment assignment1 = project.ResourceAssignments.Add(task3, materialResource);
assignment1.Set(Asn.Delay, project.GetDuration(40, TimeUnitType.Hour));
assignment1.Set(Asn.Start, new DateTime(2019, 9, 23, 9, 0, 0));
assignment1.Set(Asn.Finish, new DateTime(2019, 9, 27, 18, 0, 0));
ResourceAssignment assignment2 = project.ResourceAssignments.Add(task3, workResource);
assignment2.Set(Asn.Work, project.GetDuration(56, TimeUnitType.Hour));
assignment2.Set(Asn.Start, new DateTime(2019, 9, 16, 9, 0, 0));
assignment2.Set(Asn.Finish, new DateTime(2019, 9, 24, 18, 0, 0));

// untuk mencocokkan MPP yang diharapkan sepenuhnya
assignment2.Set(Asn.WorkContour, WorkContourType.Contoured);
task3.Set(Tsk.IsManual, new NullableBool(true));
task1.Set(Tsk.IsManual, new NullableBool(true));

// Simpan proyek
project.Save("Assignment_Dates.mpp", SaveFileFormat.MPP);

Tambahkan Kalender ke Proyek menggunakan C#

Kalender juga merupakan salah satu entitas utama proyek yang digunakan untuk menentukan jadwal proyek. Kalender memungkinkan manajer proyek membuat garis waktu untuk sebuah proyek. Berikut adalah langkah-langkah untuk menambahkan kalender ke proyek.

Contoh kode berikut menunjukkan cara menambahkan kalender ke Proyek menggunakan C#.

// Buat contoh proyek
Project project = new Project();

// Tentukan Kalender
Calendar cal = project.Calendars.Add("Calendar1");

// Tambahkan hari kerja dari Senin hingga Kamis dengan pengaturan waktu default
cal.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
cal.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
cal.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
cal.WeekDays.Add(WeekDay.CreateDefaultWorkingDay(DayType.Thursday));
cal.WeekDays.Add(new WeekDay(DayType.Saturday));
cal.WeekDays.Add(new WeekDay(DayType.Sunday));

// Tetapkan hari Jumat sebagai hari kerja singkat
WeekDay myWeekDay = new WeekDay(DayType.Friday);

// Mengatur waktu kerja. Hanya bagian waktu dari DateTime yang penting
WorkingTime wt1 = new WorkingTime();
wt1.FromTime = new DateTime(1, 1, 1, 9, 0, 0, 0);
wt1.ToTime = new DateTime(1, 1, 1, 12, 0, 0, 0);
WorkingTime wt2 = new WorkingTime();
wt2.FromTime = new DateTime(1, 1, 1, 13, 0, 0, 0);
wt2.ToTime = new DateTime(1, 1, 1, 16, 0, 0, 0);
myWeekDay.WorkingTimes.Add(wt1);
myWeekDay.WorkingTimes.Add(wt2);
myWeekDay.DayWorking = true;
cal.WeekDays.Add(myWeekDay);

// Simpan proyek
project.Save("Project_DefineCalendarWeekdays_out.xml", SaveFileFormat.XML);

Unduh atau Instal

Anda dapat mengunduh Aspose.Tasks for .NET DLL atau menginstalnya di proyek Anda menggunakan NuGet.

Coba Aspose.Tasks for .NET Gratis

Aspose menawarkan lisensi sementara gratis untuk mencoba produknya tanpa batasan uji coba. Anda bisa mendapatkannya dari sini.

Lihat juga