バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 配送先を会員登録住所以外にすると反映されない

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
poporin
投稿日時: 2013/6/21 15:43
対応状況: −−−
常連
登録日: 2012/6/6
居住地:
投稿: 68
配送先を会員登録住所以外にすると反映されない
どうしても行き詰ってしまい質問させて頂きました。
ECCUBE2.12.4を利用しております。

テスト注文で、注文をすすめて行き/deliv.phpでの配送先を
指定するところで会員登録住所を指定して注文をすると
受注の管理画面上でもお届け先が正常に反映されます。

しかし、追加登録住所を選んで注文をすると、お届け先に
住所が反映されず、登録更新をしようとすると下記のエラーがでてしまいます。

▼▼▼ デバッグ情報ここから ▼▼▼
http://www.*****.com/admin/order/edit.php?


USER_AGENT: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36

Fatal error(E_USER_ERROR): DB処理でエラーが発生しました。
SQL: [INSERT INTO dtb_shipment_item(product_class_id,product_code,product_name,classcategory_name1,price,quantity,order_id,shipping_id,classcategory_name2) SELECT $1,$2,$3,$4,$5,$6,$7,$8,$9]
PlaceHolder: [array (
0 => '161',
1 => '2013001',
2 => '商品A',
3 => 'サックス',
4 => '2500',
5 => '1',
6 => '32',
7 => NULL,
8 => NULL,
)]
MDB2 Error: null value violates not-null constraint
_doQuery: [Error message: Could not execute statement]
[Last executed query: EXECUTE mdb2_statement_pgsql_36b3fe5c82ea61e49ab6eb238bd1bd178fa10b6295 ('161', '2013001', '商品A', 'サックス', '2500', '1', '32', NULL, NULL)]
[Native message: ERROR: null value in column "shipping_id" violates not-null constraint]
on [/home/*****-com/data/class/SC_Query.php(1007)]
/home/*****-com/public_html/admin/order/edit.php(34): LC_Page_Admin_Order_Edit_Ex->process
/home/*****-com/data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Edit_Ex.php(69): LC_Page_Admin_Order_Edit->process
/home/*****-com/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(110): LC_Page_Admin_Order_Edit->action
/home/*****-com/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(176): LC_Page_Admin_Order_Edit->doRegister
/home/*****-com/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(763): SC_Helper_Purchase->registerShipmentItem
/home/*****-com/data/class/helper/SC_Helper_Purchase.php(805): SC_Query->insert
/home/*****-com/data/class/SC_Query.php(530): SC_Query->query
/home/*****-com/data/class/SC_Query.php(814): SC_Query->execute
/home/*****-com/data/class/SC_Query.php(970): SC_Query->error
/home/*****-com/data/class/SC_Query.php(1007): trigger_error
▲▲▲ デバッグ情報ここまで ▲▲▲


関係あるかはわかりませんが
決済モジュールはペイジェントをいれており、
正常に動作しております。


どうすると正常に反映されるようになりますでしょうか?
数時間にらめっこ状態で、助けてください・・・(涙)


EC-CUBEバージョン 2.12.4
PHPバージョン PHP 5.3.3
DBバージョン PostgreSQL 8.4.13
サーバー wadax
Machy
投稿日時: 2013/6/21 17:44
対応状況: −−−
常連
登録日: 2013/6/17
居住地:
投稿: 39
Re: 配送先を会員登録住所以外にすると反映されない
poporin様

こんにちは

以下のエラー文に着目してみてください。

引用:

[Last executed query: EXECUTE mdb2_statement_pgsql_36b3fe5c82ea61e49ab6eb238bd1bd178fa10b6295 ('161', '2013001', '商品A', 'サックス', '2500', '1', '32', NULL, NULL)]
[Native message: ERROR: null value in column "shipping_id" violates not-null constraint]


これによると'shipping_id'はDBにてnot null 設定がされているようです。
どこかの処理でshipping_idの値が落ちてしまっていると考えられると思います。

引用:

/home/*****-com/data/class/pages/admin/order/LC_Page_Admin_Order_Edit.php(763): SC_Helper_Purchase->registerShipmentItem


問題のクエリが投げられている部分は上記のメソッドと考えられるため、一度ソースを確認していただけると何か分かるかと思います。
poporin
投稿日時: 2013/6/21 20:46
対応状況: −−−
常連
登録日: 2012/6/6
居住地:
投稿: 68
Re: 配送先を会員登録住所以外にすると反映されない
Machy様

お返事ありがとうございます。

とても分かりやすくご説明を頂いていると思いますが

知識不足の為、まだまだ理解ができておりませんが・・・。

ご指摘のところを確認してみました。

shipping_idのnot nullに関しましては初期からチェックが入って
いるようです。プライマリーキーが設定されているので変更も
できませんでした。

LC_Page_Admin_Order_Edit.php(763)

上記ファイルの763行目?付近をみてみると特に
カスタマイズはしておりませんでした。

2.12.4の初期のファイルに差し替えても同じ症状が起きるのが
確認できました。

現状のままですと会員登録をしないお客様がお届け先を別に指定した
場合に注文はできても管理画面に住所がでないので、大変なことになって
しまいます。


LC_Page_Admin_Order_Edit.phpを初期のファイルに差し替えてもダメということは
他の部分のファイルもからんでいるということになりますでしょうか?

切り分けとしてはどのように行うと良いでしょうか?

どうぞよろしくお願い致します。

poporin
投稿日時: 2013/6/22 8:49
対応状況: −−−
常連
登録日: 2012/6/6
居住地:
投稿: 68
Re: 配送先を会員登録住所以外にすると反映されない
進展がありましたのでご報告させていただきたいと思います。

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=8023&forum=11&viewmode=flat&order=ASC&start=20

上記記事を見つけました。

その中での下記コメント部分が自分にあてはまると思い調べました。
引用:

弊社での対策として、
EC-CUBE2.11.5:data/Smarty/templates/admin/order/edit.tpl
の内容を
paygent側(に差し替えられた管理画面):data/downloads/module/mdl_paygent/templates/admin/order_edit.tpl
にマージしたところ現象は解消されました。
※EC-CUBE2.11.5ではforeachを使用するように改修されていたのに、pagentではsectionを使用しているままでした。



それぞれのファイルは2.12.4なので、チェンジセットは適用されておりました。
ペイジェント決済のファイルをみると、sectionが使われており
foreachが使ってありませんでしたので、edit.tplをもとに
比較して、必要と思われるところをコピペ、コピペを
したところ、正常な動作が確認できました。

ペイジェント決済を使われている方は参考になる記事だったと思います。

ペイジェント決済のモジュールも最新版が早くでて欲しいところですね。

とりあえず解決??ということにさせていただきたいと思います。

Machy様のお返事があったからこそ、調べられた記事でした。

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

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


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,201名です
総投稿数は110,047件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1650
8
red
1570
9
mcontact
1299
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.