2011-12-09 15 views
5

Magento Community v1.5.1.0では、どのように開始(または次の)顧客IDを設定するのですか?デフォルトでは、最初の顧客IDは1です。店舗を本番環境に移行する前にテストデータをクリアした後、顧客ID 300000から開始する必要があります。Magentoで別の顧客IDを使用するにはどうすればいいですか?

注文、請求書、出荷、クレジットメモIDは、eav_entity_storeの適切な値を更新することで変更できますが、(情報hereとは異なり)そこには顧客IDの増分入力はありません。

私はeav_entity_storeと同じことを達成するが、ダイスはない "顧客"関連テーブルをスキャンしてしまい、Google-Fuも失敗しました。

答えて

8

私はマゼンタでは不可能だと思っていましたが、それはMySqlのクエリによって行われます。手動で以下のクエリを実行し、ユーザIDが300001

ALTER TABLE customer_entity AUTO_INCREMENT = 300001; 
+0

ああ...そこに見えるとは思わなかった。これは素晴らしいテスト...ありがとう! –

4

から開始されますがありeav_entity_storeで顧客のための増分はありませんが、1つは、おそらくモジュールのスクリプトをインストールするには、作成することができます...

$customerType = Mage::getModel('eav/entity_type')->loadByCode('customer'); 
Mage::getModel('eav/entity_store') 

    // customer increments are not per store so store_id is 0 
    ->loadByEntityStore($customerType->getId(), 0) 

    // increments are varchar, not ints 
    ->setIncrementPrefix('3') 
    ->setIncrementLastId('300000') 
    ->save(); 
+0

ありがとうclockworkgeek!私は今あなたのMagentoスキルをしばらく使っています...あなたがそこにいるとうれしい!私はSankarの提案を使用してcustomer_entityのAUTO_INCREMENTを直接更新しました。私はいくつかの新しい顧客を作成し、そのIDはチェックアウトしています。私はこれが、最終的に手動のMySQLではなくコードで同じことをすると仮定していますか? (インクリメント接頭辞の追加を除いて) –

+0

2つの方法は全く同じではありません。 Sankarは数字の 'entity_id'(' $ customer-> getId() ')フィールドに影響しますが、私のものはテキストの' increment_id'( '$ customer-> getIncrementId()')フィールドに影響します。最も便利な方法を使用してください。 – clockworkgeek

関連する問題