Import OScommerce to Oxid does not work

Hello !

I am trying to import DB from OSCommerce to OXID with this module:
(http://www.oxid-esales.com/de/resour...ce-importieren)

I did it locally with Xampp. Both DB are on localhost, OSCommerce DB was imported with bigdump.

Module was configured and runned. It states no errors and the following notices are made, as if it was running properly, but the time is way to short (DB is about 250 MB):

Notices:

SETTING LANGUAGES
Done.

IMPORTING MANUFACTURERS
Done.

IMPORTING CATEGORIES
Get categories…
Rebuilding category tree…
Done.

IMPORTING PRODUCTS
Get Products…
Get Relations…
Get Reviews…
Handle variants(options)…
Extended info…
Done.

COPYING IMAGES
Handle manufacturer icons…
Handle category icons…
Handle product images…
Done.

IMPORT DONE!

After that Oxid has not changed.
I am using modified version of OSCommerce from
www.store-systems.de (B2C 2.3) ? Can this be the reason ?
Or has the DB of Oxid to be totally empty ??

Thanks for your help !! Mickey

Hey Mickey,

check out this enhanced version:
https://projects.oxidforge.org/projects/ptxtc2oxid/

You probably found this tutorial:
http://www.oxid-esales.com/en/resources/help-faq/eshop-manual/importing-os-commercext-commerce

Regards

Hello Marco,

many thanks but since I’ve tried it I get this error messages:

SETTING LANGUAGES
Done.

IMPORTING CUSTOMERS
importCustomers – Unknown column ‘c.customers_status’ in 'field list’
Done.

IMPORTING MANUFACTURERS
Done.

IMPORTING CATEGORIES
Get categories…
Unknown column ‘categories_status’ in 'field list’
Rebuilding category tree…
Done.

IMPORTING PRODUCTS
Get Products…
importProducts 1 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘),if (products_tax_class_id=2,products_price*(1+0.19),products_price)),2),
’ at line 30
Get Relations…
Get Reviews…
Handle variants(options)…
Extended info…
Done.

IMPORTING ORDERS

Fatal error: Call to undefined method ImportHandler::importOrders() in C:\Programme\xampp\htdocs\oxid_shop\osc2oxid.php on line 161


I checked functions.php: It tries to find c.customers_status and c.categories_status. but it is not in my DB.

Any Ideas ? Thank You

Hello Mickey,

hmm… probably two different problems. Lets try to fix this one first - which MySQL version do you run? You’ll find this information in phpMyAdmin.

Regards

Hi Marco,

I am using MySQL-Client-Version: 5.1.41. Is that the info you want ??

Hi,

nope, need the server version :wink:

Hi Marco,

Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1

MySQL-Client-Version: 5.1.41

running on Xampp 1.7.

Mickey

Nope. You’ll find this information in phpMyAdmin.

Regards

Hi Marco,

sorry.

I had the information from phpmyadmin, but obviously not the corrrect one:

Is that finally it ?:

* Server: localhost via TCP/IP
* Server Version: 5.1.41
* Protokoll-Version: 10
* Benutzer: root@localhost
* MySQL-Zeichensatz: UTF-8 Unicode (utf8)

Webserver

* Apache/2.2.14 (Win32) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l mod_autoindex_color PHP/5.3.1 mod_apreq2-20090110/2.7.1 mod_perl/2.0.4 Perl/v5.10.1
* MySQL-Client-Version: 5.1.41
* PHP Erweiterung: mysqli

Mickey

Hi Marco,

I have changed in _functions.php the importCategories()-method:
(I replaced if (categories_status … ) in if(1) because categories_status is unknown,
also customer_status) Then it will work !!!:

public function importCategories()
{
    $iLangCount = $this->_iLangCount;
    $sOcmDb = $this->_sOcmDb;
    $sShopId = $this->_sShopId;

    //insert first language categories
    //Avenger
    $oxDB=oxDb::getDb(true);
    $oRs = $oxDB->Execute("SET SESSION sql_mode=''");  //Reset strict mode
    $sQ = "REPLACE INTO oxcategories 
      (
      oxid, 
      oxshopid, 
      oxactive, 
      oxhidden, 
      oxparentid, 
      oxsort, 
      oxtitle, 
      oxthumb {$this->_sInclField})
      (
      SELECT 
      c.categories_id, 
      '$sShopId', 
      1, 
      if (1,0,1),  .... .....

…but still I get these errors, but I can’t find any of the mentioned parts in DB
(I don’t know what to look for …??)

SETTING LANGUAGES
Done.

IMPORTING CUSTOMERS
importCustomers – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘),
c.customers_vat_id,
a.entry_company,
c.customers_f’ at line 37
Done.

IMPORTING MANUFACTURERS
Done.

IMPORTING CATEGORIES
Get categories…

Rebuilding category tree…
Done.

IMPORTING PRODUCTS
Get Products…
importProducts 1 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘),if (products_tax_class_id=2,products_price*(1+0.19),products_price)),2),
’ at line 30
Get Relations…
Get Reviews…
Handle variants(options)…
Extended info…
Done.

IMPORTING ORDERS

Fatal error: Call to undefined method ImportHandler::importOrders() in C:\Programme\xampp\htdocs\oxid_test\osc2oxid_neu\osc2oxid.php on line 161

Why can’t he find method ImportHandler::importOrders() ??? I see it in sourcecode ??

Thanks Mickey …

[QUOTE=mickey_77;31402]Hello !

I am trying to import DB from OSCommerce to OXID with this module:
(http://www.oxid-esales.com/de/resour...ce-importieren)

I did it locally with Xampp. Both DB are on localhost, OSCommerce DB was imported with bigdump.

Module was configured and runned. It states no errors and the following notices are made, as if it was running properly, but the time is way to short (DB is about 250 MB):

Notices:

SETTING LANGUAGES
Done.

IMPORTING MANUFACTURERS
Done.

IMPORTING CATEGORIES
Get categories…
Rebuilding category tree…
Done.

IMPORTING PRODUCTS
Get Products…
Get Relations…
Get Reviews…
Handle variants(options)…
Extended info…
Done.

COPYING IMAGES
Handle manufacturer icons…
Handle category icons…
Handle product images…
Done.

IMPORT DONE!

After that Oxid has not changed.
I am using modified version of OSCommerce from
www.store-systems.de (B2C 2.3) ? Can this be the reason ?
Or has the DB of Oxid to be totally empty ??

Thanks for your help !! Mickey[/QUOTE]

For your database: You will need to get an export of your database from your server access panel phpmyadmin.

If you cannot do this I am struggling to know how you would get a copy to import.

You will need to change two files on your local server to accomodate the new dbase settings.

You will need to change inludes/configure.php and admin/includes/configure.php These bascially control your site (they will control which database to use)

With regards templates, you will need to install one of the template contributions to your Osc site I use STS Templates Which I find very usefull. If you need any more info on STS you will find you might get a much better response by posting your question in STS Forum

I hpoe that this helps?