منهج الأتمتة والنو-كود: من أول سير عمل إلى أول عميل ← الدرس 4
الدرس 4 من 9 · جداول جوجلجدول طلبات في Google Sheets يعبّي نفسه
بتطلع من هالدرس وأنت قادر على: تربط n8n بجدول Google Sheets وتخلي كل طلب جديد يضيف سطره لحاله بدون تكرار.
المدة: فيديو 7 دقيقة + تمرين حتى 20 دقيقة · آخر تحقق من الروابط والفيديو: 2 تشرين الأول 2026
ليش هالدرس مهم
الجدول هو قاعدة البيانات اللي أغلب أصحاب الشغل الصغير بيفهموها وبيحبوها. صاحب محل ثياب بحلب ما رح يستعمل أي نظام معقد، بس بيفتح جدول جوجل كل صباح. لما تربط أتمتتك بجدول هو أصلاً بيستعمله، العميل بيشوف النتيجة بدون ما تشرحله شي.
وأكتر طلب بيجيك كمبتدئ بيكون من هالنوع بالضبط: «كل ما حدا يعبّي نموذجي، بدي ينضاف سطر بجدولي». هاد مشروع بيتسلّم بيوم وبيخليك تقول للعميل «جاهز» بثقة.
ومعه بتتعلم أصعب نقطة بالدرس: بيانات الاعتماد، يعني كيف تعطي n8n صلاحية على جدولك بأمان.
الفيديو
فيديو بديل اختياري: «N8N مع Google sheet خطوه بخطوه, اسهل طريقه لربط» — قناة Essahib الصاحب (10:58) — youtube.com/watch?v=a2jydbwpFcQ
الشرح خطوة بخطوة
بحسب سجلنا، ما عندنا صفحة حالة موثقة لوصول حسابات جوجل من سوريا لهالخدمة بالذات، فاعتمد على جدولك من الدرس الأول: إذا فتح معك sheets.new بدون مشاكل، كمّل. وإذا ما فتح، في بديل بنهاية الدرس.
بالخطوات تحت رح تبني: Webhook يستقبل الطلب، ثم عقدة تجهز الحقول وتضيف التاريخ، ثم عقدة Google Sheets تضيف الصف. وبعد ما يشتغل، رح تبدّل الإضافة بعملية «أضف أو حدّث» حتى ما يتكرر نفس الطلب مرتين.
- افتح جدولاً جديداً باسم «طلبات المتجر» وكتب بالصف الأول أسماء الأعمدة: التاريخ، رقم الطلب، الاسم، المنتج، الكمية، الحالة. شو رح تشوف على الشاشة: جدول فيه ستة عناوين بالصف الأول، وباقي الجدول فاضي.إذا ما ظهرلك: إذا فضّلت أسماء لاتينية للأعمدة، استخدمها؛ بعض الربط بيتصرف أسهل معها، ولا فرق بالنتيجة.
- بـn8n افتح سير العمل «استقبال طلب» من الدرس الثالث وأضف بعد عقدة الحقول عقدة Google Sheets، والعملية: Append Row. شو رح تشوف على الشاشة: عقدة بقسمين: بيانات الاعتماد (Credential) وإعدادات الجدول.إذا ما ظهرلك: إذا ما ظهرت العملية، تأكد من اختيار المورد Sheet Within Document وليس Document.
- اضغط على خانة بيانات الاعتماد واختر Create new credential. بيظهرلك رابط إعادة التوجيه (OAuth Redirect URL) وخانتان: Client ID وClient Secret. شو رح تشوف على الشاشة: نافذة فيها رابط ينتهي بكلمة callback، وبجانبه نص يشرح الخطوات.إذا ما ظهرلك: انسخ الرابط الظاهر عندك أنت بالضبط، لأنه بيختلف بين محلي وسيرفر.
- افتح Google Cloud Console بحسابك، أنشئ مشروعاً جديداً، وفعّل واجهتين: Google Sheets API وGoogle Drive API. شو رح تشوف على الشاشة: صفحة مكتبة الواجهات فيها زر Enable لكل واجهة، وبعد التفعيل بيتغير الزر.إذا ما ظهرلك: إذا الصفحة ما فتحت، سجّل بالسجل «Google Cloud ما فتح» وانتقل لخطة البديل بنهاية الدرس.
- من قسم Credentials أنشئ OAuth client ID نوع Web application، والصق رابط إعادة التوجيه اللي نسخته بخانة Authorized redirect URIs. شو رح تشوف على الشاشة: بعد الحفظ بتظهر نافذة فيها Client ID وClient Secret.إذا ما ظهرلك: إذا طلب إعداد شاشة الموافقة (Consent screen) أولاً، اختر نوع External وأضف إيميلك كمستخدم تجريبي.
- انسخ Client ID وClient Secret للصق بهم n8n، ثم اضغط Sign in with Google ووافق على الصلاحيات. شو رح تشوف على الشاشة: نافذة جوجل بتسأل عن الحساب والصلاحيات، وبعدها بترجع لـn8n بعلامة اتصال ناجح.إذا ما ظهرلك: إذا ظهر تحذير أن التطبيق غير موثّق، هاد طبيعي لأنه تطبيقك التجريبي؛ كمّل بالتقدم المتقدم ووافق. لا تشارك Client Secret مع أي حدا.
- بعقدة Google Sheets اختر ملفك من القائمة، ثم الورقة، وبعدين وزّع الأعمدة: كل عمود بتربطه بحقل من العقدة السابقة. استخدم للتاريخ التعبير
{{ $now.toFormat('yyyy-MM-dd') }}. شو رح تشوف على الشاشة: ستة حقول بعدد أعمدتك، كل واحد بقيمة أو تعبير، والمعاينة بتظهر الصف المتوقع.إذا ما ظهرلك: إذا الأعمدة ما ظهرت، اضغط تحديث القائمة؛ n8n بتقرأ الصف الأول من الجدول. - للرقم الفريد للطلب استخدم
{{ $now.toMillis() }}بعمود «رقم الطلب»، وللحالة اكتب «جديد». شو رح تشوف على الشاشة: رقم طويل بالمعاينة، وهو الوقت بالملي ثانية، فريد عملياً لكل طلب.إذا ما ظهرلك: إذا بدك رقماً أقصر، اطرح منه رقماً ثابتاً أو استخدم عدّاداً من الجدول لاحقاً. - أرسل طلباً تجريبياً بأمر curl.exe من الدرس الثالث وراقب الجدول. لازم يظهر صف جديد خلال ثوانٍ. شو رح تشوف على الشاشة: صف مكتمل بالجدول بتاريخ اليوم والحالة «جديد».إذا ما ظهرلك: إذا ما ظهر، افتح التنفيذ وشوف رسالة الخطأ؛ أغلب الأخطاء من اسم ورقة غير مطابق أو صلاحية ناقصة.
- غيّر العملية إلى Append or Update Row واختر عمود «رقم الطلب» كعمود مطابقة. أرسل نفس الطلب مرتين بنفس الرقم وتأكد إن الصف ما انتكرر. شو رح تشوف على الشاشة: صف واحد بس رغم الإرسالين، والثاني حدّث الأول.إذا ما ظهرلك: هالخطوة ما بتنفع إذا الرقم بيتغير بكل مرة؛ بالتجربة اعتمد رقماً ثابتاً مرسلاً من الطلب نفسه.
لماذا نمنع التكرار؟
الشبكات الضعيفة والنماذج اللي بيضغط عليها الزبون مرتين بتبعت الطلب أكتر من مرة. الجدول المتكرر بيخلي صاحب المحل يجهّز الطلب مرتين، وهاد أول سبب لفقدان الثقة بالأتمتة. لذلك مطابقة الصف برقم الطلب جزء من الحل وليس تحسيناً اختيارياً.
قاعدة بسيطة: كل طلب لازم يحمل معرّفاً من مصدره. إذا المصدر ما بيعطي معرّفاً، ابنِ واحداً من الوقت والاسم، ووثّق ذلك للعميل.
خطة بديلة إذا Google ما اشتغل
إذا حسابك أو Google Cloud ما اشتغلوا معك، ما بتوقف: n8n بتقدر تكتب ملف CSV بالقرص عبر عقدتي Convert to File وRead/Write Files from Disk، وبعض الإصدارات فيها جداول داخلية (Data tables) تخزن البيانات داخل n8n نفسها. جرّب أيهم بيظهر بإصدارك. المنطق متل بعض: استقبال ثم تجهيز ثم كتابة. سجّل بالسجل أي بديل استخدمت وليش.
خطأ شائع: ورقة بتتغير تسميتها
إذا غيّرت اسم الورقة أو ترتيب الأعمدة بعد ما ربطت، الأتمتة ممكن تكتب القيم بالأعمدة الغلط بدون ما تعطيك خطأ واضح. اتفق مع العميل بوضوح: ممنوع تعديل صف العناوين، ومسموح إضافة أعمدة جديدة بعد الأخيرة.
جرّب بنفسك
أكمل سير العمل «استقبال طلب» بحيث يضيف أو يحدّث صفاً بجدول «طلبات المتجر». أرسل خمسة طلبات: ثلاثة مختلفة، ومرتين نفس الرقم.
التقط لقطة شاشة للجدول وفيه ثلاثة صفوف بس (مو خمسة)، ولقطة لسير العمل. صدّر الملف باسم 04-sheet-orders.json.
معيار النجاح:
- الجدول فيه ثلاثة صفوف بعد الإرسالات الخمسة، بلا تكرار.
- عمود التاريخ بيتعبّى بتاريخ اليوم تلقائياً.
- بيانات الاعتماد مسمّاة بوضوح (مثلاً: Sheets-متجر) ولم تلصق أي مفتاح داخل حقول العقد.
فحص سريع
ليش نستخدم Append or Update بدل Append؟
حتى لا يتكرر نفس الطلب إذا انبعت مرتين؛ المطابقة برقم الطلب بتحدّث الصف الموجود.
وين بنخزن Client Secret؟
داخل بيانات الاعتماد بـn8n فقط، ولا بنكتبه بأي عقدة ولا بنرسله لحدا.
شو الخطة إذا Google Cloud ما فتح؟
بنسجل الحالة بالسجل ونستعمل ملف CSV أو جداول n8n الداخلية إن توفرت، والمنطق نفسه.
مستند الدرس
انسخ هالخلاصة لملاحظاتك، أو اطبعها من مستند المنهج الكامل.
وصلات ذات صلة: مسار الأتمتة · مشروع نموذج طلبات وإشعار · نظام النسخ الاحتياطي · رسالة بدء المشروع
التالي
خلّصت الكورس؟ ثبّتو بشهادة موثّقة
الاختبار مجاني، والشهادة بتصدر بالدعوات بلا أي دفع. والقناة فيها فرص لتطبّق يلي تعلّمتو.