バグ報告 > 管理機能 > おすすめ商品のCSV download |
管理機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kazzzzzx |
投稿日時: 2009/3/4 13:57
対応状況: −−−
|
新米 登録日: 2008/10/18 居住地: 投稿: 2 |
Re: おすすめ商品のCSV download おすすめ商品のCSV download が出来ないという同様の現象で困っておりましたところ、参考になる情報をご提供いただきまして、ありがとうとざいます。
netwiz様の情報通り、以下のファイルを修正してみたのですが、副作用と言いますか、別の不具合が発生いたしましたので、ご参考までにご報告させていただきます。 [修正ファイル] data/class/helper/SC_Helper_CSV.php [修正箇所] ※netwiz様の投稿より「追加ここから」〜「追加ここまで」 ●検証 まず、EC-CUBEをインストールしたての状態で、商品マスターからCSVダウンロードを行ないました。 この際「おすすめ商品(1) おすすめコメント(1)」が空欄になる不具合が発生します。 これを回避するため、data/class/helper/SC_Helper_CSV.phpを修正し、再びCSVダウンロードを実行します。 これで「おすすめ商品(1) おすすめコメント(1)」の欄にはおすすめ商品のIDである『1』とコメントの『お口直しに。』が挿入され先述の不具合は解消されます。 次に、アイスクリームの「編集」から関連商品として「おなべ」を登録します。 再びCSVダウンロードを実行します。 ※この際のCSVファイルを確認すると「おすすめ商品(1)〜(6)」と 「おすすめコメント(1)〜(6)」の項目が既におかしいようです。 これに起因する現象かと思われますが、 この後、例えばアイスクリームの規格から、一番下の「バニラ、L」のチェックを外し、削除します。 次に、再びアイスクリームの規格から、一番下の「バニラ、L」のチェックをONにし、登録しようとした際に以下のエラーが発生します。 INSERT INTO dtb_products_class(product_id,classcategory_id1,classcategory_id2,product_class_id,product_code,stock,stock_unlimited,price01,price02,creator_id,create_date,update_date) VALUES (?,?,?,?,?,?,?,?,?,?,Now(),Now()) DB Error: already exists INSERT INTO dtb_products_class(product_id,classcategory_id1,classcategory_id2,product_class_id,product_code,stock,stock_unlimited,price01,price02,creator_id,create_date,update_date) VALUES ('1','1','4','9','ice-01',NULL,'1','150','120','2',Now(),Now()) [nativecode=1062 ** Duplicate entry '9' for key 1] /var/www/vhosts/xxxxxMydomain.com/httpdocs/admin/products/product_class.php 34:LC_Page_Admin_Products_ProductClass_Ex->process /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/class_extends/page_extends/admin/products/LC_Page_Admin_Products_ProductClass_Ex.php 56:LC_Page_Admin_Products_ProductClass->process /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php 175:LC_Page_Admin_Products_ProductClass->lfInsertProductClass /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/class/pages/admin/products/LC_Page_Admin_Products_ProductClass.php 362:SC_Query->insert /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/class/SC_Query.php 271:SC_DbConn->query /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/class/SC_DbConn.php 78:DB_common->query /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB/common.php 1162:DB_common->execute /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB/common.php 959:DB_mysql->simpleQuery /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB/mysql.php 324:DB_mysql->mysqlRaiseError /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB/mysql.php 894:DB_common->raiseError /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB/common.php 1853:PEAR->raiseError /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/PEAR.php 557:DB_Error->DB_Error /var/www/vhosts/xxxxxMydomain.com/httpdocs/data/module/DB.php 893:PEAR_Error->PEAR_Error ---------------------------------------------------------- 原因を特定して、プログラムを修正できるほどのスキルがございませんため、検証のみで恐縮ではございますが、どなたか回避策をご教示いただけますと幸いに存じます。 ----------------------------- EC-CUBEバージョン 2.3.3 PHPバージョン PHP 5.1.6 DBバージョン MySQL 5.0.22 |
homan |
投稿日時: 2009/2/16 15:16
対応状況: −−−
|
仙人 登録日: 2007/7/2 居住地: 宮崎県宮崎市 投稿: 633 |
Re: おすすめ商品のCSV download 一応tracのチケットに載せました。
http://svn.ec-cube.net/open_trac/ticket/420
|
netwiz |
投稿日時: 2008/10/21 1:47
対応状況: −−−
|
常連 登録日: 2008/9/9 居住地: 投稿: 47 |
Re: おすすめ商品のCSV download dtb_csv
insert into dtb_csv (csv_id,col,disp_name,rank,create_date,update_date) values (1, '(SELECT recommend_product_id FROM dtb_recommend_products WHERE rdcls.product_id = dtb_recommend_products.product_id ORDER BY update_date DESC limit 1) AS recommend_product_id1', 'おすすめ商品(1)',45,now(),now()); となっていて、 '(SELECT recommend_product_id FROM dtb_recommend_products WHERE rdcls.product_id = dtb_recommend_products.product_id ORDER BY update_date DESC limit 1) AS recommend_product_id1', というメンバー名と、 LC_Page_Admin_Products_UploadCSV.php の function lfInitParam() { .................................................... for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) { $this->objFormParam->addParam("おすすめ商品($cnt)", "recommend_product_id$cnt", INT_LEN, "n", array("MAX_LENGTH_CHECK","NUM_CHECK")); $this->objFormParam->addParam("詳細-サブコメント($cnt)", "recommend_comment$cnt", LTEXT_LEN, "KVa", array("SPTAB_CHECK","MAX_LENGTH_CHECK")); } .......................................... } recommend_product_id<n>, recommend_comment<n> のミスマッチと なっているのですが、トラブルチケットを発行すべきではないでしょうか? |
netwiz |
投稿日時: 2008/10/17 20:59
対応状況: −−−
|
常連 登録日: 2008/9/9 居住地: 投稿: 47 |
Re: おすすめ商品のCSV download 一応参考です。
helper/SC_Helper_CSV.php ............................... function lfGetProductsCSV($where, $option, $arrval, $arrOutputCols) { $objDb = new SC_Helper_DB_Ex(); $from = "vw_product_class AS prdcls"; $cols = SC_Utils_Ex::sfGetCommaList($arrOutputCols, true, array('category_id')); vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv 追加ここから $max = count($arrOutputCols); for ($i = 0; $i < $max; $i ++) { $pos = strpos($arrOutputCols[$i], "AS"); if ($pos > 0) { $d = trim(substr($arrOutputCols[$i], $pos+2)); $arrOutputCols[$i] = $d; } } ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 追加ここまで .............................................. |
netwiz |
投稿日時: 2008/10/2 1:23
対応状況: −−−
|
常連 登録日: 2008/9/9 居住地: 投稿: 47 |
Re: おすすめ商品のCSV download 自己レスですが、
(SELECT xxxx ) AS recommend_xx という出力しているのはいいのですが、 カラム名として、 (SELECT xxxx ) AS recommend_xx で絞っているのが問題ですね。 絞るべきカラム名は、recommend_xx であるべきです |
netwiz |
投稿日時: 2008/10/1 17:28
対応状況: −−−
|
常連 登録日: 2008/9/9 居住地: 投稿: 47 |
おすすめ商品のCSV download 2.3.0-rc1 の初期状態で、おすすめ商品のサンプル登録
されていますが、CSV に出力できませんでした。 何も登録されていない結果のCSVデータとなります |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |