מסמך זה תורגם על ידי AI. למידע מדויק, אנא עיינו בגרסה באנגלית.
NocoBase כוללת פעולות נתונים נפוצות מובנות (הוספה, מחיקה, עדכון, שאילתה וכו'). כאשר פעולות אלו אינן יכולות לספק מענה לצרכים עסקיים מורכבים, ניתן להשתמש באירועי פעולה מותאמים אישית בתוך תהליך עבודה, ולקשור אירוע זה לכפתור "הפעל תהליך עבודה" בבלוק דף. לאחר לחיצת המשתמש, יופעל תהליך עבודה של פעולה מותאמת אישית.
בעת יצירת תהליך עבודה, בחרו ב"אירוע פעולה מותאמת אישית":

v.1.6.0+
סוגי הקשר שונים קובעים לאילו כפתורי בלוקים ניתן לקשור את תהליך העבודה:

כאשר סוג ההקשר הוא רשומה בודדת או רשומות מרובות, יש לבחור את טבלת הנתונים (אוסף) אליה יש לקשור את מודל הנתונים:

אם יש צורך להשתמש בנתוני קשר של שורת הנתונים המפעילה בתהליך העבודה, ניתן לבחור כאן שדות קשר עמוקים:

שדות אלו ייטענו מראש באופן אוטומטי להקשר של תהליך העבודה לאחר הפעלת האירוע, לצורך שימוש בתהליך העבודה.
בהתאם לסוג ההקשר שהוגדר בתהליך העבודה, הגדרת כפתורי הפעולה בבלוקים שונים משתנה.
v1.6.0+
בלוח הפעולות ובבלוקי נתונים אחרים, ניתן להוסיף כפתור "הפעל תהליך עבודה":



לאחר הוספת הכפתור, קשרו את תהליך העבודה ללא הקשר שנוצר קודם לכן. ניקח את הכפתור בלוח הפעולות כדוגמה:


בכל בלוק נתונים, ניתן להוסיף כפתור "הפעל תהליך עבודה" בסרגל הפעולות עבור רשומה בודדת, כגון טפסים, שורות טבלה, פרטים וכו':



לאחר הוספת הכפתור, קשרו את תהליך העבודה שנוצר קודם לכן:


לאחר מכן לחיצה על כפתור זה תפעיל את אירוע הפעולה המותאמת אישית:

v1.6.0+
בסרגל הפעולות של בלוק טבלה, בעת הוספת כפתור "הפעל תהליך עבודה", תהיה אפשרות נוספת לבחור אם סוג ההקשר הוא "ללא הקשר" או "רשומות מרובות":

כאשר בוחרים "ללא הקשר", זהו אירוע גלובלי וניתן לקשור רק תהליכי עבודה מסוג ללא הקשר.
כאשר בוחרים "רשומות מרובות", ניתן לקשור תהליכי עבודה מסוג רשומות מרובות, המשמשים לפעולות בכמות גדולה לאחר בחירת נתונים מרובים (כרגע נתמך רק בטבלאות). בשלב זה, טווח תהליכי העבודה לבחירה הוא רק אלו שהוגדרו להתאים לאוסף של בלוק הנתונים הנוכחי:

בעת לחיצה על הכפתור להפעלה, חובה לסמן חלק משורות הנתונים בטבלה, אחרת תהליך העבודה לא יופעל:

למשל, יש לנו אוסף "דוגמאות". עבור דוגמאות במצב "נאסף", יש לספק פעולת "שלח לבדיקה". השליחה תבדוק תחילה את המידע הבסיסי של הדוגמה, לאחר מכן תפיק נתוני "תיעוד בדיקה", ואז תשנה את מצב הדוגמה ל"נשלח לבדיקה". סדרת תהליכים זו אינה ניתנת לביצוע בלחיצת כפתור פשוטה של "הוספה, מחיקה, עדכון, שאילתה", ובמקרה זה ניתן להשתמש באירוע פעולה מותאמת אישית.
ראשית צרו אוסף "דוגמאות" ואוסף "תיעוד בדיקה", והזינו נתוני בדיקה בסיסיים לאוסף הדוגמאות:

לאחר מכן צרו תהליך עבודה של "אירוע פעולה מותאמת אישית". אם נדרש משוב מיידי מהתהליך, ניתן לבחור במצב סינכרוני (במצב סינכרוני לא ניתן להשתמש בצמתים אסינכרוניים כמו טיפול ידני):

בהגדרת הטריגר, בחרו באוסף "דוגמאות":

ארגנו את הלוגיקה בתהליך בהתאם לצרכים העסקיים, למשל שליחה לבדיקה מותרת רק כאשר פרמטר המדד גדול מ-90, אחרת תוצג הודעה על הבעיה:

צומת "הודעת תגובה" יכול לשמש באירועי פעולה מותאמת אישית סינכרוניים כדי להחזיר הודעת הנחיה ללקוח. לא ניתן להשתמש בו במצב אסינכרוני.
לאחר הגדרת התהליך והפעלתו, חזרו לממשק הטבלה והוסיפו כפתור "הפעל תהליך עבודה" בעמודת הפעולות בטבלה:

לאחר מכן בחרו בקישור תהליך עבודה בתפריט הגדרות הכפתור, ופתחו את חלון ההגדרות:

הוסיפו את תהליך העבודה שהופעל קודם לכן:

לאחר השליחה, שנו את טקסט הכפתור לשם הפעולה, כגון "שלח לבדיקה", ותהליך ההגדרה הושלם.
בעת השימוש, בחרו כל שורת נתונים בטבלה ולחצו על כפתור "שלח לבדיקה" כדי להפעיל את אירוע הפעולה המותאמת אישית. כפי שהוגדר בלוגיקה, אם פרמטר המדד קטן מ-90, תוצג ההודעה הבאה:

אם פרמטר המדד גדול מ-90, התהליך יבוצע כרגיל, ייווצרו נתוני "תיעוד בדיקה", ומצב הדוגמה ישתנה ל"נשלח לבדיקה":

בכך הושלם אירוע פעולה מותאמת אישית פשוט. באופן דומה, עבור עסקים עם פעולות מורכבות כמו עיבוד הזמנות, הגשת דוחות וכו', ניתן ליישם זאת באמצעות אירועי פעולה מותאמת אישית.
הפעלת אירוע פעולה מותאמת אישית אינה מוגבלת לממשק המשתמש, אלא ניתנת להפעלה גם באמצעות HTTP API. באופן ספציפי, אירוע פעולה מותאמת אישית מספק סוג פעולה חדש לכל פעולות האוסף: trigger, שניתן לקרוא לו באמצעות ה-API הסטנדרטי של NocoBase.
מכיוון שקריאה חיצונית דורשת גם זיהוי משתמש, בעת קריאה דרך HTTP API, בדומה לבקשות שנשלחות מהממשק, יש לספק פרטי אימות, כולל כותרת Authorization או פרמטר token (הטוקן שהתקבל בהתחברות), וכותרת X-Role (שם התפקיד הנוכחי של המשתמש).
תהליך עבודה ללא הקשר דורש ביצוע פעולת trigger על משאב ה-workflows:
בדומה לתהליך המופעל על ידי כפתור בדוגמה, ניתן לקרוא לו כך:
מכיוון שפעולה זו מיועדת לנתון בודד, בעת קריאה לנתונים קיימים יש לציין את ה-ID של שורת הנתונים ולהחליף את <:id> ב-URL.
אם הקריאה היא עבור טופס (כגון הוספה או עדכון), עבור טופס הוספה ניתן לא להעביר ID, אך יש להעביר את הנתונים שנשלחו כהקשר לביצוע:
עבור טופס עדכון, יש להעביר גם את ה-ID וגם את הנתונים המעודכנים:
אם מועברים גם ID וגם נתונים, שורת הנתונים המתאימה ל-ID תיטען תחילה, ולאחר מכן המאפיינים באובייקט הנתונים שהועבר ידרסו את שורת הנתונים המקורית לקבלת הקשר הנתונים הסופי.
אם מועברים נתוני קשר, גם הם יידרסו. יש לנהוג בזהירות בעת העברת נתונים, במיוחד כאשר מוגדרת טעינה מראש של נתוני קשר, כדי למנוע דריסה בלתי צפויה.
בנוסף, פרמטר ה-URL triggerWorkflows הוא המפתח (key) של תהליך העבודה, ניתן להפריד מספר תהליכים בפסיקים. ניתן להשיג מפתח זה על ידי ריחוף עם העכבר מעל שם תהליך העבודה בראש הקנבס:

לאחר קריאה מוצלחת, יופעל אירוע הפעולה המותאמת אישית של האוסף samples המתאים.
בעת הפעלה דרך HTTP API, יש לשים לב למצב ההפעלה של תהליך העבודה והאם הגדרות האוסף תואמות, אחרת הקריאה עלולה להיכשל או להחזיר שגיאה.
בדומה לקריאה עבור רשומה בודדת, אך הנתונים המועברים דורשים רק מספר פרמטרי מפתח ראשי (filterByTk[]), ואין צורך להעביר את חלק ה-data:
קריאה זו תפעיל אירוע פעולה מותאמת אישית במצב רשומות מרובות, ותשתמש בנתונים עם מזהים 1 ו-2 כנתוני ההקשר של הטריגר.