I am using this module to import data from zencart. I recognize that this module was written for OSCommerce, but the stores share common core tables and other people have had success using this module with zencart.
My problem is that my zencart database tables are currently prefixed with zen_. I configured osCommerce Profile correctly enough to be authenticated by the database, but upon trying ‘Run Profile’ I am getting the message
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'brass5_brasslinepro.languages' doesnt exist
I have unsuccessfully tried with and without setting the ‘prefix’ option to ‘zen_’. It appears to me that the prefix field is not currently being referenced by the osCommerce Migration Tool (Mage_Oscommerce v1.0.19700). I have verified that the table ‘brass5_brasslinepro.zen_languages’ exists.
I just edited my original database sql file to remove the ‘zen_’ prefixes and imported the file into a new database. Mage_Oscommerce found the language table in this new database.
So it does appear that the prefix field is non-operational in Mage_Oscommerce v1.0.19700.
I have no idea what you responded to your last post there, refreind - but i would appreciate if you can provide us step by step instructions on how to came to resolve this issue! I have spent hours trying to look for an answer , but in vain . All i see are comments about changing some table name of I dont know , the source or the destination to removing prefixes - where infact I dont even notice any prefixes in the first place :s
I am having an identical problem with the same error, without db prefixes.
We are using the most up-to-date versions of all Magento files, php5.6, and mysql 4.
There is no answer to this question, on the internet, anywhere. We feel that the program may be directed at the wrong database to look for the languages table.
I can also confirm this error. I’ve got two databases running, which are accessed by one Mysql user. DB1 is my magento database, db2 contains the oscommerce-data which should be imported. However, the error-message seems to say that the importer is currently looking for a certain table in db1 while it should really look at db2. Also looking forward to a solution here.
any news on that? same error here..
easiest solution is to install the magemto tables with prefix and then add the osc tables in the same database. then there is no conflict and it works fine. it seems that the data you can save is totaly needless.
Well, there is a solution to go forward from that .languages problem - goto your PHP/MYSql database for oscommerce, goto the lanuages table of it, export that table in SQL query, and copy it in the magento mysql database. The .languages error will NOT appear anymore.
But I have gone as far as that, just to discover yet another problem, ie - tax_id not found in the field list. Looked around everywhere for a solution on this, but nothing yet. Everyone who is seeing this message, please keep us posted with any solutions or workarounds for this, I bet we will all appreciate it.
I am not certain, but it crossed my mind, is there a SPECIFIC version of OSCOMMERCE that would work flawlessly? Is there a way to covert data from oscommerce such as Excel CMV, the same format that we can export over to Magento? I personally have over 2000 entries to make and its gonna be a pain if I had to do them all manually.
Keep us posted, it only takes a minute of your time.
I get it allmost working thx to all your comments above…
Method
- Duplicate the [OSCDATABASE].configuration table to [MAGENTODATABASE].configuration
- Duplicate the [OSCDATABASE].languages table to [MAGENTODATABASE].languages
- Duplicate the WHOLE [OSCDATABASE] to [MAGENTODATABASE] adding a prefix like OSC_ to all tables
- Running the profil with OSC_ prefix
What works
- Requierements cheks ok
- Importing Categories - 100%
What did not work
- Products - 0%
- Customers - 0%
- Orders -(probably 0% too)
I will continue searching, but if anyone has a hint, would be great to help and get this “marvellous” tool working
After a few hours of debugging I’ve found what I think is the problem.
It is actually Magento and not the plugin.
In app/code/core/Mage/Core/Model/Resource.php the function getConnection is used by the plugin to query the import database (the one you register in the import interface). However, and I still don’t understand why, those three lines of code prevent the import database to be used:
$origName = $connConfig->getParent()->getName();
if (isset($this->_connections[$origName])) { return $this->_connections[$origName]; }
I know what they do, but I don’t understand why they are there. Basically they find out the name of the parent of the connection object which is the same than the one already register in the registry for the normal read and write. Then they check if the name is already declare in the array of connections for the current object. Because it is already declared it returns the already existing connections and not the new one for importing.
Anyway if you comment out the 3 lines of the “if”, you can do the import then remove the comments to make sure that the shop should work as programmed by Varien.
Benjamin