### Useful Functions dbt macro script တွေ ရေးတဲ့အခါမှာ ဒီ function / variable တွေ အကြောင်း သိထားဖို့ လိုပါတယ်။ - execute - [doc](https://docs.getdbt.com/reference/dbt-jinja-functions/execute) - dbt macro script တွေကို မလိုအပ်ပဲ (ဥပမာ - compiling stage လိုမျိုးမှာ) trigger မဖြစ်အောင်လို့ `if execute` ဆိုတဲ့ condition မျိုးနဲ့ အမှန်တကယ် execute လုပ်ချိန်ကျမှ trigger ဖြစ်အောင် သုံးပါတယ်။ - flags - doc - `flags.WHICH` - [discussion](https://github.com/dbt-labs/docs.getdbt.com/issues/2825) - ### Results - [[2.dbt_artifacts#Run Results JSON]] ကို macro script ထဲကနေ ခေါ်သုံးချင်ရင် `results` variable ကို access လုပ်လို့ရတဲ့ `on-run-end` [[dbt hooks]] နဲ့ပဲ ခေါ်သုံးလို့ ရတယ်။ - on-run-end hook မဟုတ်တဲ့ အပြင်မှာ ခေါ်သုံးရင် `results` variable က None ပဲ return ပြန်တယ်။ - `dbt_project.yml` မှာ ထည့်သုံးတဲ့ နမူနာ ပုံစံ ```yml on-run-end: - {{ some_macro_function(results, arg1, arg2) }} ``` - `results` ကို argument အနေနဲ့ ထည့်မရေးပဲ macro script ထဲမှာ variable အနေနဲ့ တန်းခေါ်သုံးရင်လဲ ရတယ်။ အကယ်ရွေ့မှာ ကိုယ့်မှာ အသုံးပြုစရာ arguments တွေ များနေတယ်ဆိုရင် ဒီလို ရေးရုံပဲ။ ```yml on-run-end: - {{ some_macro_function(arg1, arg2) }} ``` ### Target Variables - `target` variable ထဲမှာ Database/Warehouse ကို ဆက်သွယ်ထားတဲ့ connection နဲ့ ပတ်သတ်သမျှ information တွေ သိမ်းဆည်းပါတယ်။ -