|
1 | 1 | --- |
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/ |
6 | 10 | weight: 10 |
7 | | -url: /ar/java/calendars/properties/ |
8 | 11 | --- |
9 | 12 |
|
10 | 13 | {{< blocks/products/pf/main-wrap-class >}} |
11 | 14 | {{< blocks/products/pf/main-container >}} |
12 | 15 | {{< blocks/products/pf/tutorial-page-section >}} |
13 | 16 |
|
14 | | -# إدارة خصائص تقويم مشروع MS في Aspose.Tasks |
| 17 | +# كيفية تعيين تقويم المشروع باستخدام Aspose.Tasks للغة Java |
15 | 18 |
|
16 | 19 | ## مقدمة |
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 | + |
27 | 47 | ```java |
28 | 48 | import com.aspose.tasks.*; |
29 | 49 | ``` |
30 | 50 |
|
31 | 51 | ## الخطوة 1: إعداد دليل البيانات |
| 52 | +حدد المجلد الذي يحتوي على ملفات المشروع الخاصة بك. استبدل العنصر النائب بالمسار الفعلي على جهازك. |
| 53 | + |
32 | 54 | ```java |
33 | 55 | String dataDir = "Your Data Directory"; |
34 | 56 | ``` |
35 | | - يستبدل`"Your Data Directory"` مع المسار إلى دليل البيانات الخاص بك. |
36 | | -## الخطوة 2: تحديد الوحدات الزمنية |
| 57 | + |
| 58 | +## الخطوة 2: تعريف وحدات الوقت |
| 59 | +أوقات العمل تُعبّر بالمللي ثانية. تعريف ثوابت قابلة لإعادة الاستخدام يجعل الشيفرة أسهل للقراءة. |
| 60 | + |
37 | 61 | ```java |
38 | | -long OneSec = 1000; // 1000 مللي ثانية |
| 62 | +long OneSec = 1000; // 1000 milliseconds |
39 | 63 | long OneMin = 60 * OneSec; |
40 | 64 | long OneHour = 60 * OneMin; |
41 | 65 | ``` |
42 | | -هنا، نحدد الوحدات الزمنية للراحة. |
| 66 | + |
43 | 67 | ## الخطوة 3: تحميل بيانات المشروع |
| 68 | +أنشئ كائن `Project` بتحميل ملف XML لمشروع MS Project موجود (`.xml` أو `.mpp`). يتيح لنا ذلك الوصول إلى جميع التقويمات المخزنة في الملف. |
| 69 | + |
44 | 70 | ```java |
45 | 71 | Project project = new Project(dataDir + "project.xml"); |
46 | 72 | ``` |
47 | | -قم بتحميل بيانات MS Project من ملف XML المحدد. |
48 | | -## الخطوة 4: التكرار من خلال التقاويم |
| 73 | + |
| 74 | +## الخطوة 4: التكرار عبر التقويمات وعرض ساعات العمل |
| 75 | +الآن نقوم بالتكرار عبر كل تقويم، طباعة المعرف الفريد، الاسم، التقويم الأساسي، وساعات العمل لكل نوع يوم. يوضح ذلك **how to set project calendar** بالإضافة إلى كيفية **display calendar working hours**. |
| 76 | + |
49 | 77 | ```java |
50 | 78 | for (Calendar cal : project.getCalendars()) { |
51 | 79 | if (cal.getName() == null) { |
52 | 80 | continue; |
53 | 81 | } |
54 | 82 | System.out.println("UID: " + cal.getUid() + " Name: " + cal.getName()); |
55 | | - // أظهر ما إذا كان يحتوي على تقويم أساسي |
| 83 | + // Show if it has a base calendar |
56 | 84 | System.out.print("Base Calendar: "); |
57 | 85 | System.out.println(cal.isBaseCalendar() ? "Self" : cal.getBaseCalendar().getName()); |
58 | | - // كرر خلال أيام الأسبوع |
| 86 | + // Iterate through weekdays |
59 | 87 | for (WeekDay wd : cal.getWeekDays()) { |
60 | 88 | double ts = wd.getWorkingTime(); |
61 | 89 | System.out.println("Day Type: " + DayType.toString(DayType.class, wd.getDayType()) + " Hours: " + ts / OneHour); |
62 | 90 | } |
63 | 91 | } |
64 | 92 | ``` |
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 | + |
80 | 134 | {{< /blocks/products/pf/tutorial-page-section >}} |
81 | 135 |
|
82 | 136 | {{< /blocks/products/pf/main-container >}} |
83 | 137 | {{< /blocks/products/pf/main-wrap-class >}} |
84 | 138 |
|
85 | | -{{< blocks/products/products-backtop-button >}} |
| 139 | +{{< blocks/products/products-backtop-button >}} |
0 commit comments