Help Rebuild OsCommerce

Looking for volunteers to join your project? Need help with a script but can't afford to pay? Want to offer your services as a volunteer to build up your portfolio? This is the place for you...

Moderator: General Moderators

Post Reply
ztml
Forum Commoner
Posts: 30
Joined: Tue Jun 13, 2006 5:13 am
Location: New Jersey

Post by ztml »

Hello everyone,

Looks like in such a short time you people have assembled a great team working on this project. I'm sure with your enthusiasm and skill have shown will no doubt make this project a success. I'm the developer of ztml, which is a system provides tools to build web pages. I found a partner who is a designer used these tools and built a fully featured CMS call ezPortal. He is also thinking about adding a shopping cart feature. Since he knows very little about programming so that task will be fallen on me. However, I know nothing about shopping cart so this is a great opportunity for me to learn about this type of functions and perhaps I can add this feature into ztml later. Hey maybe I will learn enough from you people that I might able contribute to this project later too. If anyone here is interested I can set up a site to organize some of your notes so that you can track the project's progress. Good luck everyone.

Tom
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

jamiel wrote:We have built a couple of shop's in house and have found that the method of linking a transaction to an order to an item to a product works really well and provides some flexibility.
If I understand that correctly then I'd have to say I disagree. Once an order is completed it should be completely seperate from any product records in the database. Absolutely all information from the product should be copied to the order record.

The reason being that, for example, if I order "Purple Widget 3", then 6 months later I want to view my order history, it needs to state exactly what I ordered. If you just reference the product record then it could have been changed to "Green Widget 9" instead .. and now my order history doesn't reflect the reality. Similarly for the shipping address, credit card details, name, everything that is associated with an order should be stored with the order information.

Doing that means that that if I place 5 orders then you'll get 5 copies of my shipping details in the database .. that's fine so long as you can go back and know for certain that the address recorded is the address the order went to.
jamiel
Forum Contributor
Posts: 276
Joined: Wed Feb 22, 2006 5:17 am
Location: London, United Kingdom

Post by jamiel »

Product record's don't change. You add new products.
sike
Forum Commoner
Posts: 84
Joined: Wed Aug 02, 2006 8:33 am

Post by sike »

jamiel wrote:Product record's don't change. You add new products.
that might be true but they may get deleted.
it's essential for a serious ecommerce app to make completed orders self contained as onion2k pointed out. so i strongly vote for thatr (:

on of my requirements for a shopping cart would be customizable / extendable products. the system should implement the most common features and let me decide what else i need. e.g recently i had a inquiry for a shop where prices where different based on which "size" of the product you bought. i don't think that this is a very common case but the system should let me implement it easily.

chris
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

jamiel wrote:Product record's don't change. You add new products.
Really? So if I discover a typo in a product description you'd add a new product in order fix it? Crumbs.
jamiel
Forum Contributor
Posts: 276
Joined: Wed Feb 22, 2006 5:17 am
Location: London, United Kingdom

Post by jamiel »

I dont believe products should get deleted either. But I think we keep this debate for later before this thread gets side tracked. Basically I just wanted to emphasize that our database schema is going to be critical to the success of this project.
jamiel
Forum Contributor
Posts: 276
Joined: Wed Feb 22, 2006 5:17 am
Location: London, United Kingdom

Post by jamiel »

Fixing a typo is hardly changing the Product so long as you are using id's to reference it.
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

jamiel wrote:Fixing a typo is hardly changing the Product so long as you are using id's to reference it.
True. But if you give a shop owner the ability to fix a typo then they also have the ability to completely change a product description. And if they can then they will .. something I have learnt from experience. You might know that you shouldn't change a product name, but the admin don't.
User avatar
feyd
Neighborhood Spidermoddy
Posts: 31559
Joined: Mon Mar 29, 2004 3:24 pm
Location: Bothell, Washington, USA

Post by feyd »

While I hate duplication, in carts/orders.. it is needed. So I would agree with onion's assessment.
User avatar
Oren
DevNet Resident
Posts: 1640
Joined: Fri Apr 07, 2006 5:13 am
Location: Israel

Post by Oren »

jamiel wrote:I dont believe products should get deleted either. But I think we keep this debate for later before this thread gets side tracked.
This is not even a debate, onion2k is absolutely right and I'm sure that anyone else would agree. I'm not the leader of this project or something, but I'm sure that we'll do it "the onion2k way" since your way doesn't make sense at all (no offense, I'm just being practical :P).
jamiel wrote:Basically I just wanted to emphasize that our database schema is going to be critical to the success of this project.
That's true.
User avatar
onion2k
Jedi Mod
Posts: 5263
Joined: Tue Dec 21, 2004 5:03 pm
Location: usrlab.com

Post by onion2k »

jamiel wrote:I dont believe products should get deleted either. But I think we keep this debate for later before this thread gets side tracked. Basically I just wanted to emphasize that our database schema is going to be critical to the success of this project.
You can't write the database schema until questions like this have been answered. If products are going to be archived instead of properly deleted then you'll need a flag to record the product status .. if they're going to be deleted then you don't.

This is absolutely the correct stage to work out how the shop is going to work. Then you create the database schema. Then the object model. And only then do you write your first line of code.

To coin a bit of a cliche .. Don't document your code, code your documentation.
User avatar
Jenk
DevNet Master
Posts: 3587
Joined: Mon Sep 19, 2005 6:24 am
Location: London

Post by Jenk »

With past experiences after developing other eCarts, I can also confirm it is paramount that the order table be as self sustaining as possible.
jamiel
Forum Contributor
Posts: 276
Joined: Wed Feb 22, 2006 5:17 am
Location: London, United Kingdom

Post by jamiel »

So if the admin wanted to report on how many sale's he's had for a certain Product, he would have to query the order table for how many order's were made with a certain "Product Name" . If you want to move your product into the order to tie it to a purchase and allow products to be altered, doesnt that mean you lose your primary key on product's.
User avatar
feyd
Neighborhood Spidermoddy
Posts: 31559
Joined: Mon Mar 29, 2004 3:24 pm
Location: Bothell, Washington, USA

Post by feyd »

They will maintain their product sku. The primary key means nothing.
jamiel
Forum Contributor
Posts: 276
Joined: Wed Feb 22, 2006 5:17 am
Location: London, United Kingdom

Post by jamiel »

I'm not following, yet clearly outnumbered so I will stand down.
Post Reply