webアプリケーションの開発をしていると、帳票をPDFで出力したいといった要望を頻繁に受けます。

これまでは、帳票をエクセルで生成してダウンロードしてもらい、

それを手動でPDFへ変換するようにクライアントにお願いしていましたが、

請求書フォーマットをそのまま請求先へメールで送信する処理になり、

どうしても自動でPDF化する必要がでてきました。

 

請求書なので、フォントやレイアウトの崩れがない、

手動で変更したような綺麗なPDFを生成しないといけません。

あれこれ調べているうちに、Microsoft Graph APIを知り、

PHPExcelで生成した請求書のエクセルをSharepointへアップロードして、

PDF形式でダウンロードすることで、綺麗なPDFへ変換できることを知りました。

 

他にもPDFへ変換したり、PDFを生成する手段はありそうでしたが、

安定して綺麗なPDFを作れるのはこのAPIだと思います。

このAPIも想定以上に時間がかかりましたので、無料で公開はできませんが、

システムに組み込んで使用したい方はご連絡ください。

有償となりますが、2,500円にてご提供致します。

 

PHPは1枚だけです。Office365のライセンスが必要です。

 

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

連絡先:t0798452571@gmail.com

ご連絡をいただけましたら、お振込み先をお知らせいたします。

お振込確認後、メール添付にてPHPファイルをお送りします。

(※御請求書・領収書など、必要な際は発行いたします。)

-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

 

下記はエクセル、ワード、パワーポイントなどの

オフィス系ファイルをPDFへ変換するデモサイトです。

こちらでPDFの変換レベルをご確認ください。

 

 

APIに必要なキー値:

1.ディレクトリ (テナント) ID

2.アプリケーション (クライアント) ID

3.クライアント シークレットの値(シークレットIDは要らない)

4.ユーザーID

 

エクセルファイルをPDFへ変換する大まかな処理工程です。

エクセルファイルのサイズなどにもよりますが、概ね数秒でPDFファイルが作成できます。

 

1)PHPExcelなどでエクセルファイルを生成。

2)APIでアクセストークンを取得

3)API + Curlでsharepointサーバーへエクセルファイルをアップロード

4)APIでアップしたエクセルをPDFフォーマットでダウンロードし、file_put_contentsでサーバー内に保存

5)APIでsharepointへアップした元のエクセルファイルを削除