Closed (won't fix)
Project:
e-Commerce
Version:
4.6.x-1.x-dev
Component:
-- other --
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
14 Jan 2006 at 11:37 UTC
Updated:
22 Sep 2006 at 04:37 UTC
The main ecommerce README.txt file in ecommerce/README.txt at step2 tells you to load ecommerce.mysql. However the table definitions in ecommerce/store/store.mysql are far more complete.
Could I suggest ecommerce/README.txt be updated to point to ecommerce/store/store.mysql and that store.mysql be updated to include the defintion of the table 'ec_tmp'.
Or perhaps it might be best to replace all the "core" ecommerce mysql files by a single file. Then all the seperate mysql files could removed and the corresponding README.txt files updated.
My apologies if this seems a negative comment about ecommerce, it really isn't meant to be. It is a really a godsend.
Comments
Comment #1
gordon commentedThank you for your feedback, but can you please tell me what is missing from the definitions So that they can be updated.
We are currently going through a large transition which has seen a large back port of the E-Commerce from CVS, which has had a lot of bug fixes and updates to make things better.
Thanks.
Comment #2
LeeMcL commentedI should mention that I first tried just installing ecommerce.mysql and then when I had problems (missing tables) I rolled back the database and tried again. First I thought that the definitions in ecommerce.mysql might be out of date and the versions in the individual sub-directories might be correct. So I tried loading them one at a time following the order of step 3 of the main README.txt file. When I still had problems I started comparing tables and found that for a lot of them there were three definitions.
1) ecommerce.mysql
2) store.mysql
3) individual module directories *.mysql
Although usually these were the same there were some that were different.
After hunting around on drupal.org for a while I found this suggestion that store.mysql was the best. After adding ec_tax to it I was able to get things, basically, going.
Here are my, rough, notes about the mismatches I found.
--
ec_transaction_product is the same in ecommerce.mysql and store.mysql but there is a different version in payment.mysql (missing the 'data text' field and 'KEY txnid_2 (txnid)').
ec_tmp and ec_tax are defined in ecommerce.mysql but are not defined in store.mysql. But ec_payment_status, ec_product_availability and ec_transaction_workflow are defined in store.mysql but not in ecommerce.mysql
As mentioned in other postings/issues there is a mismatch in the 3 definitions of the same table when country codes are defined (between a varchar(2) and an int(11)). For example ec_address, ec_transaction (which also has txnid as with auto_increment in payment.mysql but without in store.mysql and ecommerce.mysql).
--
I really do feel that a single mysql file for all the core (required?) modules would be best. That must be easier than keeping 3 versions in step?
Sorry, I really don't mean to sound negative about the ecommerce module. The above just lists some minor annoying differences!
Thanks to all the writers for ecommerce for their excellent work.
Lee
Comment #3
judah commentedI had problems with the cart not keeping the showing the products and not showing the user address fields. I checked the /admin page and I saw I was getting errors like this:
Table 'mydatabase.ec_tmp' doesn't exist query: SELE
I found this thread and sure enough the tables were not created. I upgraded from a previous version. It was not a fresh install. What LeeMcL suggested seems to have worked. I went into the ecommerce.mysql file and ran the following sql statements:
-- --------------------------------------------------------
--
-- Table structure for table `ec_tax`
--
CREATE TABLE ec_tax (
taxid int(11) unsigned NOT NULL default '0',
realm varchar(255) NOT NULL default '',
realm_value varchar(255) NOT NULL default '',
ptype varchar(128) NOT NULL default '',
operator decimal(10,2) NOT NULL default '0.00',
operand varchar(10) NOT NULL default '',
PRIMARY KEY (taxid)
);
--
-- Table structure for table `ec_tmp`
--
CREATE TABLE ec_tmp (
sid varchar(32) NOT NULL default '',
tmp text NOT NULL,
PRIMARY KEY (sid)
);
I still get a Unknown column 'data' in 'field list' query: error but it *seems* like everything is working. Please let me know if someone knows where this is coming from or how to fix it. Thanks
Comment #4
judah commentedI forgot to mention, I received this error when I ran the ecommerce update.php script. There were no other errors besides this. This error was the last thing listed:
Fatal error: Call to undefined function: address_build_countries() in /home/.dude/dude/dude.com/modules/ecommerce/updates.inc on line 75
Comment #5
simeWe are not supporting 4.6 now. Please re-open if any problems.