في ملفي عمودان باسم «السعر» (قبل الخصم وبعده)، فلماذا صار اسم أحدهما مختلفًا في JSON؟
لأن كائن JSON لا يستطيع أن يحمل المفتاح نفسه مرتين، فلو بقي الاسمان متطابقين لضاعت إحدى القيمتين. لذلك تُضاف لاحقة رقمية إلى العمود المكرر، فيصبح الثاني price_1، وتذكر الأداة ذلك في ملاحظاتها. الأفضل أن تعيد تسمية العمودين في الجدول باسمين واضحين قبل التحويل.
مثال: سعر قبل الخصم وسعر بعده
ملف منتجات صدّرته من برنامج المخزون، وفيه عمود رمز المنتج ثم عمودان عنوان كل منهما price، الأول قبل الخصم والثاني بعده:
sku,price,price
A1,10,12
بعد تحويله إلى JSON أعطت الأداة هذا الكائن:
{"sku": "A1", "price": "10", "price_1": "12"}
وظهرت تحت الناتج ملاحظة: «عناوين مكررة أُعيدت تسميتها: price -> price_1». القيمتان محفوظتان، لكن الاسم الجديد لا يخبر من يقرأ JSON أيهما السعر بعد الخصم.
ماذا لو تكرر الاسم ثلاث مرات؟
جربنا ثلاثة أعمدة باسم price بالقيم 10 و12 و9، فصارت المفاتيح price وprice_1 وprice_2، وذكرت الملاحظة إعادتي التسمية كلتيهما. الترتيب يتبع ترتيب الأعمدة في الملف: الأول يحتفظ بالاسم الأصلي، وما بعده يأخذ الأرقام بالتتابع.
لماذا لا تكفي الأسماء التلقائية؟
- المطور أو النظام الذي سيستقبل JSON يبحث غالبًا عن أسماء محددة، ولن يعرف أن price_1 هو سعر البيع بعد الخصم.
- لو تغير ترتيب الأعمدة في تصدير لاحق، سينقلب المعنى: سيصبح price هو السعر بعد الخصم دون أن ينتبه أحد.
- الملاحظة تظهر مرة في الأداة، لكنها لا تُكتب داخل JSON نفسه، فمن يستلم الملف لا يراها.
الطريقة الأنظف
- افتح الملف في برنامج الجداول وغيّر العنوانين إلى اسمين يشرحان نفسيهما، مثل price_before وprice_after.
- احفظه بصيغة CSV، ثم افتحه أو الصقه في محوّل CSV و JSON باتجاه «CSV إلى JSON».
- تأكد أن ملاحظة «عناوين مكررة» لم تعد تظهر.
- انسخ JSON أو نزّله.
حالة قريبة: عنوان فارغ
إن كان أحد الأعمدة بلا عنوان أصلًا، فستظهر ملاحظة مختلفة: «أحد عناوين الأعمدة فارغ، فصار اسم المفتاح نصًا فارغًا». هذا يحدث كثيرًا مع عمود ملاحظات أضيف في الجدول دون أن يُسمّى. الحل نفسه: أعطه اسمًا قبل التحويل.
وفي الاتجاه المعاكس، إن كان في JSON الذي تحوله إلى CSV كائن فيه المفتاح نفسه مرتين، فتبقى القيمة الأخيرة فقط، وتنبهك الأداة بقائمة المفاتيح المكررة. هناك لا تُعاد التسمية لأن محلل JSON نفسه يحتفظ بقيمة واحدة.
أسئلة شائعة
هل أفقد أي قيمة عند إعادة التسمية؟
لا. كل الأعمدة تبقى، ويحصل المكرر منها على لاحقة رقمية.
هل أستطيع اختيار اللاحقة؟
لا، اللاحقة تُضاف تلقائيًا. لتختار الاسم بنفسك غيّر العنوان في الملف قبل التحويل.
هل تحدث إعادة التسمية إن أوقفت «الصف الأول عناوين أعمدة»؟
لا، فحينها يصبح كل صف مصفوفة قيم بلا أسماء، ولا توجد مفاتيح لتتكرر.
