PDF SAS

【SAS】ODS PDFは結果内容をPDFファイルとして出力する

投稿日:2021年12月5日 更新日:

今回はPDFについて解説します。


/* pdf */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf file="/home/xxxxxxxxxx/out.pdf";

  proc print data=data1; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。

/* pdf'' */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf file='/home/xxxxxxxxxx/out.pdf';

  proc print data=data1; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • file=部分はシングルクォーテーションでも実行できる。

/* pdf パス指定無し */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf file="out.pdf";

  proc print data=data1; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • パス指定が無い場合は、出力先はデフォルトになる(?)

/* pdf close無し */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf file="/home/xxxxxxxxxx/out.pdf";

  proc print data=data1; run;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf close;が無い場合は、PDFファイルは出力されない。

/* pdf file=無し */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;


  proc print data=data1; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf file~が無い場合は、PDFファイルは出力されない。

/* 2つ結果 */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

data data2;
  Id1=5555; Char1="EEEE";
    output;
  Id1=6666; Char1="FFFF";
    output;
  Id1=7777; Char1="GGGG";
    output;
run;


ods pdf file="/home/xxxxxxxxxx/out.pdf";

  proc print data=data1; run;
  proc print data=data2; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • 複数の結果出力があっても、ods pdfで挟めば1つのPDFファイルに出力される。

/* (1) */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf(1) file="/home/xxxxxxxxxx/out.pdf";

  proc print data=data1; run;

ods pdf(1) close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに番号を付けられる。

/* (1)(2) */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

data data2;
  Id1=5555; Char1="EEEE";
    output;
  Id1=6666; Char1="FFFF";
    output;
  Id1=7777; Char1="GGGG";
    output;
run;


ods pdf(1) file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf(1) close;


ods pdf(2) file="/home/xxxxxxxxxx/out2.pdf";

  proc print data=data2; run;

ods pdf(2) close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに番号を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)

/* (1)(3) */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

data data2;
  Id1=5555; Char1="EEEE";
    output;
  Id1=6666; Char1="FFFF";
    output;
  Id1=7777; Char1="GGGG";
    output;
run;


ods pdf(1) file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf(1) close;


ods pdf(3) file="/home/xxxxxxxxxx/out2.pdf";

  proc print data=data2; run;

ods pdf(3) close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに番号を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • (1)(3)と複数のPDFファイル番号は数字が飛んでいても良い。

/* ("1") */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf("1") file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf("1") close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(“1”)と記述することでPDFファイルに番号を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • 文字列も付けられる。


/* ("a") */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;


ods pdf("a") file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf("a") close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(“a”)と記述することでPDFファイルに文字を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • 文字列も付けられる。

/* (1) 無印 */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

ods pdf(1) file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに文字を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • ods pdf(1)~ods pdf closeで番号が合っていないと正しくPDF出力されない。

/* 無印 (1) */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;


ods pdf file="/home/xxxxxxxxxx/out1.pdf";

  proc print data=data1; run;

ods pdf(1) close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに文字を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • ods pdf~ods pdf(1) closeで番号が合っていないと正しくPDF出力されない。

/* (1)(2) (1)(2) */
data data1;
  Id1=1111; Char1="AAAA";
    output;
  Id1=2222; Char1="BBBB";
    output;
  Id1=3333; Char1="CCCC";
    output;
  Id1=4444; Char1="DDDD";
    output;
run;

data data2;
  Id1=5555; Char1="EEEE";
    output;
  Id1=6666; Char1="FFFF";
    output;
  Id1=7777; Char1="GGGG";
    output;
run;


ods pdf(1) file="/home/xxxxxxxxxx/out1.pdf";
ods pdf(2) file="/home/xxxxxxxxxx/out2.pdf";

  proc print data=data1; run;

ods pdf(1) close;

  proc print data=data2; run;

ods pdf(2) close;

  • pdfにより、「結果」内容をPDFファイルとして出力する。
  • ods pdf(1)と記述することでPDFファイルに文字を付けられる。(⇒これにより、複数のPDFファイル出力を使い分けられる)
  • ods pdf~ods pdf closeで挟んだ「結果」をPDFファイルに出力するので、入れ子でも良い。

-PDF, SAS

執筆者:


comment

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

関連記事

【SAS】%MACROはマクロを定義することができる。その3 マクロには引数を設定できる。【%MEND】

今回はマクロに引数を設定する方法について解説していきたいと思います。(事前に読んでおきたい記事:【SAS】%MACROはマクロを定義することができる。【%MEND】 | ビジネスイッチ (how-to …

【SAS】0による除算【SAS Base Programming対策3】

今回は0による除算(割り算)を解説します。 数学では「0で割れない」とか、極限の単元だと「∞に発散する」とか言われますが、SASで0による除算を行うとどうなるのか触れていきます。 知ってるか知らないか …

【SAS】CALL SYMPUTは関数を用いてマクロ変数の代入ができる。

今回はCALL SYMPUTについて解説します。 /*その1*/ data data1; kyo = today(); run; today()は本日の日付をSAS日付で取得する。 /*その2*/ d …

【SAS】ROUNDは四捨五入して数値を丸める

今回はROUNDについて解説します。 /* 正常形 */ data work.data1; _100 = round(1234.56789, 100); _10 = round(1234.56789, …

【SAS】「NOTE: PROC SQLはNOEXECオプションを設定し、ステートメントの構文をチェックします。」の対処法

今回はSQLプロシージャを実行した際に、NOEXECオプションを使用していないにも関わらず、 勝手にNOEXECオプションが有効になってしまう場合の対処法について解説します。 結論:構文エラーを正す。 …