Context Setter¶
Belirtilen WorkStation'a ait bir StateContext üzerinde bir veya birden fazla property değerini programatik olarak ayarlar.
Özet¶
Context Getter kardeşi
Context Getter bir StateContext'i okur; Context Setter ise bir StateContext'e yazar. Context Getter'ın aksine asenkron değildir — panel değerleri doğrudan Responser üzerinden iletilir, ayrı bir Method Returns akışı gerekmez.
Property Tablosu¶
| Alan | Tip | Varsayılan | Açıklama |
|---|---|---|---|
name |
string | — | Node adı |
context |
combobox | AnalysisStateContext |
Değer atanacak StateContext |
workstationid |
num | msg | 0 |
Hedef istasyon ID'si |
workstationidType |
"num" | "msg" |
"num" |
WorkStation ID değer kaynağı |
items |
array | [] |
Atanacak property listesi (n, v, vt) |
items Dizisi¶
Her öğe üç alandan oluşur:
| Alan | Açıklama |
|---|---|
n |
Property adı (string) |
v |
Atanacak değer |
vt |
Değer tipi: str, num, bool, msg, flow, global, json, env, jsonata |
Context Seçenekleri (25 adet)¶
Context Getter ile birebir aynı context listesini destekler. Editörde context seçildiğinde o context'e ait property açıklamaları otomatik görüntülenir.
| Context | Kapsam |
|---|---|
AnalysisStateContext |
OEE, performans, vardiya analizleri |
BarcodeStateContext |
Barkod okutma konfigürasyonu |
CapacityStateContext |
Çevrim süresi, max kapasite, hız |
ConsumptionStateContext |
Sarf tüketimi ve lot verileri |
CounterStateContext |
Üretim sayaçları ve sinyal portları |
DefectStateContext |
Iskarta miktarları ve konfigürasyonları |
EmployeeStateContext |
Personel giriş/çıkış ve takım bilgisi |
EnergyStateContext |
Enerji tüketim verileri (kW) |
EquipmentStateContext |
Mevcut ekipman bilgisi ve konfigürasyonu |
ForkliftStateContext |
Forklift görevi oluşturma ve takibi |
LabelStateContext |
Etiket yazıcı konfigürasyonu |
LineStateContext |
Hat üretimi, master istasyon |
MaintenanceStateContext |
Bakım planı, aktif bakım iş emri |
OpcStateContext |
OPC üzerinden ekipman/stok/hız konfigürasyonu |
OperationStateContext |
Mevcut operasyon bilgileri |
ProcessDataStateContext |
Proses veri analiz değerleri |
ProductionConfirmationStateContext |
Üretim bildirimi konfigürasyon ve son kayıtlar |
ProductionPlanStateContext |
Yüklü plan bilgileri, stoklar, iş emirleri |
ProductionToleranceStateContext |
Üretim tolerans kontrol değerleri |
QualityControlStateContext |
Kalite kontrol tanımları ve output konfigürasyonları |
RobotModelStateContext |
Robot model üretim kurgusu |
ScaleStateContext |
Terazi ağırlık ve port verileri |
SerieStateContext |
Mevcut ürün seri barkodu |
StoppageStateContext |
Mevcut duruş bilgileri, süre, output konfigürasyonları |
WorkStationStateContext |
İstasyon kimlik ve iş merkezi bilgileri |
Property açıklamaları
Node editör panelinde Context seçimi değiştikçe, seçilen context'e ait tüm property'lerin açıklamaları WorkStation ID alanının altında görünür.
Çıkış Mesajı¶
msg.payload dizisine eklenen operasyon:
{
"message" : "CapacityStateContext",
"valuelabel" : 5,
"name" : "SpeedSetter",
"operationtype": "ContextSetterProcess",
"items": [
{ "itemname": "InstantSpeed", "value": 120 },
{ "itemname": "CyclePeriod", "value": 30 }
]
}
| Alan | Açıklama |
|---|---|
message |
Seçili StateContext adı |
valuelabel |
Hedef istasyon ID'si |
name |
Node adı |
operationtype |
Sabit: "ContextSetterProcess" |
items[].itemname |
Atanacak property adı |
items[].value |
Hesaplanmış değer |
Değer Tipi Çözümleme¶
vt değerine göre değerler çalışma anında hesaplanır:
vt |
Kaynak |
|---|---|
str |
Sabit string |
num |
Number(v) dönüşümü |
bool |
v === 'true' |
msg |
msg içinden okunur (RED.util.getMessageProperty) |
flow |
Flow context'inden okunur |
global |
Global context'inden okunur |
json |
JSON.parse(v) |
env |
Ortam değişkeni |
jsonata |
JSONata ifadesi değerlendirilir |
Tipik Akış¶
flowchart LR
A[Business Events<br/>OnShiftChanged] --> B[Context Setter<br/>CapacityStateContext<br/>wsId=5]
B --> C[Responser]
style A fill:#ccffcc,color:#000
style B fill:#ccffcc,color:#000
style C fill:#ccffcc,color:#000
Context Getter ile Farkı¶
| Özellik | Context Getter | Context Setter |
|---|---|---|
| Amaç | Context'i oku | Context'e yaz |
| Asenkron | Evet (Method Returns) | Hayır |
| items dizisi | Yok | Var |
| operationtype | ContextGetterProcess |
ContextSetterProcess |
| Method Returns | Gerekli | Gerekmez |
WorkStation ID Kaynağı¶
Örnek Senaryo — Anlık Hız Güncelleme¶
Business Events—OnProductionCounterIncreasedtetiklenirfunctionnode —msg.newSpeed = msg.payload.InstantSpeed * 1.05hesaplarContext Setter—CapacityStateContext, Item:InstantSpeed=msg.newSpeed(msg)Responser— panel güncellendi
Sık Karşılaşılan Hatalar¶
Değer uygulanmıyor
- Doğru WorkStation ID girildi mi?
- Property adı büyük/küçük harf duyarlıdır. Context Getter ile okuyarak alanı doğrulayın.
msg tipi değer boş geliyor
vt = msg seçiliyken belirtilen yol önceki node'dan gelmiyor olabilir. debug node ile kontrol edin.
İlgili¶
- Context Getter — StateContext okuma
- Method Invoker — Servis method çağrısı
- Responser — Her akışın sonu