أسعار الصرف في جداول بيانات Googleالتطوير والتخصيص

سكربت Google Apps Script يحمّل أسعار الصرف التي تحتاجها إلى جدول بيانات Google لديك من مصدر تختاره

جاهز عادةً خلال 15 دقيقةالتعديلات مشمولةفحص الجودة
الباقات
حماية الدفعالتفاصيل
  • التعديلات ضمن الباقة مجانية.
  • إذا لم تردّ خلال 3 أيام من التسليم، يُقبل العمل تلقائيًا.

يُحجز المبلغ عند الدفع ولا يُحوَّل إلا بعد قبولك العمل.

سكربت Google Apps Script يحمّل أسعار الصرف التي تحتاجها إلى جدول بيانات Google لديك من مصدر تختاره

مثال على النتيجة

مثال على الباقة القياسية

دمج ملفات المبيعات الشهرية لـ 9 متاجر في تقرير Excel واحد

طريقة التشغيل

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  المجلد: sales/2026-10، عُثر على 9 ملفات
2026-11-02 09:14:03 INFO  shop-01.csv: 1,284 صفًا
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 صفًا
2026-11-02 09:14:04 WARN  shop-07.csv: تُخطّيت 3 صفوف بلا سعر (الأسطر 88، 412، 913)
2026-11-02 09:14:05 INFO  تم: 10,412 صفًا -> report-2026-10.xlsx (الورقتان «المبيعات» و«الإجماليات»)

إعدادات لا كود

أسماء أعمدة كل متجر موجودة في settings.ini، فالمتجر الجديد أو العمود الذي تغيّر اسمه يعني سطرًا واحدًا هناك:

[columns]
date = التاريخ, تاريخ البيع, اليوم
product = المنتج, الصنف, الاسم
quantity = الكمية, العدد, قطع
price = السعر, سعر الوحدة

