Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
0-1 و2-3 و4-5. يجعل ذلك الجدول المحوري الكبير مضغوطًا وأسهل في التحليل. يوفر Aspose.Cells هذه الإمكانية من خلال طريقة PivotField.group() (التجميع التلقائي حسب نوع البيانات) وPivotField.group(PivotFieldGroupOptions) (خيارات التجميع المخصصة).يفحص التحميل الزائد PivotField.group() الذي لا يقبل معاملات نوع بيانات الحقل ويجمعه تلقائيًا. الحقل الذي يحتوي على تواريخ فقط (وفراغات) يُجمع حسب الأشهر. والحقل الذي يحتوي على أرقام فقط (وفراغات) يُجمع إلى نطاقات رقمية باستخدام فاصل تلقائي.
import com.aspose.cells.*;
Workbook wb = new Workbook("sampleGroupPivotFieldsInPivotTable.xlsx");
PivotTable pt = wb.getWorksheets().get(1).getPivotTables().get(0);
PivotField field = pt.getRowFields().get(0);
field.group();
pt.calculateData();
wb.save("outputAutoGroupPivotField.xlsx");
توفر فئة PivotFieldGroupOptions تكوين التجميع المخصص. لحقول التواريخ، عيّن startDate وendDate وgroupTypes. أما للحقول الرقمية، فعليك تعيين startNumber وendNumber وinterval. تتحكم الخاصية newPivotField فيما إذا كان التجميع ينشئ حقولاً محورية جديدة بجانب الحقل الأصلي (راجع قسم الملاحظة في نهاية هذه المقالة).
يجمع المثال التالي حقل صف التاريخ في الجدول المحوري النموذجي حسب الأشهر والأرباع بين تاريخ بداية ونهاية. يقوم الكود بتحميل ملف Excel النموذجي، وتنفيذ التجميع، وحساب بيانات الجدول المحوري، وحفظ النتيجة المجمعة. تُظهر لقطة الشاشة التأثير: أصبح حقل صف التاريخ الآن مُجمعًا حسب الأرباع والأشهر.
لاحظ أن ترتيب القيم في options.groupTypes يتم تجاهله. بغض النظر عن الترتيب الذي تُسرد به أنواع المجموعات، يتم دائمًا عرض الحقول المجمعة من أكبر فترة إلى أصغرها: السنوات، الأرباع، الأشهر، الأيام، الساعات، الدقائق، الثواني. في هذا المثال تم ذكر الأشهر قبل الأرباع في options.groupTypes، ومع ذلك يتم عرض الأرباع كمستوى خارجي والأشهر كمستوى داخلي.
import com.aspose.cells.*;
Workbook wb = new Workbook("sampleGroupPivotFieldsInPivotTable.xlsx");
PivotTable pt = wb.getWorksheets().get(1).getPivotTables().get(0);
PivotFieldGroupOptions options = new PivotFieldGroupOptions();
options.setStartDate(new com.aspose.cells.DateTime(2008, 1, 1));
options.setEndDate(new com.aspose.cells.DateTime(2008, 9, 5));
options.setGroupTypes(new int[] { PivotGroupByType.MONTHS, PivotGroupByType.QUARTERS });
pt.getRowFields().get(0).group(options);
pt.calculateData();
wb.save("outputGroupPivotFieldsInPivotTable.xlsx");

يعد FieldTwo في الجدول المحوري النموذجي حقل بيانات (قيمة) في البداية. نظرًا لأن التجميع متاح فقط لحقول الصفوف أو الأعمدة، يستدعي الكود أولًا PivotTable.addFieldToArea(PivotFieldType.ROW, "FieldTwo") لنقل FieldTwo إلى منطقة الصفوف، ثم يُحدّث الجدول المحوري، ثم يجمع الحقل الرقمي إلى النطاقات 0-1 و2-3 و4-5 باستخدام startNumber = 0 وendNumber = 5 وinterval = 2.
import com.aspose.cells.*;
// تحميل المصنف النموذجي
Workbook wb = new Workbook("sampleGroupPivotFieldsInPivotTable.xlsx");
// الوصول إلى ورقة العمل الثانية وجدول المحور الخاص بها
PivotTable pt = wb.getWorksheets().get(1).getPivotTables().get(0);
// FieldTwo هو حقل بيانات: انقله إلى منطقة الصفوف أولاً،
// لأنه يمكن تجميع حقول الصفوف/الأعمدة فقط
pt.addFieldToArea(PivotFieldType.ROW, "FieldTwo");
pt.calculateData();
// تجميع الحقل الرقمي إلى النطاقات 0-1، 2-3، 4-5
PivotFieldGroupOptions options = new PivotFieldGroupOptions();
options.setStartNumber(0);
options.setEndNumber(5);
options.setInterval(2);
pt.getRowFields().get(1).group(options);
// حساب بيانات جدول المحور وحفظ ملف الإخراج
pt.calculateData();
wb.save("outputNumberGroupPivotField.xlsx");
PivotField.groupBy() وإزالتها من واجهة الـAPI. تعتبر PivotField.group() وPivotField.group(PivotFieldGroupOptions) البدائل.PivotField.group() نفس سلوك Excel. توجد الخاصية PivotFieldGroupOptions.newPivotField للتوافق مع الإصدارات الأقدم: قيمتها الافتراضية false لتجميع الأرقام وtrue لتجميع التاريخ والوقت؛ عيّنها إلى false إذا كنت تريد أن يحلّ تجميع التواريخ محل الحقل المحوري الأصلي بدلاً من إنشاء حقول محورية جديدة.PivotFieldGroupOptions.interval فقط لتجميع الأرقام ولتجميع التواريخ حسب الأيام (على سبيل المثال، تجميع التواريخ في فترات مدتها 7 أيام)، ويتم تجاهلها عند تجميع التواريخ حسب الأشهر أو الأرباع أو السنوات.Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.