マイクロ office ★excel2016 価格 http://www.msofisu.com

microsoft オフィス ★office365 価格 個人

Eccube 2.13系 帳票のカスタマイズについて [EC-CUBE 2.12.2] 帳票出力でお届け先情報も出力したい

Eccube 2.13系 帳票のカスタマイズについて [EC-CUBE 2.12.2] 帳票出力でお届け先情報も出力したい

コミュニティにこんな質問がありましたので、できるかなと思い、やってみました。 お買上げ明細書(納品書)にお届け先を明記するには?

eccube 帳票 電話番号を表示 2.13

$text = “電話番号 : ”.$this->arrDisp[‘order_tel01’].“- ”.$this->arrDisp[‘order_tel02’].“- ”.$this->arrDisp[‘order_tel03’]; $this->lfText(27,63,$text, 10); //お届け先TEL

1.data/class/SC_Fpdf.php の 155行目付近に以下を書き加えました。

// 配送先情報
$text = '〒 '.$this->arrDisp['shipping_zip01'].' - '.$this->arrDisp['shipping_zip02'];
$this->lfText(23, 243, $text, 10); //配送先郵便番号
$text = $this->arrPref[$this->arrDisp['shipping_pref']] . $this->arrDisp['shipping_addr01'];
$this->lfText(27, 247, $text, 10); //配送先都道府県+住所1
$this->lfText(27, 251, $this->arrDisp['shipping_addr02'], 10); //配送先住所2
$text = $this->arrDisp['shipping_name01'].' '.$this->arrDisp['shipping_name02'].' 様';
$this->lfText(27, 259, $text, 11); //配送先氏名

IfText メソッドの第一引数がX方向の位置、第二引数がY方向の位置になりますので、 適当に数値を変えて、希望する場所に配置してください。

 

2.data/class/SC_Fpdf.php の 300行目付近にある、lfGetOrderData メソッドを以下のように修正しました。

// 受注データの取得
function lfGetOrderData($order_id) {
    if (SC_Utils_Ex::sfIsInt($order_id)) {
        // DBから受注情報を読み込む
        $objQuery =& SC_Query_Ex::getSingletonInstance();
        $where = 'o.order_id = ?';
        $arrRet = $objQuery->select('*', 'dtb_order as o LEFT JOIN dtb_shipping as s ON o.order_id = s.order_id', $where, array($order_id));
        $this->arrDisp = $arrRet[0];
        list($point) = SC_Helper_Customer_Ex::sfGetCustomerPoint($order_id, $arrRet[0]['use_point'], $arrRet[0]['add_point']);
        $this->arrDisp['point'] = $point;

        // 受注詳細データの取得
        $arrRet = $this->lfGetOrderDetail($order_id);
        $arrRet = SC_Utils_Ex::sfSwapArray($arrRet);
        $this->arrDisp = array_merge($this->arrDisp, $arrRet);

        // その他支払い情報を表示
        if ($this->arrDisp['memo02'] != '') {
            $this->arrDisp['payment_info'] = unserialize($this->arrDisp['memo02']);
        }
        $this->arrDisp['payment_type'] = 'お支払い';
    }
}

本来、受注データの取得ということで、dtb_order テーブルしか参照していないのですが、 LEFT JOIN で dtb_shipping も参照し、受注データに関連する配送情報も合わせて取得するようにしました。 こうすれば、$this->arrDisp に配送情報も格納されますので、1番の作業とあわせて、配送先情報が出力可能になります。

 

一番下の備考欄に、配送先情報が出力されるはずですので、帳票PDFを生成して確認してみてください。 あとは出力位置を地道に変えてあげれば良いと思います。

2.13系で、帳票(納品書)

お買い上げ明細 [ご注文日] [注文番号] の下に、お支払方法を表記したいのですが data/class/SC_Fpdf に追記することはわかるのですが どのように追記すればよいのか、教えて下さい。

data/class/SC_Fpdf

  // お届け先情報  $this->SetFont('SJIS', '', 10);  $this->lfText(25, 125, SC_Utils_Ex::sfDispDBDate($this->arrDisp['create_date']), 10); //ご注文日  $this->lfText(25, 135, $this->arrDisp['order_id'], 10); //注文番号

の下に

  $this->lfText(25, 145, $this->arrDisp['payment_method'], 10); //決済方法

を追加します。 後は、 data\Smarty\templates\admin\pdf\nouhinsyo1.pdf を修正します。

Re: 2.13系 帳票のカスタマイズについて

ありがとうございました。

無事、変更することが出来ました。