جدول المحتويات 1. تكوين البيئة 2. عمليات ASP الأساسية في Excel 3. يقوم ASP بتشغيل Excel لإنشاء جدول البيانات 4. يقوم ASP بتشغيل Excel لإنشاء رسم تخطيطي 5. حلول تصفح ملفات Excel وتنزيلها وحذفها من جانب الخادم 6.
نص الملحق 1 خادم تكوين البيئة بناءً على المواد المرجعية لتكوين البيئة الطرفية، يجب أن تكون جميع تكوينات سلسلة Microsoft جيدة، وهي:
1. ويندوز 9x+PWS+أوفيس
2. ويندوز 2000 بروفيشنال + بي دبليو اس + أوفيس
3. خادم ويندوز 2000 + IIS + أوفيس
في الوقت الحاضر، البيئة التي اختبر فيها المؤلف بنجاح هي البيئة الأخيرة. لا توجد متطلبات خاصة لإصدار Office، نظرًا لعدم اليقين بشأن تكوين العميل وانخفاض التوافق، فمن المستحسن ألا يكون إصدار Office من جانب الخادم مرتفعًا جدًا لمنع فشل العميل في العرض بشكل صحيح بعد التنزيل.
اكتشافان آخران بالصدفة حول تكوين البيئة من جانب الخادم هما:
1. تم تجهيز آلة التطوير الخاصة بالمؤلف في الأصل بنظام WPS2002 الخاص بـ Kingsoft، ولكن كانت هناك دائمًا مشكلة في إنشاء كائن Excel بعد إلغاء تثبيت WPS2002، اختفى الخطأ.
2. يحب المؤلف استخدام FrontPage عند تطوير تعليمات برمجية لـ ASP. وتبين أنه إذا تم فتح FrontPage (جانب الخادم)، فإن إنشاء الكائن يكون غير مستقر، وأحيانًا ناجحًا، وأحيانًا غير ناجح. بعد إجراء تحقيقات مكثفة، وجدنا أنه إذا تم تشغيل برنامج سلسلة Office على جانب الخادم، فمن الصعب إنشاء كائنات Excel بنجاح.
الشيء الآخر الذي يجب تعيينه على جانب الخادم هو إذن التشغيل لمكون COM. اكتب "DCOMCNFG" في سطر الأوامر للدخول إلى واجهة تكوين مكون COM. حدد Microsoft Excel وانقر فوق الزر "تحديد مخصص" لجميع خيارات الاختيار الثلاثة أثناء التحرير، قم بإضافة "الجميع" إلى كافة الأذونات. بعد الحفظ، قم بإعادة تشغيل الخادم.
لا يوجد شيء خاص فيما يتعلق بتكوين بيئة العميل، فطالما تم تثبيت Office وIE، فإن أي إصدار عالمي يبدو جيدًا.
2. العمليات الأساسية لـ ASP على برنامج Excel
1. قم بإنشاء كائن Excel
تعيين objExcelApp = CreateObject("Excel.Application")
objExcelApp.DisplayAlerts = false لا يعرض التحذيرات
objExcelApp.Application.Visible = false لا يعرض الواجهة
2. قم بإنشاء ملف Excel جديد
objExcelApp.WorkBooks.add
تعيين objExcelBook = objExcelApp.ActiveWorkBook
تعيين objExcelSheets = objExcelBook.Worksheets
تعيين objExcelSheet = objExcelBook.Sheets(1)
3. قراءة ملفات Excel الموجودة
strAddr = Server.MapPath(".")
objExcelApp.WorkBooks.Open(strAddr & "TempletTable.xls")
تعيين objExcelBook = objExcelApp.ActiveWorkBook
تعيين objExcelSheets = objExcelBook.Worksheets
تعيين objExcelSheet = objExcelBook.Sheets(1)
4. احفظ ملف Excel باسم
objExcelBook.SaveAs strAddr & "TempTable.xls"
5. احفظ ملف Excel
objExcelBook.Save (تم حفظ المؤلف بنجاح أثناء الاختبار، لكن الصفحة أبلغت عن خطأ.)
6. اخرج من عملية Excel
يجب إنهاء objExcelApp.Quit
set objExcelApp = Nothing
3. يقوم ASP بتشغيل Excel لإنشاء جدول البيانات
1. أدخل البيانات في نطاق
objExcelSheet.Range("B3:k3").Value = Array("67"، "87"، "5"، "9"، "7"، "45"، "45"، "54"، "54" ، "10")
2. أدخل البيانات في الخلية
objExcelSheet.Cells(3,1).Value = "إنترنت إكسبلورر"
3. حدد النطاق
4. ارسم خطًا سميكًا على الجانب الأيسر من الخلية
5. ارسم خطًا سميكًا على الجانب الأيمن من الخلية
6. ارسم خطوطًا سميكة أعلى الخلايا
7. ارسم خطوطًا سميكة أسفل الخلايا
8. قم بتعيين لون خلفية الخلية
9. دمج الخلايا
10. أدخل صفًا
11. أدخل العمود
4. يقوم ASP بتشغيل Excel لإنشاء مخطط بياني
1. إنشاء مخطط الرسم البياني
objExcelApp.Charts.Add
2. قم بتعيين نوع المخطط
objExcelApp.ActiveChart.ChartType = 97
ملاحظة: مخطط خطي ثنائي الأبعاد، 4؛ مخطط دائري ثنائي الأبعاد، 5؛
3. قم بتعيين عنوان المخطط
objExcelApp.ActiveChart.HasTitle = True
objExcelApp.ActiveChart.ChartTitle.Text = "مخطط اختبار"
4. قم بتعيين الرسومات من خلال بيانات الجدول
objExcelApp.ActiveChart.SetSourceData objExcelSheet.Range("A1:k5"),1
5. تعيين بيانات الرسومات مباشرة (مستحسن)
objExcelApp.ActiveChart.SeriesCollection.NewSeries
objExcelApp.ActiveChart.SeriesCollection(1).Name = "=""333"""
objExcelApp.ActiveChart.SeriesCollection(1).Values = "={1,4,5,6,2}"
6. ربط الرسم البياني
objExcelApp.ActiveChart.Location 1
7. عرض جدول البيانات
objExcelApp.ActiveChart.HasDataTable = True
8. عرض وسيلة الإيضاح
objExcelApp.ActiveChart.DataTable.ShowLegendKey = True
5. هناك العديد من الحلول لتصفح ملفات Excel وتنزيلها وحذفها على جانب الخادم، ويمكن تنفيذ كل من "Location.href =" و"Navigate" و"Response.Redirect". يوصى باستخدام العميل والسبب هو منح الخادم مزيدًا من الوقت لإنشاء ملف Excel.
يعد تنفيذ التنزيل أكثر إزعاجًا بعض الشيء. يعد هذا حلاً أفضل لتنزيل المكونات من خوادم جاهزة على الإنترنت أو لتخصيص أحد المكونات وتطويره بنفسك. هناك طريقة أخرى وهي تشغيل مكون Excel على العميل، ويقوم العميل بتشغيل ملف Excel من جانب الخادم وحفظه للعميل. تتطلب هذه الطريقة من العميل فتح إذن التشغيل لعنصر تحكم ActiveX غير الآمن، نظرًا لصعوبة إعلام كل عميل بتعيين الخادم كموقع موثوق به، يوصى باستخدام الطريقة الأولى لحفظ المشكلة.
تتكون خطة الحذف من ثلاثة أجزاء:
ج: تستخدم ملفات Excel التي تم إنشاؤها بواسطة نفس المستخدم نفس اسم الملف. يمكن أن يتكون اسم الملف من رقم معرف المستخدم أو رقم معرف الجلسة الذي يضمن عدم تكرار السلاسل. بهذه الطريقة سيقوم الملف الجديد بالكتابة تلقائيًا فوق الملف السابق عند إنشائه.
ب: عند تعيين الحدث Session_onEnd في الملف Global.asa ليتم تشغيله، قم بحذف ملف Excel المؤقت الخاص بهذا المستخدم.
C: عندما يتم تعيين الحدث Application_onStart في ملف Global.asa للتشغيل، قم بحذف كافة الملفات الموجودة في الدليل المؤقت.
ملحوظة: يوصى باستخدام بنية الدليلدليل رمز Srcدليل قالب القالبدليل التخزين المؤقت Temp
6. تعد العملية الميتة لـ Excel عند حدوث خطأ في الملحق أمرًا مزعجًا للغاية. إن إضافة "On Error Resume Next" قبل كل ملف سيساعد على تحسين هذا الوضع، لأنه سيصر على التنفيذ إلى "Application.Quit" بغض النظر عما إذا كان الملف يولد خطأ، مما يضمن تنفيذ كل برنامج دون ترك عملية مسدودة .