バージョン選択

フォーラム

メニュー

オンライン状況

44 人のユーザが現在オンラインです。 (32 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 43
barriers1 もっと...

サイト内検索

質問 > 管理機能 > dtb_class項目をdate型に変更した場合、CSVダウンロードで時間が表示される

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
YOHBUN
投稿日時: 2018/12/21 18:00
対応状況: −−−
常連
登録日: 2016/12/20
居住地:
投稿: 59
dtb_class項目をdate型に変更した場合、CSVダウンロードで時間が表示される
▼テンプレート
[EC-CUBE]3

dtb_classに追加項目として入荷日を追加しました。
その際にDBの型はdateタイプにしましたが、
CSVダウンロードの際に、なぜか時間が追加され yyyy-mm-dddd 00:00:00
の形式で落とされます。

Eccube.Entity.ProductClass.dcm.ymlのフィールドも

stock_next_arrival_date:
type: date
nullable: true

と記述しました。


DBを見てみても時間は入っていませんし、
phpMyAdminよりCSVをダウンロードしても入っていません。


どうしてでしょうか。宜しくお願い致します
468
投稿日時: 2018/12/21 23:27
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 1569
Re: dtb_class項目をdate型に変更した場合、CSVダウンロードで時間が表示される
ymlで指定する型をtype: dateにすると
entityの変数はphpのdatetimeで処理されるのではないでしょうか?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

YOHBUN
投稿日時: 2018/12/22 10:54
対応状況: −−−
常連
登録日: 2016/12/20
居住地:
投稿: 59
Re: dtb_class項目をdate型に変更した場合、CSVダウンロードで時間が表示される
つまりdate型として扱うとdatetimeで処理してしまうため、
日時の表記を取り除くことは、標準では不可能ということでしょうか?

例えば
ダウンロードの際に、yyyy-MM-ddddの先頭12桁のみを抽出する
などの処理をするなどして対策するしかなさそうですか?
468
投稿日時: 2018/12/22 16:45
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 1569
Re: dtb_class項目をdate型に変更した場合、CSVダウンロードで時間が表示される
もしかしたら、取り除く方法があるのかもしれませんが、
私はその方法にたどり着く事が出来ず、
時間を取り除きたい場合は、CSVダウンロード処理に直接手を加えています。

異なる箇所の処理で申し訳ないのですが、
配送CSVを他のシステムと連携する際、お届け希望日に時刻があるとエラーとなる課題があり、
それに対応した時は、/src/Eccube/Controller/Admin/Order/OrderController.php function exportShipping()内のカラムのループ内に判定処理を追加して、
format()メソッドで整形しました。

                        // CSV出力項目と合致するデータを取得.
                        foreach ($Csvs as $Csv) {
                            // 受注データを検索.
                            $ExportCsvRow->setData($csvService->getData($Csv, $Order));
                            if ($ExportCsvRow->isDataNull()) {
                                // 配送情報を検索.
                                $ExportCsvRow->setData($csvService->getData($Csv, $Shipping));
                            }
                            if ($ExportCsvRow->isDataNull()) {
                                // 配送商品を検索.
                                $ExportCsvRow->setData($csvService->getData($Csv, $ShipmentItem));
                            }
                            if ($ExportCsvRow->isDataNull()) {
                                // 配送商品を検索.
                                $ExportCsvRow->setData($csvService->getData($Csv, $BaseInfo));
                            }

                            if ($Csv->getDispName() == 'お届け希望日' && $Shipping->getShippingDeliveryDate()) {
                            	$ExportCsvRow->setData($Shipping->getShippingDeliveryDate()->format('Y/m/d'));
                            }
                        }


ループの中にローカルフックポイントがある事から
プラグインで整形する事も出来そうな気はします。


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

統計情報

総メンバー数は40,622名です
総投稿数は90,024件です

投稿数ランキング

1
seasoft
7332
2
AMUAMU
2712
3
nanasess
1878
4
468
1569
5
yuh
1568
6
red
1212
7
umebius
1083
8
fukap
907
9
tsuji
837
10
shutta
827
11 ramrun 789
12
tao_s
691
13 karin 656
14
h_tanaka
651
15 sumida 641
16
homan
633
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© LOCKON CO.,LTD. All Rights Reserved.