المهارات libreoffice-calc
📊

libreoffice-calc

مخاطر منخفضة ⚙️ الأوامر الخارجية📁 الوصول إلى نظام الملفات🔑 متغيرات البيئة

أتمتة جداول بيانات LibreOffice Calc باستخدام UNO

التعديل اليدوي على جداول البيانات ممل وعرضة للأخطاء. تقوم هذه المهارة بأتمتة عمليات Calc برمجياً من خلال واجهة برمجة تطبيقات UNO لمعالجة دفعية موثوقة.

يدعم: Claude Codex Code(CC)
🥉 73 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "libreoffice-calc". إنشاء جدول بيانات وإضافة بيانات إلى النطاق A0:B2 وتصديره إلى PDF

النتيجة المتوقعة:

  • تم إنشاء جدول البيانات في /reports/output.ods
  • تم كتابة البيانات إلى النطاق Sheet1.A0:B2 (3 خلايا)
  • تم التصدير إلى PDF: /reports/output.pdf (127 كيلوبايت)

استخدام "libreoffice-calc". قراءة الخلية B5 من /data/sales.ods

النتيجة المتوقعة:

  • الخلية Sheet1.B5:
  • القيمة: 4250.00
  • النوع: رقم
  • الصيغة: لا شيء

استخدام "libreoffice-calc". إنشاء مخطط شريطي من A0:C10، إرساء في الصف 12

النتيجة المتوقعة:

  • تم إنشاء مخطط 'Sales Overview' في Sheet1
  • نطاق البيانات: A0:C10 (11 صفاً، 3 أعمدة)
  • الموضع: الصف 12، العمود 0
  • الأبعاد: 8000 × 6000 وحدة

التدقيق الأمني

مخاطر منخفضة
v2 • 3/19/2026

Static analysis flagged 197 patterns across 13 files. After evaluation, all high-severity findings are false positives: cryptographic warnings misidentified UNO connection code, 'system reconnaissance' flagged exception class definitions, and 'dynamic imports' were standard Python import statements. Shell command patterns exist only in markdown documentation. The single confirmed external command (subprocess.Popen launching LibreOffice) uses hardcoded arguments with no user input injection risk. Temp file usage follows Python best practices with proper cleanup. Skill is safe for publication with minor documentation recommended.

13
الملفات التي تم فحصها
2,642
الأسطر التي تم تحليلها
5
النتائج
2
إجمالي عمليات التدقيق
مشكلات منخفضة المخاطر (2)
Subprocess Launch of External Application
LibreOffice soffice binary launched via subprocess.Popen. Arguments are hardcoded with no user input injection vectors. Process is properly terminated and temp directories cleaned up in finally block.
Temporary Directory Creation
Creates temporary directories for LibreOffice profile isolation using tempfile.mkdtemp. Directories are cleaned up in finally block with shutil.rmtree.

عوامل الخطر

⚙️ الأوامر الخارجية (1)
📁 الوصول إلى نظام الملفات (2)
🔑 متغيرات البيئة (1)
تم تدقيقه بواسطة: claude عرض سجل التدقيق →

درجة الجودة

64
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
23
المجتمع
86
الأمان
83
الامتثال للمواصفات

ماذا يمكنك بناءه

إنشاء التقارير المالية تلقائياً

إنشاء تقارير الإيرادات الشهرية من خلال ملء القوالب بالبيانات وتطبيق تنسيق العملات وإنشاء مخططات الاتجاهات لعروض العروض التقديمية للمساهمين.

تصدير وتحويل البيانات بالجملة

استخراج البيانات من قواعد البيانات أو واجهات برمجة التطبيقات إلى جداول بيانات منظمة وتطبيق قواعد التحقق من الصحة وتصديرها إلى صيغ متعددة للتوزيع.

إنشاء المستندات على أساس القوالب

ملء قوالب جداول البيانات المصممة مسبقاً بالبيانات الديناميكية للفواتير وسجلات الوقت أو تقارير المخزون مع التنسيق المتسق.

جرّب هذه الموجهات

