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