Write

الكتابة على مستند.

تمثيل JSON
{
  "updateMask": {
    object (DocumentMask)
  },
  "updateTransforms": [
    {
      object (FieldTransform)
    }
  ],
  "currentDocument": {
    object (Precondition)
  },

  // Union field operation can be only one of the following:
  "update": {
    object (Document)
  },
  "delete": string,
  "transform": {
    object (DocumentTransform)
  }
  // End of list of possible types for union field operation.
}
الحقول
updateMask

object (DocumentMask)

الحقول المطلوب تعديلها في هذه الكتابة.

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

updateTransforms[]

object (FieldTransform)

عمليات التحويل المطلوب تنفيذها بعد التحديث.

لا يمكن ضبط هذا الحقل إلا عندما تكون العملية update. في حال توفّر هذه الكتابة، تعادل هذه العملية تنفيذ update وtransform في المستند نفسه بشكل شامل وبالترتيب.

currentDocument

object (Precondition)

شرط مسبق اختياري في المستند.

ستتعذّر الكتابة إذا تم ضبط ذلك ولم يتم استيفاء هذا الشرط من خلال المستند الهدف.

حقل الاتحاد operation العملية المطلوب تنفيذها. يمكن أن يكون الحقل "operation" واحدًا فقط مما يلي:
update

object (Document)

وثيقة للكتابة.

delete

string

اسم المستند الذي تريد حذفه. بالتنسيق: projects/{projectId}/databases/{databaseId}/documents/{document_path}.

transform

object (DocumentTransform)

يتم تطبيق عملية تحويل على مستند.

DocumentTransform

تحويل مستند.

تمثيل JSON
{
  "document": string,
  "fieldTransforms": [
    {
      object (FieldTransform)
    }
  ]
}
الحقول
document

string

اسم المستند المطلوب تحويله

fieldTransforms[]

object (FieldTransform)

قائمة عمليات التحويل المطلوب تطبيقها على حقول المستند بالترتيب يجب ألا يكون هذا الحقل فارغًا.

FieldTransform

تحويل حقل من المستند.

تمثيل JSON
{
  "fieldPath": string,

  // Union field transform_type can be only one of the following:
  "setToServerValue": enum (ServerValue),
  "increment": {
    object (Value)
  },
  "maximum": {
    object (Value)
  },
  "minimum": {
    object (Value)
  },
  "appendMissingElements": {
    object (ArrayValue)
  },
  "removeAllFromArray": {
    object (ArrayValue)
  }
  // End of list of possible types for union field transform_type.
}
الحقول
fieldPath

string

مسار الحقل. اطّلِع على Document.fields للاطّلاع على مرجع بنية مسار الحقل.

حقل الاتحاد transform_type التحويل المطلوب تطبيقه على الحقل. يمكن أن يكون الحقل "transform_type" واحدًا فقط مما يلي:
setToServerValue

enum (ServerValue)

لضبط الحقل على قيمة الخادم المحددة.

increment

object (Value)

لإضافة القيمة المحدّدة إلى القيمة الحالية للحقل

يجب أن يكون هذا العدد عددًا صحيحًا أو قيمة مزدوجة. إذا لم يكن الحقل عددًا صحيحًا أو مزدوجًا، أو إذا لم يكن الحقل متوفرًا بعد، ستؤدّي عملية التحويل إلى ضبط الحقل على القيمة المحدّدة. إذا كان أي من القيمة المقدَّمة أو قيمة الحقل الحالي مضاعفة، سيتم تفسير كلتا القيمتين على أنهما مزدوجتان. يتبع الحساب المزدوج وتمثيل القيم المزدوجة دلالات معهد الهندسة الكهربائية والإلكترونية IEEE 754. إذا كان هناك تجاوز سعة عدد صحيح موجب/سالب، يتم حل الحقل إلى أكبر عدد صحيح موجب/سالب للمقدار الأكبر.

maximum

object (Value)

لضبط الحقل على الحد الأقصى لقيمته الحالية والقيمة المحدّدة.

يجب أن يكون هذا العدد عددًا صحيحًا أو قيمة مزدوجة. إذا لم يكن الحقل عددًا صحيحًا أو مزدوجًا، أو إذا لم يكن الحقل متوفرًا بعد، ستؤدّي عملية التحويل إلى ضبط الحقل على القيمة المحدّدة. في حال تطبيق عملية حد أقصى حيث كان الحقل وقيمة الإدخال من أنواع مختلطة (أي أنّ أحدهما عدد صحيح والآخر مزدوج)، سيتخذ الحقل نوع المعامل الأكبر. إذا كانت المعاملان متكافئة (مثل 3 و3.0)، فلن يتغير الحقل. 0 و0.0 و-0.0 كلها صفر. الحد الأقصى للقيمة المخزنة بقيمة صفرية وقيمة الإدخال صفر هو دائمًا القيمة المخزَّنة. الحد الأقصى لأي قيمة رقمية x وNaN هو NaN.

minimum

object (Value)

لضبط الحقل على الحد الأدنى من قيمته الحالية والقيمة المحدّدة.

يجب أن يكون هذا العدد عددًا صحيحًا أو قيمة مزدوجة. إذا لم يكن الحقل عددًا صحيحًا أو مزدوجًا، أو إذا لم يكن الحقل متوفرًا بعد، ستؤدّي عملية التحويل إلى ضبط الحقل على قيمة الإدخال. في حال تطبيق حد أدنى من العملية حيث كان الحقل وقيمة الإدخال من أنواع مختلطة (أي أنّ أحدهما عدد صحيح والآخر مزدوج)، سيتخذ الحقل نوع المعامل الأصغر. إذا كانت المعاملان متكافئة (مثل 3 و3.0)، فلن يتغير الحقل. 0 و0.0 و-0.0 كلها صفر. الحد الأدنى لأي قيمة مخزّنة بقيمة صفرية وقيمة الإدخال صفر هو دائمًا القيمة المخزَّنة. الحد الأدنى لأي قيمة رقمية x وNaN هو NaN.

appendMissingElements

object (ArrayValue)

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

تعتبر الأعداد المكافئة من الأنواع المختلفة (مثل 3L و3.0) متساوية عند التحقق من عدم وجود قيمة. NaN تساوي NaN وNull تساوي Null. إذا كان الإدخال يحتوي على قيم مكافئة متعددة، سيتم النظر في القيمة الأولى فقط.

ستكون نتيجة Convert_result المقابلة هي القيمة الفارغة.

removeAllFromArray

object (ArrayValue)

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

تعتبر الأعداد المكافئة للأنواع المختلفة (مثل 3L و3.0) متساوية عند تحديد ما إذا كان يجب إزالة أحد العناصر أم لا. NaN تساوي NaN وNull تساوي Null. سيؤدي هذا إلى إزالة جميع القيم المكافئة في حال وجود تكرارات.

ستكون نتيجة Convert_result المقابلة هي القيمة الفارغة.

ServerValue

يشير ذلك إلى قيمة يُحتسبها الخادم.

عمليات التعداد
SERVER_VALUE_UNSPECIFIED غير محدد يجب عدم استخدام هذه القيمة.
REQUEST_TIME الوقت الذي يعالج فيه الخادم الطلب، بدقة بالمللي ثانية. في حال استخدامها في حقول متعددة (في المستندات نفسها أو في مستندات مختلفة) ضمن معاملة، سيتم منح الطابع الزمني نفسه للخادم في جميع الحقول.