خانه / آموزش Microsoft BI / درس بیست و دوم- پارامتر و متغیر

درس بیست و دوم- پارامتر و متغیر

تعریف چیستی پارامتر و متغیر

دو مفهوم به نام Parameter و Variable داریم. پارامتر ها و متغیر ها اشیایی هستند که برای نگهداری مقادیر از آنها میتوان اسفتاده کرد. متغیر در واقع یک فضای ذخیره سازی موقت اطلاعات میباشد.

پارامتر هم مشابه متغیر میباشد ، ولی از جنبه هایی نظیر محل استفاده با یکدیگر تفاوت دارند.

تفاوت های Parameter و Variable :

– کاربری یا Usage :

از پارامتر برای ارسال مقدار به پکیج قبل از اجرا استفاده میکنیم. از متغیر برای نگهداری مقادیر در طول اجرای پکیج استفاده میکنیم. مثلا یک کوئری مینویسیم و تاریخ امروز را به دست می آوریم. در زمان اجرای پکیج ، کامپوننت ها فقط فاکتور هایی متناظر با تاریخ موجود در این متغیر باشند استفاده میکنند و برای مثال فقط فروش را در این تاریخ محاسبه میکنند.

– حوزه اعتبار یا Scope :

پارامتر در سطح پروژه و یا پکیج قابل رویت میباشد.

فرض کنید یک پارامتر در فولدر Project.Params تعریف میکنیم. در این صورت تمامی پکیج های ما به این پارامتر و مقدار داخلش دسترسی دارند. ولی اگر پارامتری را در داخل یک پکیج تعریف کنیم ، این پارامتر فقط داخل همان پکیج قابل استفاده میباشد و سایر پکیج ها دسترسی ای به این پارامتر و مقدارش ندارند.

متغیر در سطح پروژه دیده نمیشود ، یعنی بین پکیج ها مشترک نمیباشد اما در سطح پکیج ها ، کانتینر ها ، Task Flows و Event Handling ها قابل استفاده میباشند.

– رفتار در طول اجرای پکیج (Execution Time Behavior) :

پارامتر ها در طول اجرای پکیج ها مقدارشان ثابت و غیرقابل تغییر است. یعنی در طول اجرای پکیج ، پارامتر ها Read Only هستند. اما برای متغیر ها اینگونه نیست و مقدار آنها را در طول اجرای پکیج میتوان چندین بار عوض کرد.

– پشتیبانی از انواع داده :

هنگامی که قصد تعریف متغیر یا پارامتر را داریم ، باید تعیین کنیم که این مقدار عددیست ، رشته ای است یا …

که لازم به ذکر است متغیر تمام انواع داده ای در SSIS را قبول میکند. یک نوع دیتا تایپ در SSIS داریم به نام Object ، این نوع دیتا تایپ برای نگهداری لیست ، آرایه و تعدادی رکورد مناسب است. فرض کنید میخواهیم یک SELECT بنویسیم و آخرین تاریخ ماه های سال را به دست آوریم ، برای نگهداری Output این SELECT ، دیتا تایپ آبجکت مناسب است.

در سوی دیگر اما پارامتر انواع داده ای زیادی را ساپورت میکند ، به جز DBNull ، Char و Object.

برای تعریف پارامتر در سطح پروژه ، روی فولدر Project.params کلیک کرده و وارد آن شده.

عکس 30:00

در این قسمت میتوان دیتاتایپ و Value یا همان مقدار اولیه پارامتر را مشخص کرد. Required دارای دو حالت True و False میباشد ، حالت True یعنی اگرچه پارامتر یک Default Value دارد ولی این مقدار فقط در Design Mode استفاده میشود  و پس از دیپلوی پکیج در محیط عملیاتی از آن Default Value دیگر استفاده نخواهد شد و مقدار پارامتر توسط Caller(e.g. SQL Agent) باید در Runtime تامین و مشخص شود.

Sensitive هم مشخص میکند که آیا پارامتر شامل دیتای حساس میباشد یا نه که در تنظیمات خاصی به کار میرود.

برای تعریف پارامتر در پکیج ، وارد پکیج شده و به قسمت Parameters میرویم.

عکس 30:34

اکنون در پکیج XML هم پارامتری که در سطح پروژه تعریف کردیم را میبینیم هم پارامتری که در سطح پکیج تعریف کردیم.

عکس 31:05

برای تعریف متغیر ها ، وارد پکیج شده ، و روی ایکان اول در بالا سمت راست کلیک میکنیم.

عکس 32:11

در اینجا هم میتوان Scope ، تایپ داده ، مقدار اولیه و یک Expression بنویسیم.

کاربرد Expression در این است که اگر بخواهیم متغیرمان بر اساس یک فرمول خاصی مقدار گیری کند ، میتوانیم از آن استفاده کنیم و فرمول دهی کنیم.

درباره‌ی علیرضا حسن نژاد

همچنین ببینید

Deploy کردن Tabular Data Model

درس بیست و نهم – Deploy کردن Tabular Data Model

Deploy کردن Tabular Data Model فرض کنید طراحی دیتا مدل به اتمام رسید. حال میخواهیم …

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

معادله امنیتی (فقط عدد بنویسید) *