DeepLeaf Yield DeepLeaf Yield

استيراد ملف CSV للمناخ

تُرفع ملفات المناخ إلى ملف CSV للمناخ في التطبيق، أو عبر POST …/climate/csv. ويقرأ DeepLeaf Yield معظم الملفات المصدَّرة من حواسيب المناخ ومسجّلات البيانات كما هي، ويعرض ما عثر عليه قبل حفظ أي شيء.

صفحة المناخ في التطبيق ضمن السجلات ثم المناخ: زرّا ملف CSV للمناخ وإضافة قراءة، وأداة اختيار الدورة الزراعية، وجدول قراءات المستشعرات من الأحدث إلى الأقدم مع الوقت والمقياس والقيمة وشارات المصدر، ولكل صف زرّا تعديل وحذف.
صفحة المناخ. يفتح ملف CSV للمناخ نافذة الرفع، التي تفحص الملف قبل استيراده.

الاكتشاف التلقائي

يُقرأ الملف الذي لا يستخدم أسماء أعمدة DeepLeaf Yield دون مطابقة. ويكتشف DeepLeaf Yield:

  • سطر العناوين، أسفل أي أسطر لتفاصيل التصدير فوقه؛
  • محتوى كل عمود، من أسماء الأعمدة بالإنجليزية أو الهولندية أو الإسبانية أو الفرنسية؛
  • الوحدات المكتوبة في العنوان، مثل Temp (°C)، أو في سطر وحدات تحته، ويحوّل °F وhPa وPa وµS/cm وmL/m² إلى الوحدات المخزَّنة؛
  • أعمدة التاريخ والوقت المنفصلة، والساعة بنظام 12 ساعة؛
  • عدة أقسام في ملف واحد؛
  • هل تُكتب التواريخ باليوم أولًا أم بالشهر أولًا.

وما لا يستطيع حسمه، مثل وحدة قد تكون °C أو °F، يُذكر مشكلةً يجب إصلاحها، ولا يُخمَّن أبدًا. ولا يُستورد ملف فيه مشكلات.

الفحص قبل الاستيراد

  1. اختر الملف ضمن ملف CSV للمناخ واضغط افحص الملف.
  2. اقرأ ما سيُستورد: طريقة الترتيب، وكل عمود مع وحدته وتحويله، والفترة الزمنية، والصفوف الأولى كما ستُخزَّن. وألغِ تحديد عمود لاستبعاده.
  3. إذا كان الملف يضم عدة أقسام، فاختر واحدًا ضمن القسم. واستورد الأقسام الأخرى في الدورة الزراعية لبيتها المحمي.
  4. إذا كان كل تاريخ يُقرأ بالطريقتين، مثل 04/05، فاختر اليوم أولًا (31/12) أو الشهر أولًا (12/31) ضمن ترتيب التاريخ. وإلا فيُستنتج الترتيب من الفواصل الزمنية بين الصفوف.
  5. اضغط استيراد. يُخزَّن ما فُحص بالضبط. والقراءة المخزَّنة سابقًا للوقت والمقياس والمصدر نفسها تبقى كما هي ولا تتكرر.

وفي واجهة البرمجة، يعيد POST …/climate/csv/preview الفحص نفسه ولا يخزّن شيئًا. أرسل mapping الذي يعيده مع الرفع لاستيراد ما عُوين بالضبط.

الصيغة الطويلة أو العريضة

تُقرأ صيغ DeepLeaf Yield الخاصة مباشرةً. الطويلة: قراءة واحدة في كل سطر.

timestamp,metric,value,source
2026-09-29 08:00,temperature_c,23.5,logger
2026-09-29 08:00,humidity_pct,71,logger

العريضة: عمود timestamp، ثم عمود لكل مقياس. ويأتي المصدر من حقل source في النموذج، وقيمته الافتراضية csv.

timestamp;temperature_c;humidity_pct;co2_ppm
2026-09-29 08:00;23,5;71;650

مطابقة الأعمدة

فقط عندما يخطئ الاكتشاف في قراءة عمود، سمِّ الأعمدة ضمن سمِّ الأعمدة بنفسك (حقل النموذج columns):

GHtime=timestamp,Tair=temperature_c,RHair=humidity_pct,CO2air=co2_ppm

تُتجاهل الأعمدة غير المذكورة في المطابقة، ولا يُستخدم أي اكتشاف تلقائي.

الفواصل والكسور العشرية والخلايا الفارغة

  • تُقبل الفاصلة والفاصلة المنقوطة والجدولة كلها فواصلَ بين الأعمدة.
  • مع الفاصلة المنقوطة أو الجدولة، تُقرأ الفاصلة علامةً عشرية، فتكون 23,5 هي 23.5.
  • تُتخطى الخلايا الفارغة وNaN و- و#N/A، وكذلك أسطر العناوين المكررة.
  • تُحذف علامة ترتيب البايتات التي تضيفها جداول البيانات عند التصدير. ويجب أن يكون الملف بترميز UTF-8.

الأوقات

  • أوقات ISO مثل 2026-09-29 08:00 أو 2026-09-29T08:00+01:00.
  • تُقرأ الأرقام التسلسلية للأيام في جداول البيانات، مثل 43326.0034722 (تواريخ Excel)، أوقاتًا.
  • يُقرأ الوقت الذي لا يحمل فارقًا زمنيًا بتوقيت المنطقة الزمنية للبيت المحمي، أو بتوقيت UTC إذا لم تكن للبيت المحمي منطقة. والفارق المكتوب في الوقت، أو عمود الوقت الموسوم بـ UTC، يتقدّم دائمًا.
  • تُخزَّن الأوقات بتوقيت UTC.