جزء من الكود

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """يقرأ ملف متجر واحد ويمنح أعمدته أسماء أعمدة التقرير."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: لا يوجد عمود لـ «{name}» (جرى البحث عن: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

الملفات: أرشيف ZIP يضم merge_sales.py (310 أسطر)، وsettings.ini، وrequirements.txt، وملف README يشرح تثبيت Python وتشغيل السكربت ومعنى كل رسالة في السجل. يشغّله العميل على كمبيوتره الخاص.

العميل: سلسلة صغيرة من 9 متاجر للأدوات المكتبية؛ يرسل كل متجر مبيعاته الشهرية في ملف CSV أو Excel، بأسماء أعمدة تختلف قليلًا من متجر إلى آخر. المهمة: سكربت واحد يقرأ كل ملف في مجلد، ويوحّد الأعمدة في شكل واحد، ويكتب تقرير Excel واحدًا يضم كل المبيعات وورقة بالإجماليات حسب المتجر.

العميل وجميع التفاصيل افتراضية.

عن هذه الخدمة

إن كانت أسعارك أو فواتيرك أو تقاريرك تعتمد على أسعار الصرف، فمن السهل أن تنسى كتابتها كل صباح. يقرأ سكربت Google Apps Script هذا الأسعار من مصدر عام تختاره، مثل الأسعار التي ينشرها البنك المركزي في بلدك أو خدمة أسعار تحصل فيها على مفتاحك الخاص، ويكتب العملات التي تحتاجها في جدول بيانات Google لديك مع التاريخ. بدءًا من الباقة القياسية يحتفظ بتبويب للسجل التاريخي بصف لكل يوم، لتتمكن معادلاتك من البحث عن السعر في أي تاريخ؛ وتضيف الباقة المميزة مصدرًا ثانيًا إن لم يستجب الأول، وتملأ التواريخ السابقة. تتضمن جداول بيانات Google دالتها الخاصة GOOGLEFINANCE لبعض العملات؛ أما هذا السكربت فلحين تحتاج إلى مصدر معين أو سجل تاريخي محفوظ. الأسعار أسعار المصدر؛ ولا نقدم نصائح مالية.

ما المشمول

  • ما الذي تحصل عليهأرشيف ZIP يضم كود Apps Script وملف README يوضح كيفية إضافته إلى جدولك ومنح الصلاحيات وضبطه للعمل يوميًا؛ ويُعرض الكود أيضًا في صفحة الطلب.
  • مصدركالأسعار الرسمية أو أسعار الخدمة التي تختارها
  • عملاتكالتي تحتاجها فقط، مقابل عملتك الأساسية
  • سجل تاريخي مؤرخبدءًا من الباقة القياسية، صف لكل يوم للبحث
  • المفتاح خارج الكودإن احتاج المصدر إلى مفتاح، تضعه بنفسك
  • كود مقروءمع تعليقات، ليسهل إضافة عملة لاحقًا

كيف يعمل

  1. 1
    المصدرتحدد العملات والمصدر الذي تثق به
  2. 2
    الكودنكتب السكربت وفق وثائق المصدر ودليل التثبيت
  3. 3
    جرّبهتشغّله في نسخة من الجدول وتقارن بموقع المصدر
  4. 4
    التعديلاتتطلب التعديلات ضمن باقتك وترسل أي رسالة خطأ

ما نحتاجه منك

العملات التي تحتاجها وعملتك الأساسية، والمصدر الذي تريد استخدامه (رابط إلى الصفحة أو الوثائق التي ينشر فيها الأسعار، أو دعنا نقترح مصادر عامة لتختار منها)، وكم مرة تحتاج إلى الأسعار وفي أي وقت، وأين توضع في جدولك. إن كنت تحتاج إلى تواريخ سابقة (الباقة المميزة)، فمنذ أي تاريخ. إن طلب المصدر مفتاحًا، فأنشئه في حسابك؛ ولا ترسله إلينا أبدًا.

سنسألك:

  • ما العملات التي تحتاجها؟
  • أي مصدر يجب أن يستخدم؟
  • كم مرة وبحلول متى؟
  • هل تحتاج إلى تواريخ سابقة؟

قارن بين الباقات

الباقاتالأساسيةأسعار اليوم‏16 US$القياسيةالأسعار مع السجل التاريخي‏33 US$المميزةأداة الأسعار‏67 US$
مدة التنفيذ1 يوم2 يوم3 أيام
التعديلات123
الكودحتى 150 سطرًاحتى 400 سطرحتى 1,000 سطر
ملفات الكود1حتى 3حتى 8
ملف الإعداداتلانعمنعم
رسائل خطأ واضحة وسجللانعمنعم
خيارات التشغيل ودليل لتشغيله وفق جدول زمنيلالانعم
دليل التثبيت والتشغيل (README)نعمنعمنعم
اللغةGoogle Apps ScriptGoogle Apps ScriptGoogle Apps Script
اطلب الأساسيةاطلب القياسيةاطلب المميزة

حماية الدفع

تدفع عند الطلب، لكن المبلغ لا يُحوَّل إلا مقابل عمل قبلته.

  • سعر ثابتلا يتغير سعر الباقة بعد الدفع.
  • المبلغ محجوزعند الدفع، يُحجز المبلغ فقط. ولا يُحوَّل إلى Dleex إلا بعد قبولك العمل.
  • فحص قبل التسليمتخضع كل نتيجة لفحص الجودة قبل أن تصل إليك، وتراها في صفحة الطلب قبل قبولها.
  • تعديلات مجانيةاطلب تعديلات ضمن متطلبات طلبك بالعدد الذي تسمح به الباقة.
  • القبول بعد 3 أيامإذا لم تقبل العمل ولم تطلب تعديلات خلال 3 أيام من التسليم، يُقبل تلقائيًا. وإذا كتبت في محادثة الطلب بعد التسليم، يبقى الطلب قيد الانتظار؛ وبعد ردّنا، قد نعيد بدء مهلة 3 أيام وسنُعلمك بذلك في المحادثة.
  • إعادة التنفيذ أو استرداد المبلغ كاملًاإذا لم تطابق النتيجة متطلبات طلبك ولم تُصلحها التعديلات، أو استغرق العمل أكثر من ضعف مدة التنفيذ، فاكتب في محادثة الطلب: سنعيد تنفيذ العمل أو نردّ إليك المبلغ كاملًا.
كيف يعمل →

الأسئلة والأجوبة

هل الأسعار دقيقة؟

إنها تمامًا ما ينشره المصدر الذي اخترته. تُحدد الأسعار الرسمية عادةً مرة في كل يوم عمل، ولا يمكن للسكربت أن يكون أحدث من مصدره.

هل يمكنه التحديث كل دقيقة للتداول؟

إنه مخصص للأسعار اليومية أو كل ساعة للأسعار والفواتير والتقارير، لا للتداول. ولا نقدم نصائح مالية.

ماذا يحدث في عطلات نهاية الأسبوع والعطلات الرسمية؟

كثير من المصادر الرسمية لا تنشر شيئًا في تلك الأيام. بدءًا من الباقة القياسية تختار هل يكرر السجل التاريخي آخر سعر أم يترك اليوم فارغًا.

هل تحصلون على وصول إلى جدولي؟

لا. تضيف السكربت إلى جدولك الخاص وتمنحه الصلاحيات بنفسك. لا نسجّل الدخول إلى حسابك على Google أبدًا.

لم تجد إجابتك؟

الباقات