2017-05-24 16 views
0

私は、特定のテーブルの最新の修正日(modate)と修正日時(modate)のためにdictionary.tablesを監視するソリューションを探しています)は今日の日付と同じです。私はSASの電子メール機能で通知を受けたいと思っています。SAS:テーブルが変更/更新された後でメールを送信

これはできますか?

感謝

+1

を試してみましたか?あなたが働くことができない特定の部分はありますか? – user667489

+0

ステップ1)SQLを使用して、3つのテーブルの最後の修正日(modate)を表示した小さなプログラムを実行して、この部分を実行することができます。プログラムは毎回チェックしたいと思う。 – Aaron

+0

ステップ2)各テーブルの最終変更日が今日の日付と等しくなったら、SASの電子メール機能を使用して通知を受けたいと思います。私は電子メールを送信するいくつかのコードを持っていますが、条件が満たされた場合にのみ送信する必要があります。条件がIF modate = todayの場合はメールを送信します。多くのありがとう – Aaron

答えて

1

それはあなたの既存のコードを組み込むシンプルで小さなマクロを定義する必要があるかのように聞こえる:あなたは何を

/* Define a macro that sleeps in a loop until your condition is met */ 
%macro wait_then_email; 
    %local EMAIL_CONDITION SLEEP; 
    %let EMAIL_CONDITION = 0; 
    %do %while(&EMAIL_CONDITION = 0); 
    /* Insert logic here that sets &EMAIL_CONDITION to 1 based on moddate */ 

    /* Wait for 1 minute if condition not met*/ 
    %if &EMAIL_CONDITION = 0 %then %let SLEEP = %sysfunc(sleep(60,1)); 
    %end; 
    /*Insert email generation code here*/ 
%mend; 

/* Run the macro! */ 
%wait_then_email; 
+0

&EMAIL_CONDITIONを1に設定するロジックの例を教えてください。 – Aaron

関連する問題