استفاده مجدد از فیلتر با بلاک در بلاک
یک فیلتر ذخیرهشده را در فایل دیگری به کار ببرید و نتیجه شرط، خروجی عددی و ورودیهای آن را از هم تفکیک کنید.
پیشنیاز: یک فیلتر مستقل و آزمودهشده؛ برای تمرین از فیلتر حجم دارای ورودی عدد استفاده کنید.
فایل فرزند چه چیزی برمیگرداند؟
فایل اصلیِ قابل استفاده مجدد را فرزند و فایل استفادهکننده را والد مینامیم. بلاک در بلاک دو انتخاب دارد: نتیجه فیلتر 0 یا 1، و خروجی فیلتر. در حالت اول، پذیرفتهشدن نماد در فیلتر فرزند عدد۱ و ردشدن عدد۰ میدهد.
در حالت خروجی فیلتر، هدف دریافت خروجی عددی انتخابشده از فایل فرزند است؛ این عدد الزاماً صفر یا یک نیست. برای مثال نتیجه محاسبه نسبت حجم میتواند 1.5 باشد. خروجی عدد با ستون جدول خروجی فیلتر یکی نیست.
فایل و نوع استفاده را انتخاب کنید
ابتدا فایل فرزند را ذخیره و مستقل بررسی کنید. یک فایل والد جدید بسازید و بلاک در بلاک را از گروه ابزار بلاکی روی بوم بکشید. در انتخاب فایل، نام و پوشه فیلتر فرزند را با دقت انتخاب کنید؛ فایل والد را بهجای فرزند انتخاب نکنید.
برای استفاده از شرط حجم، نوع استفاده را نتیجه فیلتر 0 یا 1 بگذارید. پس از انتخاب فایل دارای ورودی عدد، عنوان پارامتر آن در پنل ظاهر میشود؛ در نمونه حجم، آستانه دو میلیون نمایش داده شد. نام پارامتر باید معنای عدد و واحد را روشن کند.
اگر منبع فرزند را از فایل ذخیرهشده انتخاب میکنید، ابتدا نام و نوع آن را در درخت فایلها کنترل کنید. کارت آمادهٔ عمومی، فایل شخصی ذخیرهشده و بلاک در بلاک قرارداد یکسانی ندارند و انتخاب اشتباه میتواند نتیجهای بسازد که قابل بازتولید نیست.
نتیجه عددی را به شرط والد تبدیل کنید
یک مقایسه در والد بسازید. خروجی بلاک در بلاک را به مقدار۱ آن متصل کنید؛ مقدار۲ را۱، عملگر را مساوی و ضریب را۱ بگذارید. در پنل، مقدار۱ باید {بلاک در بلاک} باشد. این مقایسه، عدد حاصل از فرزند را به شرط منطقی والد تبدیل میکند.
صرف حضور بلاک در بلاکِ دارای خروجی عددی، شرط منطقی نهایی را مشخص نمیکند. در این مثال باید نتیجه فرزند برابر۱ باشد. اگر نتیجه را با۰ مقایسه کنید، معنای انتخاب را معکوس کردهاید.
پارامترهای والد را جداگانه کنترل کنید
مقدار ورودی فرزند در پنل بلاک والد را بخوانید؛ تنها به Value داخل فایل فرزند تکیه نکنید. مقدار ارسالشده از والد میتواند مقدار پیشفرض فرزند را جایگزین کند. بعد از تغییر مقدار، بلاک را دوباره انتخاب و مقدار را بازخوانی کنید.
برای مقایسه مستقیم والد و فرزند، مقدار مؤثر ورودی، نماد، زمان و تایمفریم باید یکسان باشند. تغییر آستانه والد به معنی تغییر خودکار همه فایلهای استفادهکننده نیست؛ تنظیم هر فراخوانی را کنترل کنید.
دو اجرا را با شرایط یکسان تطبیق دهید
فرزند و والد را روی یک تاریخ و دامنه نماد اجرا کنید. برای حالت نتیجه۰یا۱، مجموعه نمادهای والدِ دارای شرط برابر۱ باید با پذیرفتهشدههای فرزند سازگار باشد. فقط تعداد ردیفها کافی نیست؛ نام نمادها را هم تطبیق دهید.
در حالت خروجی عددی، یک نماد و زمان را انتخاب و عدد خروجی منتخب فرزند را با عدد دریافتشده در والد مقایسه کنید. نبود خروجی منتخب را صفر تفسیر نکنید؛ طبق قرارداد موتور، در این وضعیت امکان مقدار نامعتبر وجود دارد.
پس از تغییر ساختار ورودی یا خروجی فایل فرزند، والدهای وابسته را دوباره بررسی کنید. ارتباط نامشخص یا ارجاع دوری را وارد تمرین نکنید؛ ابتدا یک والد و یک فرزند ساده را کامل کنید.
تمرین و کنترل نتیجه
فیلتر حجم ذخیرهشده را در یک والد مستقل انتخاب کنید، آستانه را یکسان نگه دارید و خروجی بلاک در بلاک را با۱ مقایسه کنید. دو نتیجه را با تاریخ و دامنه یکسان ثبت و نام نمادها را تطبیق دهید.
نتیجه مورد انتظار: نتیجه شرطی والد باید پذیرفتهشدن در فرزند را منعکس کند. اختلاف نتیجه نیازمند بررسی زمان، ورودی مؤثر، فایل منتخب و نوع استفاده است؛ شمار یا خروجی عددی را بدون این کنترلها درست فرض نکنید.