# العمل مع جداول MaviBot

## إنشاء سجل جديد في الجدول بالقيم المحددة

إنشاء سجل جديد في جدول بالقيم المحددة.

new\_record(table\_id, data)

<table><thead><tr><th width="188.26171875">المعاملات</th><th>الوصف</th></tr></thead><tbody><tr><td>table_id </td><td>معرّف الجدول</td></tr><tr><td>data</td><td>قاموس يحتوي على البيانات المراد تسجيلها.<br><br>مثال: {"column_name1": "value1", "column_name2": "value2"}. إذا لم يكن العمود موجودًا، فسيتم إنشاؤه.</td></tr></tbody></table>

الاستجابة: معرّف السجل الجديد

### مثال

<div data-with-frame="true"><figure><img src="/files/fa8f1f15e2a62c2d299471c1bad73709fb96b8d8" alt="" width="563"><figcaption></figcaption></figure></div>

## تعديل سجل موجود في الجدول

edit\_record(table\_id, record\_id, data)

<table><thead><tr><th width="304.22265625">المعاملات</th><th>الوصف</th></tr></thead><tbody><tr><td>table_id</td><td>معرّف الجدول</td></tr><tr><td>record_id</td><td>معرّف السجل المعدَّل</td></tr><tr><td>data</td><td>قاموس يحتوي على البيانات المراد تعديلها. مثال: {"column_name1": "value3", "column_name2": "value4"}. إذا لم يكن العمود موجودًا، فلن يتم إنشاؤه.</td></tr></tbody></table>

الاستجابة:

يعيد البيانات الكاملة للسجل المعدَّل بالصيغة: {"column\_name1": "value3", "column\_name2": "value4"}.

### مثال

<div data-with-frame="true"><figure><img src="/files/0cbc7640d44ec511497b637a6ee84ea99862c9c7" alt="" width="563"><figcaption></figcaption></figure></div>

## حذف سجل من الجدول بواسطة معرّفه

delete\_record(table\_id, record\_id)

<table><thead><tr><th width="298.4140625">المعاملات</th><th>الوصف</th></tr></thead><tbody><tr><td>table_id</td><td>معرّف الجدول</td></tr><tr><td>record_id</td><td> معرّف السجل المحذوف</td></tr></tbody></table>

الاستجابة:

{'message': 'Deleted records: 1'}

## العثور على سجل في الجدول بالقيمة المحددة

find\_record(table\_id, value, find\_in, return\_from)

<table><thead><tr><th width="304.22265625">المعاملات</th><th>الوصف</th></tr></thead><tbody><tr><td>table_id</td><td>معرّف الجدول</td></tr><tr><td>value</td><td>القيمة المطابقة</td></tr><tr><td>find_in - </td><td>معامل اختياري. اسم العمود الذي سيتم البحث بواسطته. إذا لم يتم تحديده، فسيتم إجراء البحث عبر جميع الأعمدة.</td></tr><tr><td>return_from</td><td>معامل اختياري. اسم العمود الذي سيتم إرجاع القيمة منه.</td></tr></tbody></table>

الاستجابة:

إذا تم تحديد return\_from، فسيتم إرجاع القيمة من العمود المحدد (إذا كان موجودًا في الجدول). إذا لم يتم تحديد return\_from أو لم يكن العمود موجودًا، فسيتم إرجاع البيانات الكاملة للسجل الذي تم العثور عليه في الاستجابة، على سبيل المثال: {"column\_name1": "value3", "column\_name2": "value4"}.

### مثال

<div data-with-frame="true"><figure><img src="/files/f816d8f78eff898e3c3dc834c9dc5d9cbeaf43d5" alt=""><figcaption></figcaption></figure></div>

## استرجاع قيمة من السجل المحدد

get\_record\_data(table\_id, record\_id)

<table><thead><tr><th width="298.4140625">المعاملات</th><th>الوصف</th></tr></thead><tbody><tr><td>table_id</td><td>معرّف الجدول</td></tr><tr><td>record_id</td><td>معرّف السجل الذي تُسترجع منه القيم</td></tr><tr><td>return_column</td><td>معامل اختياري. اسم العمود الذي يجب إرجاع القيمة منه.</td></tr></tbody></table>

الاستجابة: إذا تم العثور على سجل، فسيتم إرجاع قاموس مثل {"column\_name1": "value1", "column\_name2": "value2"}. إذا تم توفير المعامل return\_column وكان هذا العمود موجودًا، فسيتم إرجاع القيمة فقط من ذلك العمود.

### أين يمكنني العثور على معرّف الجدول؟

<div data-with-frame="true"><figure><img src="/files/d4533a75c18afce04b492f8d15860c681b1108ce" alt="" width="220"><figcaption></figcaption></figure></div>

للتعامل مع وظائف الدردشة الآلية، ستحتاج إلى معرّف الجدول. ابحث عن الجدول المطلوب في القائمة وانقر عليه.

<div data-with-frame="true"><figure><img src="/files/72884aac7d82661468d0932f5dc51a7b33de3345" alt=""><figcaption></figcaption></figure></div>

بعد ذلك، انقر على شريط العنوان.

في شريط العنوان، سترى رابط URL مثل&#x20;<https://salebot.pro/projects/11111/table/2>,&#x20;حيث يمكنك العثور على معرّف الجدول المطلوب:

<div data-with-frame="true"><figure><img src="/files/b5b7df902f789eb04bb6f4fcb3c82f159907d2c5" alt="" width="563"><figcaption></figcaption></figure></div>

## استرجاع سجل من الجدول

get\_records\_from\_table(table\_id, start\_row, count, start\_col, end\_col) - استرجاع سجل من الجدول.

