Skip to content

Commit 7b0b8e6

Browse files
Merge pull request #8 from aspose-tasks/optimize/tasks/java/20251204160650
Optimize 4 Tasks Java pages
2 parents 788e504 + 59eaea5 commit 7b0b8e6

File tree

92 files changed

+8307
-3191
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

92 files changed

+8307
-3191
lines changed
Lines changed: 94 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,85 +1,139 @@
11
---
2-
title: إدارة خصائص تقويم مشروع MS في Aspose.Tasks
3-
linktitle: إدارة خصائص التقويم في Aspose.Tasks
4-
second_title: Aspose.Tasks جافا API
5-
description: تعرف على كيفية إدارة خصائص تقويم MS Project في Java باستخدام Aspose.Tasks. يوفر هذا إرشادات خطوة بخطوة للتقويم ضمن تطبيقات Java الخاصة بك.
2+
date: 2025-12-04
3+
description: تعلم كيفية ضبط تقويم المشروع وإدارة خصائص تقويم MS Project في جافا باستخدام
4+
Aspose.Tasks. دليل خطوة بخطوة لعرض ساعات عمل التقويم وتخصيص الجداول.
5+
language: ar
6+
linktitle: Manage Calendar Properties in Aspose.Tasks
7+
second_title: Aspose.Tasks Java API
8+
title: كيفية تعيين تقويم المشروع باستخدام Aspose.Tasks للغة Java
9+
url: /java/calendars/properties/
610
weight: 10
7-
url: /ar/java/calendars/properties/
811
---
912

1013
{{< blocks/products/pf/main-wrap-class >}}
1114
{{< blocks/products/pf/main-container >}}
1215
{{< blocks/products/pf/tutorial-page-section >}}
1316

14-
# إدارة خصائص تقويم مشروع MS في Aspose.Tasks
17+
# كيفية تعيين تقويم المشروع باستخدام Aspose.Tasks للغة Java
1518

