* ログイン   * ユーザー登録 * FAQ    * 検索
現在時刻 - 2010年9月07日(火) 12:26 am

All times are UTC + 9 hours




返信する
ユーザー名:
件名:
メッセージ本文:
ここにメッセージを入力してください。60000 字まで入力できます。 

スマイリー
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
フォントサイズ:
フォントカラー
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: ON
BBCodeを無効にする
スマイリーを無効にする
URLを自動的にパースしない
投稿の確認
不正プログラムによる投稿を防ぐため、画像認証コードの入力を強制しています。認証コードは下の画像に表示されています。画像が表示されない、もしくは視覚的に問題がある場合は管理人に連絡してください。
画像認証コード:
表示されたコードを正確に入力してください。各文字は大文字・小文字の区別があり、数字の 0 はありません。
   

トピックのレビュー - 支払い金額に応じて代引き手数料を無料にする方法
作成者 メッセージ
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
もう遅いかもしれませんが

http://zen-cart.jp/modules/archives/575

このモジュールですが、このページの「旧モジュールサイト」ってリンクをクリックしたら
http://zen-cart.jp/pukiwiki/475.html
へ行き、
代金連動手数料計算代引モジュール
にありましたよ
投稿記事 Posted: 2008年12月06日(土) 12:02 am
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
連日の徹夜で風邪を引いてしまい、返信が遅れてすみません。
一度試して、報告します。
投稿記事 Posted: 2008年10月19日(日) 7:12 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
もしかしたらモジュールの表示順を替えるだけでいけるかもしれませんよ。

小計
代引き手数料
送料
合計
投稿記事 Posted: 2008年10月17日(金) 6:36 am
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
皆様、上記修正ではお世話になりました。色々とテストをしてみたのですが、どうも計算が合いません。

私の所では、購入金額10499円以下は代引き手数料315円、購入金額10500円以上は代引き手数料0円、としているのですが、上記の修正をしてモジュール設定で以下のような設定をしました。

ヤマト運輸の代金引換(ヤマトコレクト)用の代引き手数料
10500:315,9999999:0

その結果が以下のものです。

小計: 10,479円
ヤマト運輸(宅急便) (1 x 3kg) (宅急便): 630円
代金引換手数料: 0円
合計: 11,109円

原因は、代引き手数料の判定の際に送料も加算した「合計」で判定しているためのようです。こちらでは、送料を除いた小計で代引き手数料を判定していますので、ot_cod_fee.phpを以下のように修正しました。

