Point of Sale for Grocery Store

Posted on 2005-04-17
Last Modified: 2013-11-18
Howdy Experts,

I would like to hear some comment on POS for a Supermarket store. I would like to build that system myself and would like to know:

1- What DBMS should be chosen(Free one such is mysql compare to MS ACCESS)
2- What Programming language is best? (VB? VB.NET? C# ..etc.)
3- Intended to have 3 terminals for the main store and 1 terminal for the warehouse. (expandable in the future)
4- How about Networking stuff? i.e. What kind of consideration to make when dealing with wiring and network topology?
5- Hardware stuff: cash register, monitor etc. (how much would that cost?)
5- Any other comments ? Any pre-lim questions i should ask myself before going to build such a system.

This system would be built using MS Window Based.
With Regards and Thank you,

Question by:sokhodom
    LVL 25

    Assisted Solution


    1- It's up to you, depending on the data that you're storing, some people like to create their own Database system :)
    2- I personally prefer Java (for just about everything), but if you're going to stick with an MS technology: C#.
    3- -
    4- Don't bother with wireless, as it costs a lot more than cables, and you also have to be very careful with security.
        all you'd need, is 3 long ethernet cables, and either a router or a hub (router is best, but costs a little more).
    5- Not sure, it depends on makes and models. But you're looking at at least £1000.
    6- Are their any existing systems around, which would save you money in the long run?

    Good luck with it - Regards;
    LVL 23

    Accepted Solution

    1.} mysql or something free, not access !
    2.} Depends what programming language(s) you prefer and are good at, if you are begining to program I would either suggest vb or if not and you are really good then it would be worth while looking in to the OOP languages like C#, c++, etc
    3.} Not sure what you wanted in terms of advice or suggestions on this one ?
    4.} I would say Star topology, RJ 45 wiring or the new cat 6 if you are going to use the 1 Gig stuff, so either Cat5 or Cat 6 ( I am not really a networking person so to speak but those are my thoughts on this part )
    5.} I am not sure on costs of monitors, cash registers etc, that would depend on how many you wanted and where you purchased or got them from , so there are too many variables in this part to give you a reasonable figure in terms of prices that I am aware of.
    6.} Yeah - make sure you plan this out well from database design ( normalisation as its called ) all the way to whose going to be using this system as that will most likely affect the type of data to be stored and where it is stored, what about security issues with regards to the database ? Will you need any ?

    Other then that wait on other experts inputs :)
    LVL 23

    Expert Comment

    I say not access , because it has limitations on how many people can access it at anyone time and its not really meant for commercial use !
    LVL 8

    Author Comment

    hi guys,
    Thanks very much for the info. Here some parts i'd like to hear some more comment:

    So for open source RDBMS should be MySQL whereas the programming language of choice would be VB or VB.NET as i am more familiar with that. Do you think that match perfectly? Speed wise, security and other stuff?

    Some more about networking part: Do you think updating database in realtime to the main sever will cause a problem? and slow down the updating of the databse? << I mean what type of database updating should i adopt? for example: store every database( price of each product etc.) in each terminal and update to the main server only at the end of the day. OR Updating real time to the main server is better?

    LVL 20

    Assisted Solution

    I agree with IM and gecko's recommendations for the most part.  I wouldn't rule out wireless connectivity, however.  The current routers/nics support excellent encryption features (some of the older ones only supported weaker encryption technologies).  You will need to do a "site survey" before you decide on either wireless or wired.  Ethernet cables cannot exceed 100 meters in length... and if you install wiring jacks in the runs you will need do reduce that length to perhaps 90 meters to account for some small losses introduced at each connection point.

    It's true that wireless routers/nics may cost a bit more than their wired cousins but if you catch them on sale (Compusa, BestBuy, etc) they can be nearly as cheap.  I just bought a Belkin 54g 4-port router and USB nic for about $35 (after rebates) last month.  Wireless offers an awful lot of convenience, flexibility, and ease of installaton if it works in your environment.  I'd recommend getting a router and nic to test with.  There is a distance factor with wireless also, but it will depend more on what might interfere with the signal (such as passing through metal barriers, being close to other electronic equipment (especially 2.4 GHz phones), etc.

    You need to measure the distance between the two terminals that will be the farthest apart.  I'd recommend locating a server midway between them if you can (you probably want it to be in a more secure area than out in the open part of the market).

    I agree with coding the app in Java, C#, or VB.Net (or anything else you might be more familiar with).  Since this is a new application, I'd hesitate to use an old technology such as VB6.  There's not much point starting out with a tool that is losing support from its creator.  RealBasic would also be a good choice.

    Also, MySQL is an absolutely great backend to use.  And like gecko said, do not use Access under any circumstances.  If you want to stay with a Microsoft product, then download the free MSDE 2000A database (be sure to search the web for a freely available Management Tool for it because, unlike the other versions of SQL Server 2000, MSDE doesn't come with Enterprise Manager or Query Analyzer)... it wiill be more than adequate for this project.

    LVL 23

    Expert Comment

    I would have to say VB.NET then in that case just because it is the OOP version of Visual Basic and it would probably be more suited for mysql , Visual Basic can still do it but the choice between the 2 is entirely up to you :)

    It depends because if you update it in real time you will need validation with regards to making sure that what is being updated or w/e isnt being updated to something that is invalid or even if one person updates it then someone else updates it again, how do you know which update(s) are valid or even if they need updated ?

    Then again if you leave it till the end of the day, then someone will have to go through everything and determine and figure out what is to be updated and that is a lot of work.

    So it may be worthwhile even though it is harder just to basically update it in real time with relevant validation checks etc.

    Security will probably involve passwords and encryption and different user levels ( read only, read and write, write only and such like )

    Speed will vary on a lot of factors with regards to the coding of the application, the connection between the application and the database as well as how many people are using the database at anyone time. Correct me if I am wrong !!

    imho - those are things that I think would effect speed etc.

    Anyway I hope this gives you a little insight, hopefully other experts can give you a more in depth view or advice on this :)
    LVL 8

    Author Comment

    Thank you once again :) I really appreciate any input. Thank you Lynn for pointing out on the 100meter stuff.
    How about the interfacing with Hardware? will it pose any problem using VB.NET?

    I wonder if there is any sample of real application or any article to get me start on building such application?

    With Regards,
    LVL 23

    Expert Comment

    With regards to what JesterToo Said, I would highly reccomend linksys and 3com with regards to networking equipment ! Just for there reliablity and customer support ( well at least for linksys because I have not had any 3com equipment ) however I have had a lot of people vouch for 3com and have seen that there stuff is pretty good so not trying to be negative about 3 com in anyway :)

    Featured Post

    Better Security Awareness With Threat Intelligence

    See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

    Join & Write a Comment

    Entering a date in Microsoft Access can be tricky. A typo can cause month and day to be shuffled, entering the day only causes an error, as does entering, say, day 31 in June. This article shows how an inputmask supported by code can help the user a…
    Read about how to choose the best possible content marketing agency to suit your needs. Content marketing has become an integral part of running a successful tech business, so it is wise to be informed.
    Viewers will get an overview of the benefits and risks of using Bitcoin to accept payments. What Bitcoin is: Legality: Risks: Benefits: Which businesses are best suited?: Other things you should know: How to get started:
    In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

    733 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    23 Experts available now in Live!

    Get 1:1 Help Now