הסבר על נושא השימוש ב Environment כדי לשנות ערכים של פרמטרים ב Package מסוים
- class928417
- Oct 30, 2014
- 2 min read
**** מייל מרן ****
היי,
להלן הסבר על נושא השימוש ב Environment כדי לשנות ערכים של פרמטרים ב Package מסוים.
לפני ההסבר הטכני, נזכיר למה צריך את זה בכלל:
1. הסברתי כבר שהשימוש בפרמטרים ב package מאוד עוזר, כיוון שכך אין צורך לשנות בכל מקום במהלך ה package ערכים שונים שאמורים להשתנות במעבר בין סביבות.
דוגמאות טובות:
נתיבי תיקיות (Path)
שמות קבצים
שמות שרתים
שמות DB
2. לכן, כאשר נרצה שפתרון (Solution) מסוים ירוץ בסביבה אחרת מאשר רץ עד היום (למשל, במעבר מפיתוח לייצור) - וכתוצאה מכך שהערכים שמאכלסים את הפרמטרים הרלוונטיים ישתנו - נוכל להשתמש בEnvironment כדי להשפיע על הערכים שיוזנו לתוך הפרמטרים.
מה עושים:
2.1 קודם כל נכין solution לדוגמה(ב SSIS):
- ניצור Package עם פרמטר. נקרא לו כאן Param_Path והוא מסוג VARCHAR.
- נעשה Deploy לפרויקט, כדי שהPackageים יועברו לשרת ה SSIS, לקטלוג (Integration Services Catalog).
2.2 כעת, ב Management Studio, נבצע את הצעדים כדי לבצע עבודה נכונה במעבר בין סביבת הפיתוח אל סביבת הייצור:
- ניצור שני Environment: נקרא לאחד DEVELOP ולשני PRODUCTION
- במאפייני ה Environment ששמו DEVELOP, בטאב "Variables" ניצור משתנה חדש ששמו Env_Var_Path - מסוג STRING. נזין לו ערך שמתאים לסביבת הפיתוח. נניח "C:\dev"
- במאפייני ה Environment ששמו PRODUCTION, בטאב "Variables" ניצור משתנה חדש באותו שם - Env_Var_Path - מאותו data type .
נזין לו ערך שמתאים לסביבת הפיתוח. נניח "C:\prod"
2.3 כעת נגדיר ל Package שהוא צריך להשתמש ב משתנה הסביבה Env_Var_Path כדי לאכלס את הפרמטר Param_Path שבתוכו:
ב Management Studio - בקטלוג - קליק ימני על ה Package - לחיצה על Configure -
ב References - נגדיר את 2 הסביבות - גם DEVELOP וגם PRODUCTION (באמצעות add)
ב Parameters (בטאב Parameters ) נראה את Param_Path. נלחץ על 3 הנקודות שבתיבת ה Value. יחד עם האפשרות להזנת ערך מסוים קבוע, או שימוש בערך ברירת המחדל שניתן ב Solution בזמן הפיתוח שלו, נוכל גם להשתמש בערך של משתנה מתוך המשתנים שב Environments (בתנאי שבוצע הסעיף של References וגם ה data type מתאים).
כעת ה Package "יודע" עם איזה משתנה עליו לרוץ. אבל הוא לא יודע באיזו סביבה עליו לרוץ, ולכן גם איזה ערך יוזן לפרמטר ("C:\dev" מתוך DEVELOP או "C:\prod" מ PRODUCTION).
2.4 את זה אנחנו נקבע בזמן יצירת הג'וב מתוך ה SQL Server Agent:
בשלב הגדרת ה STEP שיריץ את ה Package שלנו,ב Cunfiguration תהיה רשימת הפרמטרים הנדרשים להרצת ה Package.
למטה יש checkbox של ENVIRONMENT. פה נגדיר באיזו סביבה הPackage צריך לרוץ, וכך יוגדר בעצם הערך שאותו נזין לפרמטר.
אם לדוגמה בחרנו DEVELOP - הערך שיוזן לפרמטר Param_Path יהיה "C:\dev". ככה, בכל פעם שירוץ הג'וב הזה- הוא יריץ את ה package שלנו ויאכלס את הפרמטר Param_Path עם הערך שנמצא במשתנהEnv_Var_Path שבסביבה DEVELOP.
נניח שהגיע היום בו נרצה לעבור לייצור. כעת כל שיש לנו לעשות הוא בג'וב שיצרנו, להעביר בCunfiguration את הסביבה ל PRODUCTION.
מחר נראה גם בכיתה...
תודה, רן.
Recent Posts
See Allנוספו MDX עבור הפרויקט למי שמתקשה. נמצא בלשונית "project" שאול
הי, הוספתי בחלק של הפרויקט באתר מספר דוגמאות לתהליכים שונים משלב ה MRR וה - STG. אעדכן תוך כדי התקדמות הפרויקט. במידה ויש משהו שאתם...
המרצה במודול החדש ( מודול הפרויקט) פתח קבוצת פייסבוק לכיתה שלנו. הנה הלינק : https://www.facebook.com/groups/JBH9284.17/ שם הקבוצה :...
Comments