إنشاء جدول بيانات أساسي
إنشاء جدول بيانات Calc جديد في المسار /reports/monthly-data.ods مع ورقة مسماة 'Data'. إضافة العناوين 'Name' و'Value' و'Date' في الصف 0، ثم ملؤها بـ 5 صفوف نموذجية. تطبيق تنسيق الغامق على صف العناوين وتنسيق العملة على عمود القيمة.
تصدير جدول البيانات إلى صيغ متعددة
فتح /reports/monthly-data.ods وتصديره إلى ثلاثة صيغ: PDF في /exports/monthly-data.pdf، وExcel في /exports/monthly-data.xlsx، وCSV في /exports/monthly-data.csv. التحقق من نجاح جميع التصديرات.
إنشاء مخطط مع التحقق من صحة البيانات
في /reports/sales.ods، إنشاء مخطط خطي بعنوان 'Monthly Sales' باستخدام البيانات من Sheet1 في النطاق A0:B12. إرساء المخطط في الصف 15 والعمود 0 بعرض 8000 وارتفاع 6000. ثم إضافة التحقق من صحة البيانات إلى العمود B بحيث تتطلب القيم بين 0 و10000 مع رسالة خطأ 'Enter sales between 0 and 10000'.
تطبيق التصحيح لتحديث تقرير موجود
تطبيق هذا التصحيح على /reports/quarterly.ods في الوضع الذري: تحديث الخلايا في النطاق A0:D4 ببيانات ربع سنوية جديدة، تنسيق صف العناوين بالغامق ولون الخلفية، إنشاء مخطط دائري يوضح توزيع الفئة، وإعادة حساب جميع الصيغ. إذا فشل أي عملية، التراجع عن جميع التغييرات.

أفضل الممارسات

  • استخدم دائماً مسارات الملفات المطلقة عند العمل مع واجهات برمجة تطبيقات Calc لتجنب أخطاء الحل
  • أغلق الجلسات بشكل صحيح باستخدام مديري السياق أو استدعاءات close() الصريحة لإطلاق موارد LibreOffice
  • استخدم وضع التصحيح الذري للعمليات ذات الصلة التي يجب أن تنجح أو تفشل معاً
  • تحقق من أنواع البيانات قبل الكتابة إلى الخلايا لمنع مشاكل تحويل النوع

تجنب

  • استخدام الإحداثيات ذات الأساس واحد كما في واجهة مستخدم Calc - تستخدم واجهة برمجة التطبيقات الفهرسة ذات الأساس صفر
  • خلط أهداف الخلايا والنطاقات - إنها أنواع مميزة حتى للخلايا الفردية
  • استدعاء طرق الجلسة بعد close() - تحقق دائماً من حالة الجلسة قبل العمليات
  • افتراض أن أسماء المخططات يتم إنشاؤها تلقائياً - حدد دائماً عناوين صريحة لاستهداف موثوق

الأسئلة المتكررة

هل أحتاج إلى تثبيت LibreOffice لاستخدام هذه المهارة؟
نعم، يجب تثبيت LibreOffice على النظام مع روابط Python لـ UNO. تكتشف المهارة تلقائياً مسارات التثبيت الشائعة أو يمكنك تعيين متغير البيئة LIBREOFFICE_PROGRAM_PATH.
هل يمكن لهذه المهارة تعديل ملفات Excel (.xlsx)؟
يمكن لـ LibreOffice Calc فتح وحفظ ملفات .xlsx، لكن الصيغة الأساسية هي .ods. التصدير إلى .xlsx مدعوم. للحصول على أفضل توافق، اعمل بصيغة .ods وقم بالتصدير عند الحاجة.
كيف أتعامل مع الصيغ في الخلايا؟
عيّن value_type='formula' عند كتابة الخلايا وتوفير سلسلة الصيغة (مثل '=SUM(A1:A10)'). يتم إرجاع نتائج الصيغ عند قراءة الخلايا، إلى جانب نص الصيغة وأي حالة خطأ.
ماذا يحدث إذا تعطل LibreOffice أثناء العمليات؟
تستخدم المهارة أدلة ملفات تعريف معزولة لكل جلسة. إذا حدث تعطل، قم بتنظيف أدلة الملفات المؤقتة يدوياً من /tmp/libreoffice-skills-* وأعد التشغيل. يساعد وضع التصحيح الذري في منع التحديثات الجزئية.
هل يمكنني تشغيل جلسات Calc متعددة في وقت واحد؟
نعم، تستخدم كل جلسة اسم أنبوب فريد ودليل ملف تعريف معزول. ومع ذلك، قد تؤثر تشغيل العديد من الجلسات المتزامنة على موارد النظام.
لماذا تكون إحداثياتي خاطئة بمقدار واحد؟
تستخدم واجهة برمجة التطبيقات الفهرسة ذات الأساس صفر بينما تعرض واجهة مستخدم Calc أرقام الصفوف/الأعمدة ذات الأساس واحد. الصف 0 في واجهة برمجة التطبيقات يساوي الصف 1 في Calc. اضبط إحداثياتك وفقاً لذلك.

تفاصيل المطور

المؤلف

dfk1352

الترخيص

MIT

مرجع

main

بنية الملفات