ตัวแปร Hash คืออะไร ?
ตัวแปร Hash ช่วยให้ผู้ใช้มีความยืดหยุ่นและอิสระมากขึ้นในการเข้าถึงข้อมูลที่เป็นประโยชน์หรือค่าที่เกี่ยวข้องเวลาการทำงานของระบบ
ตัวแปร hash เป็นคีย์หลักพิเศษที่สามารถใช้ได้ใน :
- ตัวสร้างฟอร์ม (Form Builder)
- ตัวสร้างดาตาลิสต์ (Datalist Builder)
- ตัวสร้างมุมมองผู้ใช้ (Userview Builder)
- คุณสมบัติการกำหนดค่าปลั๊กอินที่สนับสนุน
- ชื่อกิจกรรมในโปรแกรมออกแบบลำดับงาน
- URL ของฟอร์มภายนอกเมื่อทำการแม็ปกิจกรรมไปยังฟอร์มภายนอก
เพื่อกลับค่าของตัวแปรรันไทม์ที่มีประโยชน์บางอย่างจากส่วนประกอบ Joget
เพื่อความสะดวกในการเข้าถึงรายการของตัวแปร Hash ทั้งหมดที่มีอยู่ให้ใช้ทางลัด Ctrl-Shift-3 ในส่วนประกอบข้างต้น
ดาวน์โหลดแอพช่วยสอน Hash Variables จาก Joget Workflow Marketplace เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับตัวแปร Hash
ตัวแปร Hash ที่ซ้อนกัน (Nested Hash Variable)
ตัวแปร Hash สามารถใช้ภายใน ตัวแปร Hash อื่นเพื่อสร้าง ตัวแปร Hash ที่ซ้อนกัน
ไวยากรณ์สำหรับตัวแปร Hash ภายในถูกคลุมด้วยคู่ของวงเล็บ { ปีกกา }
#prefix.{prefix.variableKey}#
#date.{envVariable.dateFormat}# #user.{variable.username}.firstName# #form.tableChild.field1[{form.tableParent.childId}]#
Escaping the Resultant Hash Variable
ตัวแปร Hash ที่แยกวิเคราะห์/ส่งคืนอาจทำให้เกิดความเข้ากันไม่ได้กับบริบท/สภาพแวดล้อมปัจจุบันเช่นข้อผิดพลาดทางไวยากรณ์ในสคริปต์
ดังนั้น อาจผ่านหนึ่งในพารามิเตอร์เพิ่มเติมในตัวแปร Hash ประกาศให้เลี่ยงอักขระบางอย่าง
Before ending a hash variable with a hash "#", add a question mark character "?" followed by the required format. You may include multiple by defining semicolon ";" separated values.
ก่อนที่จะสิ้นสุดตัวแปร Hash ด้วย "#" ให้เพิ่มเครื่องหมายคำถาม "?" ตามด้วยรูปแบบที่ต้องการ คุณอาจรวมได้โดยการกำหนดเครื่องหมายอัฒภาค ";" ค่าที่คั่นด้วย
- regex - ใช้ในการเลี่ยงนิพจน์ปกติของอักขระพิเศษ
- json - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ JSON
- javascript - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ Javascript
- html - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ HTML
- xml - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ XML
- java - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ Java
- sql - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ SQL
- url - ใช้เพื่อเลี่ยงตัวอักขระพิเศษของ URL
- nl2br - ใช้เพื่อแปลงอักขระบรรทัดใหม่เป็นแท็ก HTML < br >
- separator(SEPARATOR_CHARS) - ใช้เพื่อเปลี่ยนตัวคั่นเริ่มต้น ";" เป็น SEPARATOR_CHARS. eg. ?ตัวคั่น(, ) ส่งผลให้ "abc, def" แทนที่เป็น "abc;def".
#envVariable.script?java# #envVariable.script?nl2br;json# #form.table.users?separator(, )#
nl2br และตัวคั่นเป็นคุณลักษณะใหม่ใน Joget Workflow v6.
รายการของตัวแปร Hash (List of Hash Variables)
ตัวแปร Hash ของการกำหนดลำดับงาน (Workflow Assignment Hash Variable)
เป็นแอตทริบิวต์ใหม่ที่เพิ่มใน Joget Workflow v6.
- processDefIdWithoutVersion
- appId
ชื่อ | คำอธิบาย |
---|---|
Prefix | assignment |
Description | หากต้องการรับข้อมูลกิจกรรมลำดับงานของการมอบหมายปัจจุบัน |
Attributes |
|
Scope of Use |
|
Sample Attributes | แสดงชื่อของผู้ใช้: #user.{assignment.assigneeId}.firstName# #user.{assignment.assigneeId}.lastName# |
ตัวแปร Hash การลำดับงานของกระบวนการWorkflow Process Hash Variable
นี่คือฟีเจอร์ใหม่ใน Joget Workflow v6.
ชื่อ | คำอธิบาย |
---|---|
Prefix | process |
Description | เพื่อเรียกข้อมูลของอินสแตนซ์กระบวนการลำดับงาน |
Attributes |
|
Scope of Use |
|
Sample Attributes | เพื่อแสดงชื่อผู้ใช้ของอินสแตนซ์กิจกรรมของอินสแตนซ์ของกระบวนการ: #process.activityInst.assign.performerUser[{assingment.processId}]# |
ตัวแปร Hash ของผู้ใช้ปัจจุบัน (Current User Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | currentUser |
Description | ในการเรียกข้อมูลผู้ใช้ที่บันทึกไว้ในปัจจุบัน |
Attributes |
ใน Joget Enterprise edition, แอตทริบิวต์เพิ่มเติมเหล่านี้จะสามารถใช้งาน::- User Meta
องค์กร (Organization)
แผนก (Department)
ระดับ (Grade)
HOD
กลุ่ม (Group)
พนักงาน (Employment)
แผนก HOD (Department HOD)
|
Scope of Use |
|
ตัวแปร Hash ของวันที่ (Date Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | date |
Description | หากต้องการรับเวลาวันที่ตามรูปแบบที่ระบุ Localization ใน Joget Workflow v5, ค่าที่ส่งคืนจะทำตามค่าปัจจุบันที่เข้าสู่ระบบในเขตเวลาของผู้ใช้ ถ้าข้อมูลของผู้ใช้ไม่พร้อมใช้งานจะใช้เขตเวลาของเซิร์ฟเวอร์ |
Attributes |
|
Scope of Use |
|
Sample Attributes | #date.h:mm a# // แสดงเวลาปัจจุบัน 12:08 PM #date.EEE,d MMM yyyy h:mm:ss a# // แสดงวันที่ปัจจุบัน Wed, 4 Jul 2014 12:08:56 PM #date.DAY+7.EEE,d MMM yyyy h:mm:ss a# // เพิ่ม 7 วันจากวันที่ปัจจุบัน - Wed, 11 Jul 2014 12:08:56 PM #date.DAY-1.EEE,d MMM yyyy h:mm:ss a# // ลบ 1 วันของวันที่ปัจจุบัน - Wed, 3 Jul 2014 12:08:56 PM #date.dd-MM-yyyy[{form.j_expense_claim.title}|yyyy-MM-dd]# // ดึงวันที่จากตาราง j_expense_claim , ชื่อเขตข้อมูลฟอร์ม, เปลี่ยนแปลงรูปแบบต้นกำเนิดของ yyyy-MM-dd เป็น dd-MM-yyyy. |
Environment Variable Hash Variable
Name | Description |
---|---|
Prefix | envVariable |
Description | To retrieve Environment Variable value. Learn more about Environment Variables . |
Attributes |
|
Scope of Use |
|
Sample Attributes | #envVariable.smtpServer# #envVariable.smtpPort# |
Form Data Hash Variable
Name | Description |
---|---|
Prefix | form |
Description | To get field value from form table. |
Attributes |
|
Scope of Use |
|
Sample Attributes | #form.registration.registeredDate# //will use the current record ID #form.registration.registeredDate[ 0001 ]# //0001 is the record ID to seek for #form.registration.registeredDate[{variable.recordId}]# //using nested Hash Variable with curly bracket. |
Form Binder Hash Variable
This is a new feature in Joget Workflow v6.
Name | Description |
---|---|
Prefix | binder |
Description | To get field value or field value label from the binder of a form via its form definition id . The 'binder' prefix retrieves the field value, while the 'binder.options' prefix retrieves the lookup field (eg. select box, checkbox & radio button) option label. The field value or field value label can also be obtained from other apps by including the APP_ID, else it uses the current app context. By providing the PRIMARY_KEY argument, field value or field value label from a different record can be retrieved, else data from the current record id is retrieved instead. |
Attributes |
|
Scope of Use |
|
Sample Attributes | #binder.addCard.title# #binder.cardViewer.addCard.title# #binder.cardViewer.addCard.title[b30bce20-c0a82095-14976e70-fded1735]# #binder.options.addCard.title# #binder.options.cardViewer.addCard.title# #binder.options.cardViewer.addCard.title[b30bce20-c0a82095-14976e70-fded1735]# |
App Definition Hash Variable
This is a new feature in Joget Workflow v6.
Name | Description |
---|---|
Prefix | appDef |
Description | To retrieve App Definition information |
Attributes |
|
Scope of Use |
|
Sample Attributes | To display the app definition name: #appDef.name# |
ตัวแปรแฮชข้อความของแอป (App Message Hash Variable) (Internationalization)
ชื่อ | คำอธิบาย |
---|---|
Prefix | i18n |
Description | เพื่อสนับสนุนการแปลภาษาในระดับแอพลิเคชัน |
Attributes |
|
Scope of Use |
|
Sample Attributes | #i18n.logout# |
Example | โปรดดูที่ Add Message. |
ตัวแปรแฮชของผู้กระทำ (Performer Hash Variable )
ชื่อ | คำอธิบาย |
---|---|
Prefix | performer |
Description | เพื่อรับข้อมูลผู้ใช้ของผู้กระทำของกิจกรรม |
Attributes |
|
Scope of Use |
เพื่อรับ activityDefId (รหัสข้อกำหนดของกิจกรรม) ให้วางเมาส์เหนือชื่อกิจกรรมในแท็บการแม็ปกิจกรรม (การควบคุมการจัดการเวิร์กโฟลว์) จะมีการซ้อนทับแสดง ID กิจกรรมที่เลือกจะต้องได้รับการดำเนินการแล้ว |
Sample Attributes |
|
ตัวแปรแฮชของการร้องขอพารามิเตอร์ (Request Parameter Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | requestParam |
Description | ในการเข้าถึงค่าของการร้องขอพารามิเตอร์ |
Attributes |
|
Scope of Use |
|
Sample Attributes |
|
ตัวแปรแฮชของผู้ใช้ (User Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | user |
Description | เพื่อรับข้อมูลผู้ใช้โดยอิงจาก username. |
Attributes |
ใน Joget Enterprise edition แอตทริบิวต์เพิ่มเติมเหล่านี้จะพร้อมใช้งาน:- User Meta
Organization
Department
Grade
HOD
Group
Employment
Department HOD
|
Scope of Use |
|
Sample Attributes |
|
ตัวแปรแฮชของ Userview Key (Userview Key Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | userviewKey |
Description | ตัวแปรแฮชของ Userview Key ถูกใช้เพื่อวัตถุประสงค์ในการเข้าถึง Userview key's value ปัจจุบันเท่านั้น กรณีการใช้งานทั่วไปสำหรับตัวแปร hash นี้คือ:-
|
Attributes |
|
Scope of Use |
ตัวแปรแฮชของตัวแปรเวิร์กโฟลว์ (Workflow Variable Hash Variable)
ชื่อ | คำอธิบาย |
---|---|
Prefix | variable |
Description | เพื่อรับค่าของตัวแปรเวิร์กโฟลว์ใน Process Flow |
Attributes |
|
Scope of Use |
|
Sample Attributes | #variable.approvalStatus# |
Request Hash Variable
ชื่อ | คำอธิบาย |
---|---|
Prefix | request |
Description | เพื่อรับค่าจากวัตถุ HttpServletRequest ปัจจุบันของมุมมองเพจ |
Attributes |
|
Scope of Use |
|
Sample Attributes | เมื่อต้องการดึงค่าแอตทริบิวต์ส่วนหัว "อ้างถึง" ในภาพหน้าจอด้านบนหนึ่งอาจใช้ตัวแปร hash ต่อไปนี้ Hash Variable #request.header.Referer# |
ตัวแปรแฮชของแพลตฟอร์ม (Platform Hash Variable)
นี่คือฟีเจอร์ใหม่ใน Joget Workflow v6
ชื่อ | คำอธิบาย |
---|---|
Prefix | platform |
Description | เพื่อเรียกข้อมูลเฉพาะแพลตฟอร์ม |
Attributes |
ใน Joget Enterprise edition แอตทริบิวต์เพิ่มเติมเหล่านี้จะพร้อมใช้งาน:-
|
Scope of Use |
|
ตัวแปรแฮชของผู้ใช้ (Users Hash Variable)
นี่คือฟีเจอร์ใหม่ใน Joget Workflow v6
ชื่อ | คำอธิบาย |
---|---|
Prefix | users |
Description | เพื่อดึงข้อมูลของผู้ใช้ทั้งหมดในกลุ่ม, เกรด, แผนกและองค์กรที่เลือก ผลลัพธ์หลายจะถูกคั่นด้วยเครื่องหมายอัฒภาค |
Attributes |
|
Scope of Use |
|
Sample Attributes | หากต้องการส่งคืนผู้ใช้ทั้งหมดในรหัสกลุ่มของผู้ใช้ปัจจุบัน:
|
ตัวแปรแฮชของ Bean Shell (Bean Shell Hash Variable)
นี่คือฟีเจอร์ใหม่ใน Joget Workflow v6
ชื่อ | คำอธิบาย |
---|---|
Prefix | beanshell |
Description | การใช้ตัวแปรสภาพแวดล้อมเพื่อรันสคริปต์ Bean Shell ส่งผ่านพารามิเตอร์โดยใช้ไวยากรณ์สตริงค้นหา URL |
Attributes |
|
Scopeof Use |
|
Sample Attributes | การเรียกใช้สคริปต์ที่เก็บไว้ใน "ยินดีต้อนรับ"ตัวแปรสภาพแวดล้อมที่มีพารามิเตอร์ "username" และ "dept": if (username != null && username.length == 1 && !username[0].isEmpty()) { return "Welcome " + username[0] + " (" + dept[0] + "),"; } else { return ""; }
|