
Aspose.Tasks Cloud Python SDK
Python REST API で MS Project ファイルを作成・変換
Python プロジェクト管理クラウド API は、プロジェクトマネージャーが Microsoft Project の MPT、MPP、MPX および Oracle Primavera の XER、XML、PrimaveraP6XML ファイルを Python REST API を通じて生成、読み取り、操作、変換できるようにします。
Aspose.Tasks Cloud Python SDK とは?
Aspose.Tasks Cloud Python SDK は、Microsoft Project(MPP)や Oracle Primavera 形式などのプロジェクト管理ファイルをスムーズに扱える便利なツールキットです。この SDK には、プロジェクトファイルの作成、管理、変換を支援するさまざまな機能が備わっており、堅牢なプロジェクト管理アプリケーションを開発するために必要なツールを提供します。クラウドベースの SDK を使用することで、実際の Microsoft Project や Primavera ソフトウェアをインストールせずに、Python アプリケーションにプロジェクト管理機能を簡単に組み込むことができます。この SDK の大きな利点は、Microsoft Project や Primavera に依存しなくて済む点です。SDK がクラウド上で動作するため、Windows、macOS、Linux など異なるシステム上で動作する Python アプリにシームレスにプロジェクト管理機能を追加でき、互換性の問題を心配する必要がなくなります。
Aspose.Tasks Cloud Python SDK は、プロジェクト管理タスクの自動化と簡素化に役立つ優れたツールです。Microsoft Project(MPT、MPP、MPX)や Primavera P6(XER、XML)ファイルの取り扱いに便利です。数行のコードで、開発者はプロジェクトファイルを HTML、PDF、XPS、TXT、CSV、XLSX、SVG、TIFF、JPEG、PNG、BMP など多様な形式に変換できます。Aspose.Tasks Cloud Python SDK は便利なツールであり、プロジェクト文書プロパティの調整、タスクの更新、リソースの操作、カレンダーの管理、レポート作成、タスクのリンク付け、タスクの再編成など、さまざまな操作が可能です。クラウド上でプロジェクトファイルにアクセス・編集できるため、スケーラビリティとチームワークを実現し、さまざまな場所からグループがプロジェクトファイルにアクセスできます。Aspose.Tasks Cloud を使用すれば、ファイルの変換、タスクシーケンスの管理、レポートの生成など、プロジェクト管理業務をシームレスに統合するために必要なすべてのツールが揃っています。
Aspose.Tasks Cloud Python SDK の開始方法
推奨される Aspose.Tasks Cloud Python SDK のインストール方法は PyPI 経由です。スムーズなインストールのために以下のコマンドを使用してください。
Python でプロジェクト管理ファイルを変換する
Aspose.Tasks Cloud Python SDK の最も有用な機能のひとつは、プロジェクト管理ファイルをさまざまな形式に変換できることです。SDK を使用すると、Microsoft Project ファイル(MPP)を PDF、XML、XLSX、Primavera 形式(P6XML と XER)などに変換でき、プラットフォーム間でプロジェクト情報を簡単に共有できます。このコードサンプルは、開発者が MPP ファイルをクラウドストレージにアップロードし、SDK を使用して PDF 形式に変換する方法を示しています。
Python REST API を使用して MPP ファイルを PDF に変換する方法
api_client = asposetaskscloud.ApiClient()
api_client.configuration.host = 'https://api.aspose.cloud'
api_client.configuration.api_key['api_key'] = 'MY_CLIENT_SECRET'
api_client.configuration.api_key['app_sid'] = 'MY_CLIENT_ID'
tasks_api = asposetaskscloud.TasksApi(api_client)
file_name = 'SomeSeriousPlan.mpp'
upload_request = asposetaskscloud.models.requests.UploadFileRequest(os.path.join(self.remote_test_folder, file_name), file_name)
upload_result = self.tasks_api.upload_file(upload_request)
request = asposetaskscloud.models.requests.GetReportPdfRequest(file_name, ReportType.MILESTONES)
result = tasks_api.get_report_pdf(request)
クラウドアプリでのプロジェクトタスク管理
Aspose.Tasks Cloud Python SDK は、Python ベースのクラウドアプリケーション内でプロジェクトファイルのタスクを作成・管理するための包括的な API を提供します。数行のコードで、開発者はタスクの作成、更新、削除、割り当て、タスクの依存関係設定、制約の定義、ベースラインの管理が可能です。この機能により、複雑なプロジェクトスケジュールを簡単に自動化・管理できます。以下の例では、2 つのタスクを作成し、「Finish-to-Start」リンクで依存関係を設定しています。タスクの依存関係は、プロジェクトのワークフローを効果的に管理する上で重要です。
Python アプリ内でタスクを作成・管理する方法
# プロジェクトに新しいタスクを作成
task = models.Task(name="Develop Backend", start="2024-10-23", duration=5)
created_task = api.create_task(file_name, task)
# タスク依存関係を設定(Finish-to-Start)
dependent_task = models.Task(name="Develop Frontend", start="2024-10-30", duration=5)
created_dependent_task = api.create_task(file_name, dependent_task)
dependency = models.TaskLink(predecessor_uid=created_task.uid, successor_uid=created_dependent_task.uid, link_type="FinishToStart")
api.create_task_link(file_name, dependency)
Python API でプロジェクトカレンダーを扱う
プロジェクトスケジュールを管理するには、作業時間、祝日、非稼働日を適切に扱う必要があります。Aspose.Tasks Cloud Python SDK は、クラウドベースの Python アプリケーション内で作業時間、祝日、カスタム作業スケジュールなどを定義できるプロジェクトカレンダー管理機能を提供します。以下の例は、クラウドベースの Python アプリケーションでプロジェクトにカレンダーを追加する方法を示しています。
Python REST API を使用してプロジェクトにカレンダーを追加する方法
filename = 'Home_move_plan.mpp'
self.upload_file(filename)
first_day = WeekDay()
first_day.day_type = DayType.SUNDAY
first_day.day_working = False
second_day = WeekDay()
second_day.day_type = DayType.MONDAY
second_day.day_working = True
second_day.from_date = datetime(2000, 1, 1, 8)
second_day.to_date = datetime(2000, 1, 1, 17)
first_working_time = WorkingTime()
first_working_time.from_time = datetime(2000, 1, 1, 8)
first_working_time.to_time = datetime(2000, 1, 1, 13)
second_working_time = WorkingTime()
second_working_time.from_time = datetime(2000, 1, 1, 14)
second_working_time.to_time = datetime(2000, 1, 1, 17)
second_day.working_times = [first_working_time, second_working_time]
calendar = Calendar()
calendar.name = 'My new calendar'
calendar.days = [first_day, second_day]
calendar.is_base_calendar = False
calendar.is_baseline_calendar = False
request = PostCalendarRequest(filename, calendar)
post_result = self.tasks_api.post_calendar(request)
self.assertIsNotNone(post_result)
self.assertIsInstance(post_result, CalendarItemResponse)
get_result = self.tasks_api.get_calendar(GetCalendarRequest(filename, post_result.calendar_item.uid))
self.assertEqual('My new calendar', get_result.calendar.name)
self.assertEqual(7, len(get_result.calendar.days))
monday = next(d for d in get_result.calendar.days if d.day_type == DayType.MONDAY)
self.assertEqual(2, len(monday.working_times))
self.assertEqual(first_working_time.from_time.strftime("%H:%M:%S"), monday.working_times[0].from_time.strftime("%H:%M:%S"))
self.assertEqual(first_working_time.to_time.strftime("%H:%M:%S"), monday.working_times[0].to_time.strftime("%H:%M:%S"))
self.assertEqual(second_working_time.from_time.strftime("%H:%M:%S"), monday.working_times[1].from_time.strftime("%H:%M:%S"))
self.assertEqual(second_working_time.to_time.strftime("%H:%M:%S"), monday.working_times[1].to_time.strftime("%H:%M:%S"))
プロジェクトファイルにガントチャートとレポートを追加する
Aspose.Tasks Cloud Python SDK を使用すると、Python REST API を利用してガントチャートやタスク進捗レポートなどの視覚的レポートを簡単に生成できます。これらのチャートは、プロジェクトマネージャーがタスクのタイムライン、依存関係、全体的な進捗を可視化するのに役立ち、ステークホルダーやチームメンバーにとって重要です。以下の例は、プロジェクトファイルを PDF にエクスポートし、ガントチャートとして視覚化する方法を示しています。
クラウドベースの Python アプリでプロジェクトをガントチャート(PDF)としてエクスポートする方法
# プロジェクトを PDF にエクスポートし、ガントチャートとして可視化
response = api.export(file_name, 'pdf')
with open('gantt_chart.pdf', 'wb') as f:
f.write(response)
