Skip to main contentA-REX Core

المخططات · 04

النسب عبر transform

transform هي الطريقة الوحيدة لصنع دفعة من دفعة. فهي تحرق المدخلات وتسك المخرجات وتسجّل الدفعات الأم؛ ويقابل BatchTransformed الحدث TransformationEvent في EPCIS 2.0 مقابلة واحد لواحد.

التقسيم والدمج والمعالجة عملية واحدة

flowchart LR
    subgraph SPLIT["إعادة تكوين الدفعة (تقسيم) · لا حاجة إلى دور · السلعة ووحدة القياس نفسهما · الكمية محفوظة"]
        W1["#1 قمح 250 طن"] --> W2["#2 قمح 60 طن"]
        W1 --> W3["#3 قمح 40 طن"]
    end
    subgraph MERGE["إعادة تكوين الدفعة (دمج)"]
        M1["#4 بن 10 طن"] --> M3["#6 بن 25 طن"]
        M2["#5 بن 15 طن"] --> M3
    end
    subgraph PROC["المعالجة · TRANSFORMER_ROLE · تتغير السلعة أو الكمية"]
        P1["#2 قمح 60 طن"] --> P2["#7 دقيق 45 طن"]
    end

الدفعات الأم قابلة للاستعلام على السلسلة

flowchart TB
    F7["parentsOf(7) → [2]"] --> F2["parentsOf(2) → [1]"] --> F1["parentsOf(1) → []"]

يتتبّع سحب المنتج parentsOf رجوعًا إلى المنشأ وأحداث BatchTransformed أمامًا إلى كل دفعة مشتقة. ويقارن تدقيق موازنة الكتلة كميات المدخلات والمخرجات في كل خطوة معالجة بالنسبة المعتمدة.

القواعد التي ينفّذها المرجع

القاعدةالموضع
يجب أن تكون المدخلات موجودة وغير مسحوبة من التداول وأن يحوزها from (أو أن يكون المستدعي معتمدًا من from)transform، _update
إعادة تكوين الدفعة (السلعة نفسها، ووحدة القياس نفسها، Σ in = Σ out) لا تحتاج إلى دورفحص isRebatch
أي شيء آخر يحتاج إلى TRANSFORMER_ROLEtransform
يسجّل كل مخرج parents = inputIds وissuer = msg.senderالتخزين
ترى الخطافات OP_TRANSFORM للمدخلات والمخرجاتسياق _update