logologo
התחלה
מדריך
פיתוח
תוסף
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
התחלה
מדריך
פיתוח
תוסף
API
logologo
סקירה כללית
הוראות הגדרה

תחביר תבנית

שימוש בסיסי
עיבוד בלולאה

כלי עיצוב

סקירה כללית
עיצוב טקסט
עיצוב מספרים
עיצוב מטבע
עיצוב תאריך
עיצוב מרווח זמן
עיצוב Array

תכונות מתקדמות

בדיקת תנאי
תכונות מתקדמות
שאלות נפוצות
תרחישי שימוש
Previous Pageשאלות נפוצות
TIP

מסמך זה תורגם על ידי בינה מלאכותית. לכל אי דיוק, אנא עיין בגרסה האנגלית

#שימוש בתכונת 'הדפסת תבנית' ליצירת חוזי אספקה ורכש

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


#1. רקע וסקירה של מבנה הנתונים

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

  • parties: מאחסן מידע על יחידות או אנשים פרטיים של צד א'/צד ב', כולל שם, כתובת, איש קשר, טלפון וכו'.
  • contracts: מאחסן רשומות חוזים ספציפיות, כולל מספר חוזה, מפתחות זרים של קונה/מוכר, מידע על חותמים, תאריכי התחלה/סיום, חשבון בנק וכו'.
  • contract_line_items: משמש לאחסון פריטים מרובים תחת החוזה (שם מוצר, מפרט, כמות, מחיר יחידה, תאריך אספקה וכו').

template_print-2025-11-01-16-34-04

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

#2. הכנה

#2.1 הכנת תוסף

שימו לב, "הדפסת תבנית" שלנו היא תוסף מסחרי שיש לרכוש ולהפעיל לפני שניתן לבצע פעולות הדפסה.

template_print-2025-11-01-17-31-51

אימות הפעלת התוסף:

בכל דף, צרו בלוק פרטים (לדוגמה, users) ובדקו אם קיימת אפשרות תצורת תבנית מתאימה בתצורת הפעולה:

template_print-2025-11-01-17-32-09

template_print-2025-11-01-17-32-30

#2.2 יצירת אוספים

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

#אוסף חוזים (Contracts)

קטגוריית שדהשם תצוגה של שדהField NameField Interface
שדות מפתח ראשי ומפתח זר
מזההidInteger
מזהה קונהbuyer_idInteger
מזהה מוכרseller_idInteger
שדות קישור
פריטי חוזהcontract_itemsOne to many
קונה (צד א')buyerMany to one
מוכר (צד ב')sellerMany to one
שדות כלליים
מספר חוזהcontract_noSingle line text
תאריך התחלת אספקהstart_dateDatetime (with time zone)
תאריך סיום אספקהend_dateDatetime (with time zone)
יחס מקדמה (%)deposit_ratioPercent
ימי תשלום לאחר אספקהpayment_days_afterInteger
שם חשבון בנק (מוטב)bank_account_nameSingle line text
שם בנקbank_nameSingle line text
מספר חשבון בנק (מוטב)bank_account_numberSingle line text
סכום כוללtotal_amountNumber
קודי מטבעcurrency_codesSingle select
יחס יתרה (%)balance_ratioPercent
ימי יתרה לאחר אספקהbalance_days_afterInteger
מקום אספקהdelivery_placeLong text
שם חותם צד א'party_a_signatory_nameSingle line text
תפקיד חותם צד א'party_a_signatory_titleSingle line text
שם חותם צד ב'party_b_signatory_nameSingle line text
תפקיד חותם צד ב'party_b_signatory_titleSingle line text
שדות מערכת
נוצר ב-createdAtCreated at
נוצר על ידיcreatedByCreated by
עודכן לאחרונה ב-updatedAtLast updated at
עודכן לאחרונה על ידיupdatedByLast updated by

#אוסף צדדים (Parties)

קטגוריית שדהשם תצוגה של שדהField NameField Interface
שדות מפתח ראשי ומפתח זר
מזההidInteger
שדות כלליים
שם צדparty_nameSingle line text
כתובתaddressSingle line text
איש קשרcontact_personSingle line text
טלפון איש קשרcontact_phonePhone
תפקידpositionSingle line text
אימיילemailEmail
אתר אינטרנטwebsiteURL
שדות מערכת
נוצר ב-createdAtCreated at
נוצר על ידיcreatedByCreated by
עודכן לאחרונה ב-updatedAtLast updated at
עודכן לאחרונה על ידיupdatedByLast updated by

#אוסף פריטי שורה של חוזה (Contract Line Items)

קטגוריית שדהשם תצוגה של שדהField NameField Interface
שדות מפתח ראשי ומפתח זר
מזההidInteger
מזהה חוזהcontract_idInteger
שדות קישור
חוזהcontractMany to one
שדות כלליים
שם מוצרproduct_nameSingle line text
מפרט / דגםspecSingle line text
כמותquantityInteger
מחיר יחידהunit_priceNumber
סכום כוללtotal_amountNumber
תאריך אספקהdelivery_dateDatetime (with time zone)
הערהremarkLong text
שדות מערכת
נוצר ב-createdAtCreated at
נוצר על ידיcreatedByCreated by
עודכן לאחרונה ב-updatedAtLast updated at
עודכן לאחרונה על ידיupdatedByLast updated by

#2.3 תצורת ממשק

הזינו נתוני דוגמה:

template_print-2025-11-01-17-32-59

template_print-2025-11-01-17-33-11

הגדירו כללי קישור כדי לחשב באופן אוטומטי את הסכום הכולל ואת תשלום היתרה:

template_print-2025-11-01-17-33-21

צרו בלוק תצוגה, אשרו את הנתונים, והפעילו את פעולת 'הדפסת תבנית':

template_print-2025-11-01-17-33-33

#2.4 תצורת תוסף הדפסת תבנית

template_print-2025-11-01-17-33-45

הוסיפו תצורת תבנית, למשל 'חוזה אספקה ורכש':

template_print-2025-11-01-17-33-57

template_print-2025-11-01-17-34-08

לאחר מכן, נעבור ללשונית 'רשימת שדות', שם נוכל לראות את כל השדות של האובייקט הנוכחי. לאחר שנלחץ על "העתק", נוכל להתחיל למלא את התבנית.

template_print-2025-11-01-17-35-19

#2.5 הכנת קובץ החוזה

קובץ תבנית חוזה ב-Word

הכינו מראש את תבנית החוזה (קובץ docx.), לדוגמה: SUPPLY AND PURCHASE CONTRACT.docx

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

  • {d.contract_no}: מספר חוזה
  • {d.buyer.party_name}、{d.seller.party_name}: שמות הקונה והמוכר
  • {d.total_amount}: סכום החוזה הכולל
  • ומצייני מיקום נוספים כגון "איש קשר", "כתובת", "טלפון" וכו'.

לאחר מכן, תוכלו להעתיק ולהדביק את השדות מהאוסף שלכם לתוך Word.


#3. מדריך משתני תבנית

#3.1 מילוי משתנים בסיסיים ומאפייני אובייקטים מקושרים

מילוי שדות בסיסיים:

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

template_print-2025-11-01-17-31-11

template_print-2025-11-01-17-30-51

#3.2 עיצוב נתונים

#עיצוב תאריכים

בתבניות, לעיתים קרובות אנו צריכים לעצב שדות, במיוחד שדות תאריך. פורמט התאריך המועתק ישירות הוא בדרך כלל ארוך (כגון Wed Jan 01 2025 00:00:00 GMT), ויש לעצב אותו כדי להציג את הסגנון הרצוי לנו.

עבור שדות תאריך, תוכלו להשתמש בפונקציה formatD() כדי לציין את פורמט הפלט:

{שם_שדה:formatD(סגנון_עיצוב)}

דוגמה:

לדוגמה, אם השדה המקורי שהעתקנו הוא {d.created_at}, ואנו צריכים לעצב את התאריך לפורמט 2025-01-01, אז שנו שדה זה ל:

{d.created_at:formatD(YYYY-MM-DD)}  // פלט: 2025-01-01

סגנונות עיצוב תאריכים נפוצים:

  • YYYY - שנה (ארבע ספרות)
  • MM - חודש (שתי ספרות)
  • DD - יום (שתי ספרות)
  • HH - שעה (פורמט 24 שעות)
  • mm - דקות
  • ss - שניות

דוגמה 2:

{d.created_at:formatD(YYYY-MM-DD HH:mm:ss)}  // פלט: 2025-01-01 14:30:00

#עיצוב מספרים

נניח שיש שדה סכום, כגון {d.total_amount} בחוזה. אנו יכולים להשתמש בפונקציה formatN() כדי לעצב מספרים, תוך ציון מספר המקומות העשרוניים ומפריד אלפים.

תחביר:

{שם_שדה:formatN(מקומות_עשרוניים, מפריד_אלפים)}
  • מקומות עשרוניים: תוכלו לציין כמה מקומות עשרוניים לשמור. לדוגמה, 2 פירושו שתי ספרות אחרי הנקודה העשרונית.
  • מפריד אלפים: ציינו אם להשתמש במפריד אלפים, בדרך כלל true או false.

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

{d.amount:formatN(2, true)}  // פלט: 1,234.56

פעולה זו תעצב את d.amount לשתי ספרות אחרי הנקודה העשרונית ותוסיף מפריד אלפים.

דוגמה 2: עיצוב סכום למספר שלם ללא מקומות עשרוניים

{d.amount:formatN(0, true)}  // פלט: 1,235

פעולה זו תעצב את d.amount למספר שלם ותוסיף מפריד אלפים.

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

{d.amount:formatN(2, false)}  // פלט: 1234.56

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

צרכי עיצוב סכומים נוספים:

  • סימן מטבע: Carbone עצמה אינה מספקת פונקציות עיצוב ישירות לסימני מטבע, אך תוכלו להוסיף סימני מטבע ישירות בנתונים או בתבניות. לדוגמה:
    {d.amount:formatN(2, true)} ש"ח  // פלט: 1,234.56 ש"ח

#עיצוב מחרוזות

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

תחביר:

{שם_שדה:upperCase:פקודות_אחרות}

שיטות המרה נפוצות:

  • upperCase - המר לכל האותיות הגדולות
  • lowerCase - המר לכל האותיות הקטנות
  • upperCase:ucFirst - הפוך אות ראשונה לגדולה

דוגמה:

{d.party_a_signatory_name:upperCase}  // פלט: JOHN DOE

#3.3 הדפסה בלולאה

#כיצד להדפיס רשימות של אובייקטים מקושרים (כגון פרטי מוצר)

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

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

שלב 1: מילוי שדות בשורה הראשונה של הטבלה

ראשית, בשורה הראשונה של הטבלה (לא בכותרת), אנו נעתיק ונמלא ישירות את משתני התבנית. משתנים אלה יוחלפו בנתונים המתאימים ויוצגו בפלט.

לדוגמה, השורה הראשונה של הטבלה היא כדלקמן:

Product NameSpecification / ModelQuantityUnit PriceTotal AmountRemark
{d.contract_items[i].product_name}{d.contract_items[i].spec}{d.contract_items[i].quantity}{d.contract_items[i].unit_price}{d.contract_items[i].total_amount}{d.contract_items[i].remark}

כאן, d.contract_items[i] מייצג את הפריט ה-i ברשימת המוצרים, ו-i הוא אינדקס המייצג את סדר המוצר הנוכחי.

שלב 2: שינוי האינדקס בשורה השנייה

לאחר מכן, בשורה השנייה של הטבלה, נשנה את אינדקס השדה ל-i+1 ונמלא רק את המאפיין הראשון. זאת מכיוון שבעת הדפסה בלולאה, אנו צריכים לאחזר את פריט הנתונים הבא מהרשימה ולהציג אותו בשורה הבאה.

לדוגמה, השורה השנייה ממולאת כדלקמן:

Product NameSpecification / ModelQuantityUnit PriceTotal AmountRemark
{d.contract_items[i+1].product_name}

בדוגמה זו, שינינו את [i] ל-[i+1], כך שנוכל לקבל את נתוני המוצר הבאים ברשימה.

שלב 3: הדפסה אוטומטית בלולאה במהלך רינדור התבנית

כאשר המערכת מעבדת תבנית זו, היא תפעל לפי ההיגיון הבא:

  1. השורה הראשונה תמולא בהתאם לשדות שהגדרתם בתבנית.
  2. לאחר מכן, המערכת תמחק אוטומטית את השורה השנייה ותתחיל לחלץ נתונים מ-d.contract_items, ותמלא בלולאה כל שורה בפורמט הטבלה עד שכל פרטי המוצר יודפסו.

ה-i בכל שורה יגדל, מה שיבטיח שכל שורה תציג מידע שונה על המוצר.


#4. העלאה והגדרת תבנית חוזה

#4.1 העלאת תבנית

  1. לחצו על כפתור "הוסף תבנית" והזינו את שם התבנית, לדוגמה "תבנית חוזה אספקה ורכש".
  2. העלו את קובץ חוזה Word (docx.) שהוכן מראש, המכיל כבר את כל מצייני המיקום.

template_print-2025-11-01-17-36-06

  1. לאחר מכן, המערכת תציג את התבנית ברשימת התבניות הזמינות לשימוש עתידי.
  2. נלחץ על "השתמש" כדי להפעיל תבנית זו.

template_print-2025-11-01-17-36-13

בשלב זה, צאו מהחלון הקופץ הנוכחי ולחצו על "הורד תבנית" כדי לקבל את התבנית המלאה שנוצרה.

טיפים:

  • אם התבנית משתמשת בפורמט .doc או בפורמטים אחרים, ייתכן שיהיה צורך להמיר אותה ל-.docx, בהתאם לתמיכת התוסף.
  • בקובצי Word, שימו לב לא לפצל מצייני מיקום למספר פסקאות או תיבות טקסט, כדי למנוע שגיאות רינדור.

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