1

I'm trying to add values for each store using an configuration setup script but for some reason the script runs but doesn't set any values and I'm running out of ideas why??

Here's my config scrip

$installer = $this;
$this->startSetup();
$this->setConfigData(' modulename/order/prefix/', 'A', 'stores', 1);
$this->endSetup();

Here's my system.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
 <sections>
 <namespace_modulename translate="label" module="namespace_modulename">
 <label>Module Name</label>
 <tab>sales</tab>
 <frontend_type>text</frontend_type>
 <sort_order>100</sort_order>
 <show_in_default>1</show_in_default>
 <show_in_website>1</show_in_website>
 <show_in_store>1</show_in_store>
 <groups>
 <order translate="label" module="namespace_modulename">
 <label>Label</label>
 <frontend_type>text</frontend_type>
 <sort_order>10</sort_order>
 <show_in_default>1</show_in_default>
 <show_in_website>1</show_in_website>
 <show_in_store>1</show_in_store>
 <fields>
 <prefix translate="label comment">
 <label>Text</label>
 <frontend_type>text</frontend_type>
 <sort_order>10</sort_order>
 <show_in_default>1</show_in_default>
 <show_in_website>1</show_in_website>
 <show_in_store>1</show_in_store>
 </prefix>
 <padding_length translate="label comment">
 <label>Numeric</label>
 <frontend_type>text</frontend_type>
 <sort_order>40</sort_order>
 <show_in_default>1</show_in_default>
 <show_in_website>1</show_in_website>
 <show_in_store>1</show_in_store>
 </padding_length>
 </fields>
 </order>
 </groups>
 </namespace_modulename>
 </sections>
</config>

my config.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
 <modules>
 <Namespace_Modulename>
 <version>1.0.1</version>
 </Namespace_Modulename>
 </modules>
 <global>
 <models>
 <namespace_customordernumber>
 <class>Namespace_Modulename_Model</class>
 </namespace_customordernumber>
 <eav>
 <rewrite>
 <entity_type>Namespace_Modulename_Model_Eav_Entity_Type</entity_type>
 </rewrite>
 </eav>
 </models>
 <resources>
 <customerordernumber>
 <setup>
 <module>Namespace_Modulename</module>
 <class>Namespace_Modulename_Model_Resource_Setup</class>
 </setup>
 <connection>
 <use>core_setup</use>
 </connection>
 </customerordernumber>
 <customerordernumber_write>
 <connection>
 <use>core_write</use>
 </connection>
 </customerordernumber_write>
 <customerordernumber_read>
 <connection>
 <use>core_read</use>
 </connection>
 </customerordernumber_read>
 </resources>
 <helpers>
 <namespace_customordernumber>
 <class>Namespace_Modulename_Helper</class>
 </namespace_customordernumber>
 </helpers>
 </global>
</config>

I have also added a Model/Resource/Setup.php class

asked Sep 24, 2015 at 11:42

1 Answer 1

3

Let's start from the beginning:

Namespace_Modulename/etc/config.xml:

<?xml version="1.0" encoding="uft-8"?>
<config>
 <modules>
 <Namespace_Modulename>
 <!-- check core_resource table, make sure the version there either doesn't exist, or is lower than 1.0.1 -->
 <version>1.0.1</version>
 </Namespace_Modulename>
 </modules>
 ...
 <global>
 <models>
 <namespace_modulename>
 <class>Namespace_Modulename_Model</class>
 </namespace_modulename>
 </models>
 <resources>
 <!-- I think the _setup suffix is important -->
 <customerordernumber_setup>
 <setup>
 <module>Namespace_Modulename</module>
 <!-- class should eventually inherit from Mage_Core_Model_Resource_Setup -->
 <class>Namespace_Modulename_Model_Resource_Setup</class>
 </setup>
 </customerordernumber_setup>
 </resources>
 </global>
 ...
</config>

Obviously, the resource class must exists; Namespace_Modulename/Model/Resource/Setup.php:

class Namespace_Modulename_Model_Resource_Setup extends Mage_Core_Model_Resource_Setup
{
 ...

And the upgrade script itself, Namespace_Modulename/sql/customerordernumber_setup/upgrade-1.0.0-1.0.1.php:

$installer = $this;
$this->startSetup();
// your path is wrong: no namespace prefix, starts with a space and has a trailing slash
// $this->setConfigData(' modulename/order/prefix/', 'A', 'stores', 1);
$this->setConfigData('namespace_modulename/order/prefix', 'A', 'stores', 1);
$this->endSetup();
answered Sep 24, 2015 at 12:46
0

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.