1619
## مقدمة
17-
في هذا البرنامج التعليمي، سنستكشف كيفية إدارة خصائص تقويم MS Project باستخدام Aspose.Tasks لـ Java. من خلال فهم كيفية التعامل مع خصائص التقويم، يمكنك تخصيص جداول المشروع لتلبية متطلبات محددة بكفاءة.
18-
## المتطلبات الأساسية
19-
قبل المتابعة، تأكد من توفر المتطلبات الأساسية التالية:
20-
### تثبيت مجموعة تطوير جافا (JDK).
21-
تأكد من تثبيت Java Development Kit (JDK) على نظامك.
22-
### Aspose.Tasks لمكتبة جافا
23-
قم بتنزيل وإعداد Aspose.Tasks لمكتبة Java من[صفحة التحميل](https://releases.aspose.com/tasks/java/).
24-
25-
## حزم الاستيراد
26-
ابدأ باستيراد الحزم الضرورية:
20+
في هذا الدرس ستكتشف **how to set project calendar** برمجيًا باستخدام مكتبة Aspose.Tasks للغة Java. يتيح لك التحكم في خصائص التقويم **display calendar working hours**، تعريف أيام عمل مخصصة، ومزامنة جدول مشروعك مع القيود الواقعية. سنستعرض كل خطوة — من إعداد البيئة إلى التكرار عبر التقويمات وقراءة خصائصها — حتى تتمكن من إدارة تقويمات MS Project بثقة في تطبيقاتك.
21+
22+
## إجابات سريعة
23+
- **What does “set project calendar” mean?** يعني إنشاء أو تحديث أوقات العمل في التقويم، التقويم الأساسي، وأنواع الأيام داخل ملف MS Project.
24+
- **Which library is required?** Aspose.Tasks for Java (any recent version).
25+
- **Do I need a license?** نسخة تجريبية مجانية تكفي للتطوير؛ يلزم الحصول على ترخيص تجاري للإنتاج.
26+
- **Can I display calendar working hours?** نعم — عن طريق قراءة كل `WeekDay` يمكنك إظهار الساعات لكل نوع يوم.
27+
- **Is this compatible with Maven/Gradle?** بالتأكيد — أضف ملف JAR الخاص بـ Aspose.Tasks كاعتماد.
28+
29+
## ما هو تقويم المشروع؟
30+
يحدد تقويم المشروع أيام وساعات العمل للمهام والموارد والجدول الزمني العام للمشروع. في MS Project، يمكن للتقويمات أن ترث من تقويم أساسي، ويمكن لكل نوع يوم (مثل **Standard**, **Non‑working**) أن يمتلك وقت عمل خاص به. يتيح إدارة هذه الإعدادات برمجيًا إجراء تعديلات ديناميكية على الجدول الزمني دون الحاجة إلى تحرير يدوي.
31+
32+
## لماذا إدارة تقويم MS Project برمجيًا؟
33+
- **Automation:** تعديل التقويمات عبر العديد من المشاريع باستخدام سكريبت واحد.
34+
- **Consistency:** فرض سياسات وقت العمل على مستوى المؤسسة.
35+
- **Integration:** مزامنة التقويمات مع الأنظمة الخارجية (الموارد البشرية، ERP).
36+
- **Visibility:** بسرعة **display calendar working hours** للتقارير أو تصحيح الأخطاء.
37+
38+
## المتطلبات المسبقة
39+
قبل أن تبدأ، تأكد من أن لديك:
40+
41+
- **Java Development Kit (JDK) 8+** مثبت ومُعَدّ `JAVA_HOME`.
42+
- **Aspose.Tasks for Java** مكتبة تم تحميلها من [download page](https://releases.aspose.com/tasks/java/). أضف ملف JAR إلى مسار الفئة في مشروعك أو إلى اعتمادات Maven/Gradle.
43+
44+
## استيراد الحزم
45+
أولاً، استورد الفئات الأساسية من Aspose.Tasks التي سنستخدمها طوال الدرس:
46+
2747
```java
2848
import com.aspose.tasks.*;
2949
```
3050

3151
## الخطوة 1: إعداد دليل البيانات
52+
حدد المجلد الذي يحتوي على ملفات المشروع الخاصة بك. استبدل العنصر النائب بالمسار الفعلي على جهازك.
53+
3254
```java
3355
String dataDir = "Your Data Directory";
3456
```
35-
يستبدل`"Your Data Directory"` مع المسار إلى دليل البيانات الخاص بك.
36-
## الخطوة 2: تحديد الوحدات الزمنية
57+
58+
## الخطوة 2: تعريف وحدات الوقت
59+
أوقات العمل تُعبّر بالمللي ثانية. تعريف ثوابت قابلة لإعادة الاستخدام يجعل الشيفرة أسهل للقراءة.
60+
3761
```java
38-
long OneSec = 1000; // 1000 مللي ثانية
62+
long OneSec = 1000; // 1000 milliseconds
3963
long OneMin = 60 * OneSec;
4064
long OneHour = 60 * OneMin;
4165
```
42-
هنا، نحدد الوحدات الزمنية للراحة.
66+
4367
## الخطوة 3: تحميل بيانات المشروع
68+
أنشئ كائن `Project` بتحميل ملف XML لمشروع MS Project موجود (`.xml` أو `.mpp`). يتيح لنا ذلك الوصول إلى جميع التقويمات المخزنة في الملف.
69+
4470
```java
4571
Project project = new Project(dataDir + "project.xml");
4672
```
47-
قم بتحميل بيانات MS Project من ملف XML المحدد.
48-
## الخطوة 4: التكرار من خلال التقاويم
73+
74+
## الخطوة 4: التكرار عبر التقويمات وعرض ساعات العمل
75+
الآن نقوم بالتكرار عبر كل تقويم، طباعة المعرف الفريد، الاسم، التقويم الأساسي، وساعات العمل لكل نوع يوم. يوضح ذلك **how to set project calendar** بالإضافة إلى كيفية **display calendar working hours**.
76+
4977
```java
5078
for (Calendar cal : project.getCalendars()) {
5179
if (cal.getName() == null) {
5280
continue;
5381
}
5482
System.out.println("UID: " + cal.getUid() + " Name: " + cal.getName());
55-
// أظهر ما إذا كان يحتوي على تقويم أساسي
83+
// Show if it has a base calendar
5684
System.out.print("Base Calendar: ");
5785
System.out.println(cal.isBaseCalendar() ? "Self" : cal.getBaseCalendar().getName());
58-
// كرر خلال أيام الأسبوع
86+
// Iterate through weekdays
5987
for (WeekDay wd : cal.getWeekDays()) {
6088
double ts = wd.getWorkingTime();
6189
System.out.println("Day Type: " + DayType.toString(DayType.class, wd.getDayType()) + " Hours: " + ts / OneHour);
6290
}
6391
}
6492
```
65-
تتكرر هذه الحلقة خلال كل تقويم في المشروع، وتعرض خصائصه مثل UID والاسم والتقويم الأساسي وساعات العمل لكل نوع يوم.
66-
67-
## خاتمة
68-
باتباع هذا البرنامج التعليمي، تعلمت كيفية إدارة خصائص تقويم MS Project باستخدام Aspose.Tasks لـ Java. تمكنك هذه المعرفة من تخصيص جداول المشروع بشكل فعال، مما يضمن التوافق مع متطلبات المشروع.
69-
## الأسئلة الشائعة
70-
### س: هل يمكنني تعديل خصائص التقويم برمجيًا باستخدام Aspose.Tasks؟
71-
ج: نعم، يوفر Aspose.Tasks واجهات برمجة تطبيقات شاملة لمعالجة خصائص التقويم ديناميكيًا داخل تطبيقات Java.
72-
### س: هل هناك أي قيود على تخصيص التقويم باستخدام Aspose.Tasks؟
73-
ج: يوفر Aspose.Tasks مرونة واسعة النطاق في إدارة التقويم، مع الحد الأدنى من القيود على خيارات التخصيص.
74-
### س: هل يمكنني دمج وظيفة إدارة التقويم في مشاريع Java الحالية؟
75-
ج: بالتأكيد! يمكنك دمج ميزات إدارة التقويم الخاصة بـ Aspose.Tasks بسلاسة في مشاريع Java الخاصة بك، مما يعزز إمكانات جدولة المشروع.
76-
### س: هل يدعم Aspose.Tasks وظائف إدارة المشروعات الأخرى إلى جانب إدارة التقويم؟
77-
ج: نعم، يقدم Aspose.Tasks نطاقًا واسعًا من الوظائف لإدارة المهام والموارد وهياكل المشاريع، مما يجعله حلاً شاملاً لإدارة المشاريع في Java.
78-
### س: هل يتوفر الدعم الفني للمطورين الذين يستخدمون Aspose.Tasks؟
79-
ج: نعم، يمكن للمطورين الوصول إلى الدعم الفني من خلال منتدى Aspose.Tasks، مما يضمن المساعدة في أي استفسارات أو مشكلات تتم مواجهتها أثناء التنفيذ.
93+
94+
### ما يفعله هذا الكود
95+
- **Filters unnamed calendars** (some internal calendars may have a `null` name).
96+
يقوم بتصفية التقويمات غير المسماة (بعض التقويمات الداخلية قد يكون لها اسم `null`).
97+
- **Prints UID and name** – مفيد لتحديد التقويم لاحقًا.
98+
- **Shows the base calendar** – إما “Self” (التقويم هو القاعدة الخاصة به) أو اسم التقويم الموروث.
99+
- **Loops through each `WeekDay`** لحساب وإخراج إجمالي ساعات العمل (`workingTime` بالمللي ثانية، لذا نقسم على `OneHour`).
100+
101+
## المشكلات الشائعة والحلول
102+
| المشكلة | السبب | الحل |
103+
|-------|--------|-----|
104+
| `NullPointerException` on `cal.getBaseCalendar()` | التقويم هو تقويم أساسي بحد ذاته (`isBaseCalendar()` يعيد `true`). | استخدم الفحص الثلاثي كما هو موضح (`cal.isBaseCalendar() ? "Self" : ...`). |
105+
| عدم ظهور ساعات العمل | ملف المشروع يستخدم وحدة زمنية مختلفة (ticks). | تحقق من تنسيق الملف؛ Aspose.Tasks يحول إلى مللي ثانية، لكن تأكد من تحميل النوع الصحيح من الملف. |
106+
| غير قادر على العثور على `project.xml` | مسار `dataDir` غير صحيح. | استخدم مسارًا مطلقًا أو `Paths.get(dataDir, "project.xml").toString()`. |
107+
108+
## الأسئلة المتكررة
109+
110+
**س: هل يمكنني تعديل خصائص التقويم برمجيًا باستخدام Aspose.Tasks؟**
111+
ج: نعم، توفر API وصولًا كاملاً للقراءة/الكتابة إلى التقويمات، مما يسمح لك بإضافة أو تعديل أو حذف أوقات العمل، الاستثناءات، وعلاقات التقويم الأساسي.
112+
113+
**س: هل هناك أي قيود على تخصيص التقويم باستخدام Aspose.Tasks؟**
114+
ج: المكتبة تعكس قدرات Microsoft Project، لذا يمكنك تخصيص جميع جوانب التقويم تقريبًا. قد تواجه بعض الاختلافات الطفيفة في إصدارات ملفات Project القديمة جدًا.
115+
116+
**س: هل يمكنني دمج إدارة التقويم في مشاريع Java الحالية؟**
117+
ج: بالتأكيد. ما عليك سوى إضافة ملف JAR الخاص بـ Aspose.Tasks إلى مسار البناء واستخدام نمط الشيفرة نفسه المعروض هنا.
118+
119+
**س: هل يدعم Aspose.Tasks وظائف إدارة مشاريع أخرى غير إدارة التقويم؟**
120+
ج: نعم، يغطي المهام، الموارد، التخصيصات، المخططات، الخطوط الأساسية، وأكثر—مما يجعله حلًا شاملاً لأتمتة المشاريع باستخدام Java.
121+
122+
**س: هل يتوفر دعم فني للمطورين الذين يستخدمون Aspose.Tasks؟**
123+
ج: نعم، توفر Aspose منتديات مخصصة، دعم عبر البريد الإلكتروني، ووثائق شاملة لجميع المستخدمين المرخصين.
124+
125+
## الخلاصة
126+
باتباعك لهذا الدليل، أصبحت الآن تعرف **how to set project calendar**، وتستطيع قراءة و**display calendar working hours**، ودمج هذه القدرات في أي تطبيق Java باستخدام Aspose.Tasks. يتيح لك ذلك أتمتة تعديل الجداول الزمنية، فرض سياسات عمل متسقة، وبناء حلول إدارة مشاريع أكثر غنى.
127+
128+
---
129+
130+
**آخر تحديث:** 2025-12-04
131+
**تم الاختبار مع:** Aspose.Tasks for Java 24.12 (latest at time of writing)
132+
**المؤلف:** Aspose
133+
80134
{{< /blocks/products/pf/tutorial-page-section >}}
81135

82136
{{< /blocks/products/pf/main-container >}}
83137
{{< /blocks/products/pf/main-wrap-class >}}
84138

85-
{{< blocks/products/products-backtop-button >}}
139+
{{< blocks/products/products-backtop-button >}}

0 commit comments

Comments
 (0)