【EC-CUBE】帳票の種類の追加
ver.2.11.5にて
下準備
/data/class/のSC_Fpdf.phpをコピーして、SC_Fpdf_order.phpなど、任意の名前でアップロード。
/ec/data/Smarty/templates/admin/pdf/
のnouhinsyo1.pdfも同様にコピーして、order.pdfなど、任意の名前でアップロード。
LC_Page_Admin_Order_Pdf.phpの修正
/ec/data/class/pages/admin/order/にあります。コピーしたファイルを読み込む
require_once CLASS_REALDIR . 'SC_Fpdf.php';
を、
require_once CLASS_REALDIR . 'SC_Fpdf.php';
require_once CLASS_REALDIR . 'SC_Fpdf_Order.php';
のように、下準備で作成したファイルを読み込む記述を1行加えます。
追加する帳票の種類を追加
$this->arrType[0] = "納品書";
を、
$this->arrType[0] = "納品書";
$this->arrType[1] = "受注明細書";
のように、追加した帳票の種類名を書き加えます。
帳票ごとに分岐処理
function createPdf全体を、書き換えます。
function createPdf(&$objFormParam){
$arrErr = $this->lfCheckError($objFormParam);
$arrRet = $objFormParam->getHashArray();
$this->arrForm = $arrRet;
// エラー入力なし
//納品書の発行の場合
if($arrRet['type'] == 0) {
$objFpdf = new SC_Fpdf($arrRet['download'], $arrRet['title']);
foreach ($arrRet['order_id'] AS $key => $val) {
$arrPdfData = $arrRet;
$arrPdfData['order_id'] = $val;
$objFpdf->setData($arrPdfData);
}
$objFpdf->createPdf();
return true;
}
//受注明細書の発行の場合
elseif($arrRet['type'] == 1) {
$objFpdf = new SC_Fpdf_Order($arrRet['download'], $arrRet['title']);
foreach ($arrRet['order_id'] AS $key => $val) {
$arrPdfData = $arrRet;
$arrPdfData['order_id'] = $val;
$objFpdf->setData($arrPdfData);
}
$objFpdf->createPdf();
return true;
}else{
return $arrErr;
}
}
arrRet['type']の値によって分岐します。増やしたら増やしただけ記述しましょうね。
選択した帳票名がPDFに自動出力されるようにする
$arrForm['title'] = "お買上げ明細書(納品書)";
を
$arrForm['title'] = "お買上げ明細書";
に。
function createPdf(&$objFormParam){
$arrErr = $this->lfCheckError($objFormParam);
$arrRet = $objFormParam->getHashArray();
に、
function createPdf(&$objFormParam){
$arrErr = $this->lfCheckError($objFormParam);
$arrRet = $objFormParam->getHashArray();
$arrRet['title'] = $arrRet['title'] .' (' . $this->arrType[$arrRet['type']] .')';
と、下の1行を書き加えます。
SC_Fpdf_Order.phpの修正
require(DATA_REALDIR . 'module/fpdf/fpdf.php');
require(DATA_REALDIR . 'module/fpdi/japanese.php');
を
require_once(DATA_REALDIR . 'module/fpdi/japanese.php');
に。続けて、コード内の、
SC_Fpdf
部分を、
SC_Fpdf_Order
に書き換えます。
最後に、
$tpl_pdf = 'nouhinsyo1.pdf'
を、
$tpl_pdf = 'order.pdf'
に。以上。
出力されるPDFの変更
SC_Fpdf_Order.phpを自由に設定しましょう。
EC-CUBE 帳票 の関連記事
コメント
No comments yet
コメントする
次項 【EC-CUBE】メールテンプレートの追加
前項 【EC-CUBE】ポイント付与率一括変更
▲知識Z(ゼータ)トップへ