“DDE セッションが準備されていません”対策のヒント

おーーー、今までSASからEXCELへのdde出力時、ログにでてくる”DDE セッションが準備されていません”への対応策は明確にはなかったけど、、少し見えてきた。

要旨

save.asの部分はマクロの中でする。以下の本のサンプルコードをダウンロードしてくれば、
“save_excel”というマクロがはいっていて、それでやる。

リンクはこちら
https://www.sas.com/store/books/categories/examples/exchanging-data-between-sas-and-microsoft-excel-tips-and-techniques-to-transfer-and-manage-data-more-efficiently/prodBK_64107_en.html

でもそれだとexcelが立ち上がったまま閉じてくれない。
excelファイルは閉じるよ、とも書いてあるけど、”閉じませんよ!!”と叫びたくなる。
(でも、このマクロ経由でやることで”~準備されていません”はいわれないので、”あと少し。。。”とモチベーションは高まった。)

で、save.asした後のexcelの閉じ方は以下を参考にした。もしかしたら以下の情報だけで完結できるのかもしれません。
リンクはこちら
http://stackoverflow.com/questions/8189278/save-as-and-close-file-without-using-macro

特に、宣言したFILENAMEをclearするっていうのはあまり知らなかったかも。

過去の現場の状況:

照会事項対応の業務です。みんな、、、目の色が違います!!

当局からは、(回答の)レイアウトもこうしてくださいね、という指定もあります。
メディカルライターさん達から解析メンバー側へ、”ひとまずどんなレイアウトになるかはようみせて♡”、というプレッシャーがある。
そのためEXCELでひとまずmockを提出した。そのためrtf出力ではない。

我々プログラマは泣きたいぐらいの帳票数をがんばっている最中、、、なんとか終われそうだけどログの汚点(DDE セッションが準備されていません)が非常にむかつく。
これさえ消せれば満点なのに、と。
そういう時に当情報が役立てば。

次にDDE出力の仕事がしたくなりました。。
========================================
I found some tips for SAS log “DDE session not ready”
point1,from the book

Maybe we’d better “save.as” through macro,

point2,from stackoverflow
do belows before “run;”
put ‘[file.close(0)]’;
str_line = cats(“[e”,”rror(true)]”);
put str_line;

and write “filename fileref_name clear;” after “run;”

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です