เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ
เช่นเดียวกับตัวแปรในภาษาโปรแกรมมิ่ง ตัวแปรในเวิร์กโฟลว์เป็นเครื่องมือสำคัญที่ใช้เชื่อมโยงและจัดระเบียบกระบวนการต่างๆ ครับ/ค่ะ
เมื่อแต่ละโหนดถูกประมวลผลหลังจากเวิร์กโฟลว์ถูกทริกเกอร์ การตั้งค่าบางอย่างสามารถเลือกใช้ตัวแปรได้ครับ/ค่ะ โดยแหล่งที่มาของตัวแปรเหล่านี้คือข้อมูลจากโหนดต้นน้ำของโหนดปัจจุบัน ซึ่งแบ่งออกเป็นประเภทต่างๆ ดังนี้:
เราได้ใช้งานฟังก์ชันตัวแปรหลายครั้งแล้วในส่วน เริ่มต้นใช้งานอย่างรวดเร็ว ครับ/ค่ะ ตัวอย่างเช่น ในโหนดการคำนวณ เราสามารถใช้ตัวแปรเพื่ออ้างอิงข้อมูลบริบทการทริกเกอร์สำหรับการคำนวณได้ดังนี้:

ในโหนดอัปเดต เราใช้ข้อมูลบริบทการทริกเกอร์เป็นตัวแปรสำหรับเงื่อนไขการกรอง และอ้างอิงผลลัพธ์จากโหนดการคำนวณเป็นตัวแปรสำหรับค่าฟิลด์ที่จะอัปเดตครับ/ค่ะ:

ตัวแปรภายในมีโครงสร้างเป็น JSON ครับ/ค่ะ และโดยทั่วไปแล้ว เราสามารถเข้าถึงส่วนเฉพาะของข้อมูลได้โดยใช้ JSON path เนื่องจากตัวแปรจำนวนมากอิงตามโครงสร้างคอลเลกชันของ NocoBase ข้อมูลความสัมพันธ์จะถูกจัดโครงสร้างตามลำดับชั้นในลักษณะคล้ายต้นไม้ โดยเป็นคุณสมบัติของออบเจกต์ ตัวอย่างเช่น เราสามารถเลือกค่าของฟิลด์ใดฟิลด์หนึ่งจากข้อมูลความสัมพันธ์ของข้อมูลที่ถูกคิวรีได้ นอกจากนี้ เมื่อข้อมูลความสัมพันธ์มีโครงสร้างแบบ "หนึ่งต่อหลาย" (to-many) ตัวแปรอาจเป็นอาร์เรย์ได้ครับ/ค่ะ
ในการเลือกตัวแปร ส่วนใหญ่แล้วเราจะต้องเลือกคุณสมบัติค่าในระดับสุดท้าย ซึ่งมักจะเป็นชนิดข้อมูลแบบง่าย เช่น ตัวเลข หรือสตริงครับ/ค่ะ อย่างไรก็ตาม หากมีอาร์เรย์อยู่ในลำดับชั้นของตัวแปร คุณสมบัติในระดับสุดท้ายก็จะถูกแมปเป็นอาร์เรย์ด้วย ซึ่งข้อมูลอาร์เรย์จะถูกประมวลผลได้อย่างถูกต้องก็ต่อเมื่อโหนดที่เกี่ยวข้องรองรับอาร์เรย์เท่านั้นครับ/ค่ะ ตัวอย่างเช่น ในโหนดการคำนวณ เอนจินการคำนวณบางตัวมีฟังก์ชันที่ออกแบบมาเพื่อจัดการกับอาร์เรย์โดยเฉพาะ หรือในโหนดวนซ้ำ (loop node) ออบเจกต์ที่ใช้ในการวนซ้ำก็สามารถเลือกเป็นอาร์เรย์ได้โดยตรงเช่นกัน
ยกตัวอย่างเช่น เมื่อโหนดคิวรีทำการคิวรีข้อมูลหลายรายการ ผลลัพธ์ของโหนดจะเป็นอาร์เรย์ที่ประกอบด้วยข้อมูลหลายแถวที่มีโครงสร้างเหมือนกันครับ/ค่ะ:
อย่างไรก็ตาม เมื่อนำไปใช้เป็นตัวแปรในโหนดถัดไป หากตัวแปรที่เลือกอยู่ในรูปแบบ Node data/Query node/Title คุณจะได้อาร์เรย์ที่ถูกแมปเป็นค่าของฟิลด์ที่เกี่ยวข้องครับ/ค่ะ:
หากเป็นอาร์เรย์หลายมิติ (เช่น ฟิลด์ความสัมพันธ์แบบหลายต่อหลาย) คุณจะได้อาร์เรย์หนึ่งมิติที่ฟิลด์ที่เกี่ยวข้องถูกทำให้แบนราบแล้วครับ/ค่ะ
จะได้รับเวลาของระบบ ณ ขณะที่โหนดถูกประมวลผลครับ/ค่ะ โดยเขตเวลาของเวลานี้จะเป็นไปตามที่ตั้งค่าไว้บนเซิร์ฟเวอร์
สามารถใช้ได้เมื่อตั้งค่าเงื่อนไขการกรองฟิลด์วันที่ในโหนดคิวรี อัปเดต และลบครับ/ค่ะ รองรับเฉพาะการเปรียบเทียบแบบ "เท่ากับ" เท่านั้น โดยจุดเริ่มต้นและจุดสิ้นสุดของช่วงวันที่จะอิงตามเขตเวลาที่ตั้งค่าไว้บนเซิร์ฟเวอร์