| المعامل    | الوصف                                                      | ملاحظة                                                                    |
| ---------- | ---------------------------------------------------------- | ------------------------------------------------------------------------- |
| table\_id  | معرّف الجدول                                               |                                                                           |
| start\_row | معامل اختياري، عدد صحيح. يحدد بداية نطاق الصفوف.           | رقم الصف الذي تبدأ القراءة منه (شاملاً). اكتبها بدون علامات اقتباس.       |
| count      | معامل اختياري، عدد صحيح. يحدد عدد الصفوف المراد استرجاعها. | افتراضيًا، تكون القيمة 1000، وبحد أقصى 5000. حدّدها بدون علامات اقتباس.   |
| start\_col | معامل اختياري، سلسلة نصية. يحدد بداية نطاق الأعمدة.        | اسم العمود الذي تبدأ القراءة منه (شاملاً). اكتبها بين علامتي اقتباس.      |
| end\_col   | معامل اختياري، سلسلة نصية. يحدد نهاية نطاق الأعمدة.        | اسم العمود الذي تُقرأ إليه قيم الجدول (شاملاً). اكتبها بين علامتي اقتباس. |

إذا حدّدت فقط بداية نطاق الصفوف أو الأعمدة، فسيتم إرجاع جميع البيانات من تلك النقطة فصاعدًا. يمكنك أيضًا حذف البداية وتحديد النهاية فقط للحصول على البيانات حتى تلك النقطة.

### مثال

في الكتلة التي تحتاج فيها إلى استرجاع السجلات من الجدول، انتقل إلى **"الحاسبة"** القسم في إعدادات الكتلة وأدخل الدالة مع المعاملات المطلوبة.

لنرَ كيف تُعرض البيانات في الجدول.

<div data-with-frame="true"><figure><img src="/files/8692a694fa6ec8c5859a47c0646bc826f8f5c00f" alt=""><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/9eefc159afc3daa850803b24b49812ab4f6c1e5a" alt="" width="563"><figcaption></figcaption></figure></div>

الآن، شغّل كتلة "Start" في وضع الاختبار.

<div data-with-frame="true"><figure><img src="/files/b13800bc68965a5f4ade1cd7ef0cb931253f14a5" alt="" width="375"><figcaption></figcaption></figure></div>

يمكننا رؤية البيانات التي كُتبت في المتغير من الجدول في الرسالة المرسلة من الروبوت. وبما أننا أشرنا إلى المتغير في الرسالة باستخدام الصيغة `#{}` ، فقد عُرضت البيانات المخزنة فيه في دردشة الروبوت.

<div data-with-frame="true"><figure><img src="/files/d31488aa5b8201ecbf813eb7ec578ddea6510301" alt="" width="563"><figcaption></figcaption></figure></div>

## استرجاع البيانات من الجدول ضمن نطاق محدد

table\_read\_cells(table\_id, cell\_data) - يتيح استرجاع البيانات من الجدول من خلال تحديد نطاقات.

<table><thead><tr><th width="286.37890625">المعامل</th><th>الوصف</th></tr></thead><tbody><tr><td><mark style="color:red;"><strong>!</strong></mark> table_id</td><td>معامل مطلوب، معرّف الجدول</td></tr><tr><td><mark style="color:red;"><strong>!</strong></mark> cell_data</td><td>معامل مطلوب، قاموس بالنطاقات.<br><strong>cell_data</strong> مثال: <code>'{"a1":"a1", "a3": "b4", "c1": "c3"}'</code></td></tr></tbody></table>

إذا لم تحدث أي مشكلات أثناء الطلب، فستكون الاستجابة قاموسًا يحتوي على الحالة وجميع الخلايا وقيمها:

`{"status": true, "A1": "value", "A3": "value", "B3": "value", "A4": "value", "B4": "value", "C1": "", "C2": "value", "C3": "ddddddd"أو، في حالة حدوث خطأ: {"status": false, "err": "رسالة الخطأ أو الوصف"}`

### مثال في الحاسبة

على سبيل المثال، تحتوي خلايا الجدول على القيم المحددة التالية:

<div data-with-frame="true"><figure><img src="/files/a1bebb09ceb68b10516849dac7c6808012532480" alt="" width="563"><figcaption></figcaption></figure></div>

لاسترجاع البيانات من الجدول عبر الروبوت، مرّر النطاقات المطلوبة إلى الدوال في **الحاسبة**.

<div data-with-frame="true"><figure><img src="/files/39e8301873fcd48ebc9bf2be40feebb299b9a07d" alt="" width="563"><figcaption></figcaption></figure></div>

في المثال، البنية #{res}، التي تحتوي على متغير، تساعد على عرض البيانات المسترجعة باستخدام الدالة والنطاق المحدد في الرسالة:

<div data-with-frame="true"><figure><img src="/files/abbed50135937c11d910f761daf3da918ec89fd2" alt="" width="563"><figcaption></figcaption></figure></div>

إذا كانت أسماء الأعمدة مختلفة (مثلًا، "Product" و"Number" و"Amount"), فيجب عليك تحديد النطاق باستخدام الصيغة {"Product1":"Amount3"}, حيث:

• **Product** هو اسم العمود الأول\
• **1** يشير إلى أنه رقم العمود 1\
• **المبلغ** هو اسم العمود الثالث\
• **3** يشير إلى أنه رقم العمود 3

<div data-with-frame="true"><figure><img src="/files/bf652fe2c7b0d9246df9d1314951b50d6be5f325" alt="" width="563"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/87529de159cb713abfd18c45fe49bf612aae39d4" alt="" width="563"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/4b288f0c546ce4747c2105c26b05c5ecdcc7af65" alt="" width="563"><figcaption></figcaption></figure></div>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/ar/chatbot/functions/alaalh-alhasbh/tables.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
