* use log caplogclose _all log using "_log_file.smcl", replace
* set the folder path and file type for loop local folder_path = "./the_folder_path" local file_type = ".dta" local files: dir"`folder_path'" files "*`file_type'" local files_len : word count`files'
local i = 1 scalar _total_time = 0 scalar _avg_time = 0 foreachfile of local files { local pref = substr("`file'", 1, 1) quiif"`pref'" != "." { captimerclear 1 timeron 1
* Do something
timer off 1 timerlist 1 scalar _total_time = round(r(t1) + `=scalar(_total_time)' , 0.001) local __display_total_time : dis %18.3f = _total_time local __display_total_time = trim("`__display_total_time'") scalar _avg_time = round(_total_time / `i' , 0.001) local __display_avg_time : dis %18.3f = _avg_time local __display_avg_time = trim("`__display_avg_time'") noisdisas text /// "`i'/`files_len' Done. Time used: "r(t1) " || Total tile used: `__display_total_time' || Avg time per it: `__display_avg_time'" } local ++i } sendtoslack, /// url(put your url here) /// method(curl) /// message("Your Program is Done! Total Time Used: `__display_total_time'") di"Pgm End Time: " c(current_date) " " c(current_time) caplogclose _all
sendtoslack
The program use sendtoslack to send a message to your slack channel.