Please start any new threads on our new site at https://forums.sqlteam.com. We've got lots of great SQL Server experts to answer whatever question you can come up with.

 All Forums
 SQL Server 2000 Forums
 SQL Server Development (2000)
 Databases and Accounitng systems

Author  Topic 

hasanali00
Posting Yak Master

207 Posts

Posted - 2004-09-06 : 05:34:05
Hi

THis is not really a question regarding SQL but I wonder if you can help to explain the following to me.

I am developing an e-commerce application for a company to sell products. Previously, this company used to use an accounting system. this system included Product description, stock level, price, discounts, taxes etc and order details.

Would be grateful if u can aswwer the following questions

(1) How does an existing accounting system work with a new e-commerce appication? Why would I need to integrate an accounting system with an e-commerce application. What services does an accounting system provide that we can use for the website.

(2) I was going to develop a database which would include product description, prices, order details etc and link it to the website. But as I have described earlier the accounting system already contains this information. So do I need to create a new database which includes this information or can I somehow link our accounting system to provide content for the website.

(3) If I do develop a new database, then we will have 2 different data sources containing the same information (e.g. database and accounting system).
What can I do to eliminate this duplication. For instance, should we have the database as the main source of information and populate the accounting system through it.

Hope to hear from you.

timmy
Master Smack Fu Yak Hacker

1242 Posts

Posted - 2004-09-06 : 19:06:26
1. It depends on the accounting system. There are many out there and all do things slightly differently. I suggest you contact your vendors to find out what (if any) services you can take advantage of. Most likely you would need to use some sort of ODBC or API's to gain access to the accounting system from your e-com app.
2. See (1). If the accounting system has OBDC/OLEDB access you could link this table into your e-com database (using linked servers or something similar). But probably the best way is to replicate the relevant information in your new database and perform some sort of nightly update. That way you're not limited to the data the accounting app is holding and you don't need to be concerned about ODBC driver performance affecting your app.
3. Depends on the accounting app, but should be possible for most. Nearly all accounting apps I've come across allow some sort of external data access.
Go to Top of Page

hasanali00
Posting Yak Master

207 Posts

Posted - 2004-09-07 : 16:30:15
thanks very much, things are much clear now.
Go to Top of Page

JimL
SQL Slinging Yak Ranger

1537 Posts

Posted - 2004-09-08 : 09:02:18
As A matter of security design I would not directly link to the accounting system.

1. Create a secondary DB and Link to that.
2. Use triggers on the Accounting db to update the secondary.
3. If the secondary becomes corupted no big deal simply have a SP to Restore from the Accounting db.
4. As most Accounting systems work on a batch mode I place the incoming tansactions to the accounting system in another DB then import into the Accounting db in batches.

This method does not require giving ANY permissions to your accounting DB.

Jim
Users <> Logic
Go to Top of Page

timmy
Master Smack Fu Yak Hacker

1242 Posts

Posted - 2004-09-08 : 09:23:14
That's assuming of course that the Accounting db is in SQL or some other 'modern' DBMS. If it's Access/ISAM etc etc you won't be able to run triggers or sp's.
It also depends on the intended usage of the system. If it's only for small user groups, then the link to the accounting db would probably work fine. As long as both db's are backed up regularly (to cover Jim's third point).
Go to Top of Page

JimL
SQL Slinging Yak Ranger

1537 Posts

Posted - 2004-09-08 : 09:36:54
You mean there is someone actualy running those Timmy?

LOL

You could still use a secondary with periodic updates/Replace instead of a trigger.

Jim
Users <> Logic
Go to Top of Page

timmy
Master Smack Fu Yak Hacker

1242 Posts

Posted - 2004-09-08 : 09:55:48
Some accounting packages don't even let you into their database. You have to go via their crappy API's
Go to Top of Page

Kristen
Test

22859 Posts

Posted - 2004-09-12 : 05:05:29
We build eCommerce systems, and have an "integration" layer between them and the back-office systems. We have routines that regularly transfer data needed by the Web site (new products, prices, stock levels, etc.) from the back office, so in essence we hold independant, duplciate, data. We also transfer data the other way - new orders, amendments to addresses, etc. made on the web.

When the link to the back office fails, or the "transfer" systems fail because someone has changed something, the web site continues to run - we might sell a product which is now out of stock, or its price has changed, but in general terms this is regarded as a lesser problem than the alternative of selling nothing because the site is broken!

We have some scavenger methods too - e.g. someone arrives on the web site and types in their account code, but they don't have a web account yet. We query the back office system, in real time, to get their account details and make a web account for them. So we only store accounts on the web for people who shop on the web - less data to keep up to date from the back office. If the back office link goes down people cannot use non-web accounts (but they can register all-over-again if they are in a hurry).

Kristen
Go to Top of Page
   

- Advertisement -