Reports Web オールインワン開発セットを公開しました。購入前にお試しいただけます。
PHP

PHPで、
帳票作成・印刷を。

データベースから取り出した売上を、そのまま請求書づくりの材料に。PHPで明細と金額を組み立て、ブラウザで見て、印刷するところまでつながります。

YOUR CODE, YOUR BUSINESS

業務のルールは、
いつものコードに。

PHPの補助クラスは、データ取得や金額計算の代わりをするものではありません。お客様の業務処理で求めた値を、名前の付いた帳票項目に設定するための道具です。PHP自体にWASMの描画処理を組み込む必要はありません。

ブラウザのデザイナーで帳票定義 .prepdj を作り、補助クラスで印刷データ .prepej にまとめます。

まずは、名前で値を入れる

以下は txtTotal という項目のある帳票定義を使う例です。サンプルの補助ライブラリが必要です。

use Pao\Reports\Web\PrintData;
require_once __DIR__ . '/src/PrintData.php';
$definition = json_decode(
    file_get_contents('invoice.prepdj'),
    true, 512, JSON_THROW_ON_ERROR
);
$document = (new PrintData())->setDefinition($definition);
$document->pageStart();
$document->setValue('txtTotal', '12,345');
$document->pageEnd();
$json = $document->toJson();

サンプルのPrintData.phpを参照する例です。
参照するソース:samples/php/src

PREVIEW, PRINT, PDF

データができたら、画面と出力へ。

PHPがJSONを返した後、ブラウザのJavaScriptがそれをプレビュアーへ渡します。バックエンドでPDFを作る場合はPHPから内部のNode.js描画サービスへ渡し、完成したPDFを返します。

サンプルでは請求書のプレビューと印刷、ブラウザ/サーバーでのPDF生成、印刷データの保存・読み込みを試せます。プレビューと印刷はSVG、PDFは別の出力経路です。

印刷ダイアログはブラウザが開きます。プリンターへの無人・自動印刷を保証するものではありません。

WebAssembly(WASM)が動く仕組みを見る →

言語が変わっても、帳票の入口は同じ。