お問い合わせ

Pythonからの帳票出力

Create!Formは、Windows・Linux環境においてPythonから利用可能な帳票ツールです。

この記事では、PythonでPDF、HTML、Excel、印刷の帳票を出力する最も簡単なサンプルコードを紹介します。
運用要件に応じた出力形態を以下のタブメニューから選択してご覧ください。

PythonからのPDF帳票出力

Python + Create!FormでのPDF帳票生成方法

まず、Create!Formを使ってPDF帳票を生成する手順を説明します。

  1. 帳票開発環境で、帳票定義(デザインやデータとの関連付け)を作成する。
  2. Pythonアプリケーションより、帳票出力用データファイルを作成する。
  3. Pythonアプリケーションから、1の帳票定義や2の帳票出力用データファイルをもとに、Create!Form Cast(PDF帳票出力ランタイム)を呼びだし、PDF帳票を出力する。

PythonでPDF帳票を生成する

3の、Create!Form Castを呼び出すPythonサンプルコードを以下に記載します。

Pythonサンプルコード

実行パラメーターに、作業ディレクトリ、スタイルファイル、出力ファイル名、入力データファイル名を設定し、Create!Form Castを呼び出します。

■Windowsの場合

import subprocess
import sys

def CastCall():
    # Create!Form導入ディレクトリ
    cfhome = "C:\\Program Files (x86)\\Infotec\\CreateForm\\12"

    # 実行パラメータ
    workdir = "C:\\ProgramData\\Infotec\\CreateForm\\12\\work\\reference\\barcode"
    style = "code39.sty"
    outfile = workdir + "\\code39.pdf"
    infile = workdir + "\\code39.csv"

    # コマンドの実行
    cmd = [cfhome + "\\CCast.exe", "-D" + workdir, "-s" + style, "-o" + outfile, infile]
    res = subprocess.run(cmd).returncode

    # 戻り値の確認
    if(res != 1):
        # エラー処理
        print("Error")

if __name__ == "__main__":
    CastCall()

■Linuxの場合

import subprocess
import sys

def CastCall():
    # Create!Form導入ディレクトリ
    cfhome = "/usr/local/cf/cast/csys"

    # 実行パラメータ
    workdir = "/usr/local/cf/work/reference/barcode"
    style = "code39.sty"
    outfile = workdir + "/code39.pdf"
    infile = workdir + "/code39.csv"

    # コマンドの実行
    cmd = [cfhome + "/ccast", "-D" + workdir, "-s" + style, "-o" + outfile, infile]
    res = subprocess.run(cmd).returncode

    # 戻り値の確認
    if(res != 0):
        # エラー処理
        print("Error")

if __name__ == "__main__":
    CastCall()

このサンプルコードを実行すると、指定したディレクトリにPDF帳票「code39.pdf」が作成されます。

また、以下のような処理についても、この記事と同様の方法で実現できます。

帳票のオンデマンド印刷
セキュリティ付きPDF帳票の出力

サンプルコードTOPに戻る