これは、ワードの差込印刷において元データを指定するメソッド
OpenDataSourceメソッドにSQLを指定したいのだが、悩んだという話。
問題
$doc->MailMerge->OpenDataSource($database,,,,,,,,,,,,$sql);
ではうまくいかない。
VBAでは
ActiveDocument.MailMerge.OpenDataSource Name:= "T:¥temp.accdb", SQLStatement:="SELECT * FROM `基本データ`"
と記載することができる。
対応
ハッシュで指定し、リファレンスを渡すことで対応可能my %param;
$param{"Name"} = $database;
$param{"SQLStatement"} = $sql;
$doc->MailMerge->OpenDataSource(¥%param);
所感
perlリファレンスにしっかり書いてあった。かるーくショック。