רמת תכנות: מתחיל
משך: 10 דקות
סוג פרויקט: פונקציה מותאמת אישית
מטרות
- הבנה מה הפתרון עושה.
- להבין מה שירותי Apps Script עושים במסגרת הפתרון.
- מגדירים את הסקריפט.
- מריצים את הסקריפט.
מידע על הפתרון הזה
אם אתם מציעים ללקוחות מערכת תמחור מדורגת, הפונקציה המותאמת אישית הזו מאפשרת לחשב בקלות את סכומי ההנחה במחירים.
אפשר להשתמש בפונקציה המובנית SUMPRODUCT
כדי לבצע חישוב תמחור לפי רמות, אבל השימוש בפונקציה SUMPRODUCT
הוא מורכב יותר ופחות גמיש מהפונקציה המותאמת אישית של הפתרון הזה.
איך זה עובד
מודל תמחור מדורג פירושו שעלות המוצרים או השירותים יורדת בהתאם לכמות שנרכשה.
לדוגמה, נניח שיש לכם שתי רמות: אחת עם מחיר שנעים בין 0 $ל-500$, עם הנחה של 10% ואחת עם מחירים שנעים בין 501 $ל-1,000$, עם הנחה של 20%. במקרה שהמחיר הכולל לחישוב הנחה הוא 700$, הסקריפט יכפיל את ה-500 $הראשונים ב-10% ואת היתרה של 200 $ב-20%, כך שההנחה הכוללת תהיה 90$.
במחיר כולל נתון, הסקריפט עובר דרך הרמות שצוינו בטבלת התמחור של הרמות. לכל חלק מהמחיר הכולל שנמצא בתוך רמה, החלק הזה מוכפל בערך האחוז שמשויך לרמה. התוצאה היא סכום החישוב של כל שכבה.
שירותי Apps Script
בפתרון הזה נעשה שימוש בשירות הבא:
- גיליון אלקטרוני – הפונקציה הזו לוקחת את הערך הנתון ומחשבת את החלק מהערך להכפלה של אחוז ההנחה בכל רמה.
דרישות מוקדמות
כדי להשתמש בדוגמה הזו, נדרשות הדרישות המוקדמות הבאות:
- חשבון Google (יכול להיות שיהיה צורך באישור אדמין).
- דפדפן אינטרנט עם גישה לאינטרנט.
הגדרת הסקריפט
לחצו על הלחצן שלמטה כדי ליצור עותק של הגיליון האלקטרוני Tier pricing custom function. פרויקט Apps Script לפתרון הזה מצורף לגיליון האלקטרוני.
יצירת עותק
מריצים את הסקריפט
- בגיליון האלקטרוני שהעתקתם, בטבלה בשורה 16 מוצג חישוב מחיר לדוגמה של מוצר מסוג 'תוכנה כשירות' (SaaS).
- כדי לחשב את סכום ההנחה, מזינים
=tierPrice(C19,$B$3:$D$6)
בתאC20
. המחיר הסופי יתעדכן בתאC21
. אם אתם נמצאים במקום שבו משתמשים בפסיקים, יכול להיות שתצטרכו להזין=tierPrice(C19;$B$3:$D$6)
במקום זאת.
בדיקת הקוד
כדי לבדוק את קוד Apps Script של הפתרון הזה, לוחצים על הצגת קוד מקור למטה:
הצגת קוד המקור
Code.gs
שינויים
אפשר לערוך את הפונקציה המותאמת אישית כמה פעמים שרוצים. בהמשך מופיעה תוספת אופציונלית לרענון ידני של תוצאות של פונקציות מותאמות אישית.
רענון של התוצאות שנשמרו במטמון
בניגוד לפונקציות מובנות, Google שומרת פונקציות בהתאמה אישית במטמון כדי לשפר את הביצועים. לכן, אם מבצעים שינוי בפונקציה בהתאמה אישית, למשל ערך שמחושב, יכול להיות שלא יתבצע עדכון מיידי. כדי לרענן את התוצאה של הפונקציה באופן ידני:
- כדי להוסיף תיבת סימון לתא ריק, לוחצים על הוספה > תיבת סימון.
- מוסיפים את התא עם תיבת הסימון כפרמטר נוסף של הפונקציה בהתאמה אישית. לדוגמה, אם מוסיפים תיבת סימון לתא
D20
, צריך לעדכן את הפונקציהtierPrice()
בתאC20
לערך=tierPrice(C19,$B$3:$D$6,D20)
. - כדי לרענן את התוצאות של הפונקציות המותאמות אישית, מסמנים את התיבה או מבטלים את הסימון שלה.
תורמים
הדוגמה הזו מנוהלת על ידי Google בעזרת מומחי המפתחים של Google.