受注詳細CSVダウンロード for NP後払い

NP後払いで注文詳細を登録する際に「csv」で登録できますが、EC-CUBEには受注詳細、注文詳細、の個別のCSVを出力、ダウンロードする機能がありません。(注文個別明細?受注個別明細?)

ので、作成。。くたびれた。

以前作ったモノ(お客さんの注文に対するメーカーへの発注書)のさらに応用。
ようはステータス確認の「受注番号」をクリックしたら表示される
 「/admin/order/edit.php?order_id=xxx」
を表示換えしてやる。。SQLを駆使しない邪道な方法でCSVダウンロード♪

・/html/admin/order/edit.php  →  コピーして hoge.php など
・/data/admin/order/edit.tpl  →  コピーして hoge.tpl など

を基にそれぞれコピー&リネームして作成。。


テンプレートは不要な部分を丸ごとごそっと削除しまくって。。htmlタグなんかも全部削除して。。
必要な表示変数情報を「”(ダブルコーテーション)」と「,(カンマ)」で羅列する。
条件なども追加しながら。。商品情報もループさせて。。

で、■hoge.php の「// 表示モード判定」
 $objView->display(‘order/disp.tpl’);
部分を
 $objView->display(‘order/hoge.tpl‘);
変更。

ここまでやったら、
「/admin/order/hoge.php?order_id=xxx」
でcsvの内容っぽく「,(カンマ)」区切りできちんと表示されるかチェック。
(普通にやったら、この場合の表示の文字エンコーディングはEUC-JP)

次は、phpをテンプレートに実行。。「出力を表示」ではなく「出力をダウンロード」に改造。

■hoge.php の「/* パラメータ情報の初期化 */」の前に

// 出力文字エンコーディング
mb_http_output(“SJIS”);

// ダウンロード
header(“Cache-Control: public”);// IE6用
header(“Pragma: public”);// IE6用
header(“Content-Disposition: attachment; filename=download_$order_id.csv”);

を追加挿入

「/admin/order/hoge.php?order_id=xxx」
にアクセスしたら、文字エンコード「Shift_JIS」のcsv 保存ダイアログが出る。。はず。

あとは、「受注履歴編集」画面あたりにリンクを忍ばせればイイ。。
保存したcsvをNP後払いの売上データ(csvファイル)送信でいける。。気がする。

<参考>
EUC-JPの文字列をSJISのCSVで書き出す方法
IE6だと、csvファイルがダウンロードできない というメモ。

IE6 でダウンロードできなかったので即改良が必要でした(爆

■使ってみました。。今まで、せこせこコピペしていたのが。。アホみたいに思えます。超楽です。

□CSV出力項目設定>高度な設定でやるのが本道??SQL構文めんどいんだもの(笑

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
Highslide for Wordpress Plugin