EC-CUBE 2.13.3バージョンで 配送情報付き注文データCSVを作成する方法 SQLのカスタマイズ

こんにちは。nekonomoridesignのyoshyです。
今日は、EC CUBEのプチカスタマイズの話をします。

最初に断っておきます。Yoshyは、デザイナーで、しかも数ヶ月前まで紙面デザインがメインで、webデザインといえば、楽天とかヤフーとかそういうショッピングモールの商品ページをつくっていたくらいの、いわば普通の?webページ作成や独自ドメイン系のカスタマイズはずぶの素人に近いです・・・!
そうです。コードがちょっとだけ他の人より読めて、ちょっとだけプログラムとか好きで、何となく見ただけでどういうことになっているのか理解しやすい性質をもっているだけです・・・。
なので、EC-CUBEのカスタマイズの仕事をすることになった時は背中からいろんなものがでました。ハイ。

参考書も無くて、自分の勘とインターネットの情報と、自分のトライ&エラーだけで何とかしてます・・・w
そう、WEB制作はサバイバル・・・!(謎)

さて。あほな事いってる暇があったら、ちゃんと解説しましょう・・・。
はじめます。

EC CUBE バージョン 2.13.3
配送先情報入り注文データCSVを自作する方法

何故、こんなカスタマイズが必要になったかというと、
仕事でEC CUBEを使ったECサイトを作ることになって、WEBページといってもほぼ素人なのに(2回目)毎日悪戦苦闘しながら既存のテンプレートをカスタマイズして、なんとかイメージに近いデザインにまで仕上げ、今度は商品データのテストおよび注文データを管理するソフト作成も同時進行するという事で、テスト注文までしたのですが、注文データの中身が知りたく、受注管理から、該当の注文データをダウンロードしてみたのがきっかけでした。

EC CUBEにある、受注管理というところから、受注データダウンロード をしました。

そしてそれをエクセルで開いたら……

配送先情報あらへんやんΣ(・□・;)

という事態に遭遇。
デフォルトで落とせる受注管理データに配送先情報無いとか、モール慣れしてた私には考えられない世界でした。

が。

無いと困ります。

ので。カスタマイズしかありません。

という事で、カスタマイズしました。

EC CUBE 2.13.3
配送先情報付きCSVをカスタマイズで作る方法

ec1

コンテンツ管理から、CSV出力項目設定>>高度な設定をクリック。

ec2

何か開くので、新しくSQLを作成します。
名前は任意でいいです。私はわかりやすいように「受注データ」とかにしておきました。
何度も言いますが、SQLとか本当に1ヵ月半前くらいに触り始めたばっかりです・・・。でも、見た感じ、何となくselect文という、比較的初期のわかりやすいSQLで何とかなりそうでした。

答えを書いてくれているサイトさんはさすがに無いので(おそらくココまで来ると、お金を取るレベルなのでしょう・・・?)自分で何とか色々な情報を集めて作ってみました。

SQL文というところに、このコードを書けば、とりあえず、配送先情報と、商品詳細くらいはとってこれました。
———————————————————————————————–
shipping_id,dtb_shipping.order_id,shipping_name01,shipping_name02,shipping_kana01,shipping_kana02,shipping_zip01,shipping_zip02,mtb_pref.name,shipping_addr01,shipping_addr02,shipping_company_name,shipping_tel01,shipping_tel02,shipping_tel03,shipping_fax01,shipping_fax02,shipping_fax03,shipping_date,dtb_order.payment_total,dtb_order.payment_method,dtb_order.order_name01,dtb_order.order_name02,dtb_order.order_company_name,dtb_order.order_email,dtb_order.order_tel01,dtb_order.order_tel02,dtb_order.order_tel03,dtb_order.order_pref,dtb_order.order_addr01,dtb_order.order_addr02

FROM
dtb_shipping,mtb_pref,dtb_order

WHERE
dtb_shipping.shipping_pref=mtb_pref.id AND dtb_shipping.order_id = dtb_order.order_id
————————————————————————————————-

EC-CUBEのSQLのところは、最初の SELECT を書いてはいけないので、こんな感じです。

ただ、コレでも少し問題があって・・・・「dtb_order.order_pref」のところが、県名ではなくて、番号で出てきます・・・。

それが難点ですが、デフォルトのデータベース名を変えていない限りは、コレを書けば、いけるはずです。

一応、「構文エラーを確認する」をして、私は問題ありませんでした。

プログラムが出来たらダウンロードを試して見ましょう。

ec3

「CSV出力」を押してダウンロードしてみてください。

とりあえず・・・今日はこんな感じです。

まだまだ勉強しないといけない事がたくさん。

EC CUBEのカスタマイズができるようになったら・・・きっと何かいいこと起きるはず!
がんばれ!私!!