61c61
['iso_code_2']) {
< if ($cod_zones[$i] >= $order->info['subtotal']) { //小計から算出
---
> if ($cod_zones[$i] >= $order->info['total']) { //注文合

また、モジュールの編集で以下のように設定しました。

ヤマト運輸の代金引換(ヤマトコレクト)用の代引き手数料
10499:315,9999999:0

この修正で、こちらでテストする限りでは、問題なく動作しています。

この修正でよろしいのでしょうか?もしも駄目ならアドバイスをお願いします。<m(__)m>

P.S.
koto-tool様 アドバイスありがとうございます。テストで掲示板を見ていなかったため返信が遅れてすみません。こちらの作業が終わりましたら、アドバイスの件をためさせていただきます。
投稿記事 Posted: 2008年10月17日(金) 1:14 am
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
追記です。

送料は元々管理画面の配送モジュールから無料にする設定ありますよね。
投稿記事 Posted: 2008年10月08日(水) 2:14 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
僕は手数料を無料にしないので試していませんが、代引き手数料設定の所で単純に

10500:315,99999999:0で設定してみたらどうなるでしょう?

それか『少額決済手数料』を名前を変えるだけで対応できるかも。
投稿記事 Posted: 2008年10月08日(水) 2:12 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
kimono様、mmochi様、ゲスト様

返信が遅れてすみませんでした。

ズバリmmochi様のご指摘どおり、二重に定義していました。お騒がせしました。<m(__)m>

大元のDIFFファイルから取り込むときに、「!」が表示された相違部分以外も取り込んでいました。そのため、問題のMODULE_ORDER_TOTAL_COD_TAX_CLASSが二重に定義していたようです。以下の部分が問題の部分ですが、この行はオリジナルのot_cod_fee.phpの中に無かったため、勘違いして取り込んでいました。

$db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Tax Class', 'MODULE_ORDER_TOTAL_COD_TAX_CLASS', '0', 'Use the following tax class on the COD fee.', '6', '25', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())");

皆様、お騒がせ致しました。無事解決いたしました。この場をお借りしお礼申し上げます。これからテストに入り、また問題点があればこの掲示板を利用させていただきます。その際には、またご指導の程宜しくお願い致します。 <m(__)m>

最後に、このモジュールを修正して「代引き無料の設定」をされる方は、くれぐれも差分ファイルの取り込みにご注意ください。
投稿記事 Posted: 2008年10月07日(火) 10:50 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
configurationテーブルのconfiguration_keyカラムはユニークインデックスが
張られているので、このカラムの値が重複するレコードをinsertするような
クエリはエラーになります。

アンインストールはできるようなので、
configuration_keyカラムにMODULE_ORDER_TOTAL_COD_TAX_CLASSを
複数回insertするようなクエリがot_cod_feeのinstallメソッド内に
書かれているのだと思います。
投稿記事 Posted: 2008年10月07日(火) 1:05 am
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
mmochiです。

引用:
1062 Duplicate entry 'MODULE_ORDER_TOTAL_COD_TAX_CLASS' for key 2

MODULE_ORDER_TOTAL_COD_TAX_CLASSが重複しているよと言われてます。

手を加える前のファイルに戻して、「アンインストール」。
その後に手を加えたファイルをアップロードし「インストール」。
これでうまくいかないのですか?

これでだめな場合はkimonoさんの指摘にもありますが
1.アップしたのが手を加える前のファイルだと思っているが実は違ってた。
2.手を加えたファイルでMODULE_ORDER_TOTAL_COD_TAX_CLASSが複数回インサートされるように書いてた。
3.手を加えたファイル以外でMODULE_ORDER_TOTAL_COD_TAX_CLASSが定義されている。
のどれかということになると思います。

エラーメッセージでは日本語で表示されてますが、diffを見ると該当部分は英語表記ですね。日本語と英語2つ重複して定義してそうですがどうでしょうか。

エラー表示
引用:
1062 Duplicate entry 'MODULE_ORDER_TOTAL_COD_TAX_CLASS' for key 2
in:
[insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('税種別', 'MODULE_ORDER_TOTAL_COD_TAX_CLASS', '0', '代金引換手数料に適用される税種別', '6', '25', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())]
If you were entering information, press the BACK button in your browser and re-check the information you had entered to be sure you left no blank fields.

diff
引用:
< $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Tax Class', 'MODULE_ORDER_TOTAL_COD_TAX_CLASS', '0', 'Use the following tax class on the COD fee.', '6', '25', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())");
---
投稿記事 Posted: 2008年10月07日(火) 12:38 am
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
ん?
入れ替えで問題なくなるのでしょうかね?
それなら簡単です。
問題なくなった状態でアンインストール。その後、新しく作ったやつをアップロード。そしてインストールです。
それで、問題あるときは、入れ替えるファイルのどこか間違ってると思いますw

ちなみに、そのまま記載とかはしてないですよね?
ちゃんとその箇所をそのように書き換えてますよね?^^;
投稿記事 Posted: 2008年10月06日(月) 8:36 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
kimono様

げげ、やはりそうでしたか。

実は、お察しの通り、モジュールを削除しないままPHPのファイルを差し替えてしまいました。

その後、何度モジュールのインストール・アンインストールを繰り返しても同じ状況が起こります。

そのため、オリジナルのPHPファイルに戻すと、問題なくオリジナルのPHPファイルがインストールされます。

しかし、次に今回修正したPHPファイルをインストールすると、やはり同じメッセージが出てきます。

kimono様、どうすればいいでしょうか?

現在のサーバにはphpmyadminもインストールしていますので、どういう手順でやればいいか、ご教授願えないでしょうか?

宜しくお願いします。 <m(__)m>
投稿記事 Posted: 2008年10月06日(月) 8:27 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
これって、アンインストールしないで削除したりすると起こるような現象のような気がします。
管理画面から一度モジュールをアンインストールしてから削除されましたでしょうか?
その順番を間違うと結構面倒です^^;
とりあえず、アンインストールして、それから削除です。
どうしても出来ない場合はphpmyadminなどで弄るしかないかもです^^;
投稿記事 Posted: 2008年10月06日(月) 5:39 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
kimono様

回答頂きありがとうございました。早速ソースを修正したのですが、この修正したot_cod_feeを読み込ますために、インストールされているot_cod_feeをアンインストールし、再度ot_cod_feeをインストールしました。すると画面が変わって、以下のようなメッセージが表示されます。恥ずかしながら英語がさっぱりなので、何を言っているのか分かりません。どのようにすれば解消されるのか、教えていただけないでしょうか?参考までに、私が修正を加えた物とオリジナルのファイルとの差分を最下部に載せます。宜しくお願いします。<m(__)m>

1062 Duplicate entry 'MODULE_ORDER_TOTAL_COD_TAX_CLASS' for key 2
in:
[insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('税種別', 'MODULE_ORDER_TOTAL_COD_TAX_CLASS', '0', '代金引換手数料に適用される税種別', '6', '25', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())]
If you were entering information, press the BACK button in your browser and re-check the information you had entered to be sure you left no blank fields.


【修正を加えた部分】

includes/modules/order_total/ot_cod_fee.php

diff ot_cod_fee.php ot_cod_fee.php.org の結果

61,62c61
< //if ($cod_zones[$i] == $order->delivery['country']['iso_code_2']) {
< if ($cod_zones[$i] >= $order->info['total']) { //注文合計から算出
---
> if ($cod_zones[$i] == $order->delivery['country']['iso_code_2']) {
156,162c155,157
< // $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('佐川急便の代金引換(e-コレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_SAGAWA', '00:500', 'e-コレクトの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '13', now())");
< // $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('ヤマト運輸の代金引換(ヤマトコレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_YAMATO', '00:400', 'ヤマトコレクトの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '14', now())");
< // $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('日本通運の代金引換(ペリカン集金サービス)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_NITTSU', '00:400', 'ペリカン集金サービスの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '15', now())");
< $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('佐川急便の代金引換(e-コレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_SAGAWA', '00:400', '手数料を「代金引換額:手数料,代金引換額:手数料,...」という書式で入力してください。代金引換額による手数料を無効にする場合は00:手数料で記してください', '6', '13', now())");
< $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('ヤマト運輸の代金引換(ヤマトコレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_YAMATO', '10000:315,30000:420,100000:630,300000:1050', '手数料を「代金引換額:手数料,代金引換額:手数料,...」という書式で入力してください。代金引換額による手数料を無効にする場合は00:手数料で記してください', '6', '14', now())");
< $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('日本通運の代金引換(ペリカン集金サービス)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_NITTSU', '00:400', '手数料を「代金引換額:手数料,代金引換額:手数料,...」という書式で入力してください。代金引換額による手数料を無効にする場合は00:手数料で記してください', '6', '15', now())");
< $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) values ('Tax Class', 'MODULE_ORDER_TOTAL_COD_TAX_CLASS', '0', 'Use the following tax class on the COD fee.', '6', '25', 'zen_get_tax_class_title', 'zen_cfg_pull_down_tax_classes(', now())");
---
> $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('佐川急便の代金引換(e-コレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_SAGAWA', '00:500', 'e-コレクトの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '13', now())");
> $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('ヤマト運輸の代金引換(ヤマトコレクト)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_YAMATO', '00:400', 'ヤマトコレクトの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '14', now())");
> $db->Execute("insert into " . TABLE_CONFIGURATION . " (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('日本通運の代金引換(ペリカン集金サービス)用の代引き手数料', 'MODULE_ORDER_TOTAL_COD_FEE_NITTSU', '00:400', 'ペリカン集金サービスの手数料を「国コード:手数料,国コード:手数料,...」という書式で入力してください。国コードがわかならい場合、またはすべて統一する場合は00:手数料で記してください', '6', '15', now())");
投稿記事 Posted: 2008年10月06日(月) 3:12 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
いえ、モジュールは使ってません。
記事に書いてあるように元からあるものをカスタマイズしているだけです :wink:
投稿記事 Posted: 2008年10月06日(月) 12:47 pm
  記事の件名:  Re: 支払い金額に応じて代引き手数料を無料にする方法  引用付きで返信する
回答ありがとうございます。

kimonoさんが利用しているモジュールは以下の物でしょうか?

http://zen-cart.jp/modules/archives/575

このモジュールのダウンロード先ですが、リンクがおかしくてダウンロードできないんです。

どこかに移転されたのでしょうか?

よろしければ、URLを教えてください。

P.S.掲示板を掃除してくださり、ありがとうございました。<m(__)m>
投稿記事 Posted: 2008年10月06日(月) 11:41 am

All times are UTC + 9 hours


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[4人]

ページ移動:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Translated to Japanese principally by ocean