Alpha Video Training
Page 1 of 2 12 LastLast
Results 1 to 30 of 45

Thread: Data Entry Technique for a Grocery Application

  1. #1
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Data Entry Technique for a Grocery Application

    Has anyone tried creating an application for a grocery? Particularly on entering sales, The tables would be Sales_Header, Sales Detail, and Products. I was thinking of using the Browse control for entering items sold just like the alpha sports sample that came with alpha five v11, but my problem is that the browse control is heavily discouraged for multi user environment in entering sales. The one being suggested mostly is to make the browse readonly and enter the items sold in another form. Well, it could be done of course, but the problem is that, in a grocery, the data entry is mostly done by using barcode scanners and sometimes if there is no barcode of the item, then it is manually searched by using item keywords, it would be annoying for the cashier to click or press enter everytime before scanning a new item since the opening of a new form for the item details would need a button click or press enter to trigger the opening of another form to enter the item and its quantity bought. Alpha Experts here on the board, please help by suggesting a better way to do the speedy data entry of items. the browse control is the perfect choice supposed to be if it supports many users maybe at least 10 cashiers entering data on the browse control on a multi user environment.Thanks very much!
    Last edited by JetLi; 12-11-2012 at 09:02 AM.

  2. #2
    "Certified" Alphaholic DaveM's Avatar
    Real Name
    Dave Mason
    Join Date
    Jul 2000
    Location
    Hudson, FL
    Posts
    6,026

    Default Re: Data Entry Technique for a Grocery Application

    I am sure there have been a couple of grocery applications done. I am going on memory, but it still serves pretty good at 66, but I can't remember who did it.

    If done right, it can subtract the item(s) from the inventory too.
    Dave Mason
    dave@aldausa.com
    Skype is dave.mason46

  3. #3
    "Certified" Alphaholic Keith Hubert's Avatar
    Real Name
    Keith Hubert
    Join Date
    Jul 2000
    Location
    London, UK
    Posts
    6,930

    Default Re: Data Entry Technique for a Grocery Application

    Jetson,

    Think in terms of touch screen and do a search in the forum for POS.
    Regards
    Keith Hubert
    Alpha Guild Member
    London.
    KHDB Management Systems
    Skype = keith.hubert


    For your day-to-day Needs, you Need an Alpha Database!

  4. #4
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Touchscreen is I think applicable for restaurants. but for a grocery store, barcode scanners will do most of the work.

  5. #5
    "Certified" Alphaholic
    Real Name
    Jeff Kletrovets
    Join Date
    Oct 2005
    Location
    Columbus, OH
    Posts
    1,135

    Default Re: Data Entry Technique for a Grocery Application

    This can be done with some planning and xbasic. While not the same as what you are looking to do, I have a multiuser employee timeclock running in Alpha where the users only use a barcode scanner(no keyboard) to enter, edit and review their daily time card "punches". No keyboard is involved...just their employee id card, work order with bar code and job function(s) bar code. One item to keep in mind is that most bar code readers can be "programmed" to automaticaly enter a carriage return and/or tab at the conclusion of reading the bar code. This is how I automatically move from field to field. Mind you, I have extensive xbasic in the OnDepart event of each field to handle error checking and logic. If an error is found, then the xbasic code repositions the cursor to the field that needs attention using object.activate(). Think in terms of using variables to hold all of your data on the form and then use xbasic to commit the record once everything is in order. You will have no multiuser issues this way in my opinion....at least I don't. :):)

  6. #6
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Quote Originally Posted by jkletrovets View Post
    This can be done with some planning and xbasic. While not the same as what you are looking to do, I have a multiuser employee timeclock running in Alpha where the users only use a barcode scanner(no keyboard) to enter, edit and review their daily time card "punches". No keyboard is involved...just their employee id card, work order with bar code and job function(s) bar code. One item to keep in mind is that most bar code readers can be "programmed" to automaticaly enter a carriage return and/or tab at the conclusion of reading the bar code. This is how I automatically move from field to field. Mind you, I have extensive xbasic in the OnDepart event of each field to handle error checking and logic. If an error is found, then the xbasic code repositions the cursor to the field that needs attention using object.activate(). Think in terms of using variables to hold all of your data on the form and then use xbasic to commit the record once everything is in order. You will have no multiuser issues this way in my opinion....at least I don't. :):)
    What a tedious, job, very nice approach to avoid multi-user conflicts. Nice advice, I hope alpha five developers will stop for a day or two in innovating for the mobile and spend a bit of improving the browse control so that it can be used in multi user situations.

  7. #7
    Volunteer Moderator Steve Workings's Avatar
    Real Name
    Steve Workings
    Join Date
    Apr 2000
    Location
    The Dreaded Chair
    Posts
    5,619

    Default Re: Data Entry Technique for a Grocery Application

    I wouldn't use the browse control anyway for something like this.

    Instead, I'd use an XDialog or one of the web-centric tools such as a Dialog2 with a repeating section. These are faster than a browse control, don't dump the data directly to the table, give you all sorts of programmability in terms of catching and dealing with scanning errors, takes the multi-user question out of having a table sitting there open, and a variety of other benefits.
    -Steve


  8. #8
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Thank you Steve, I have tried the Dialog component for the web to be used on the desktop, It is working fine on a stand alone but when I shadowed it on a workstation and when I click the submit button, the data would not save (please note that it wont save on the workstation but on the server it is saving properly). Do I need to run the Alpha Five application server on the desktop? BTW, how can I make the enter key the default key to TAB on a web dialog component?Thanks again!

  9. #9
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    Unlike time clock scanning, grocery (any POS checkout point) is entry intensive.
    By nature a lot of deleting and removing entire "invoices" is required before acceptance.

    While Steves option is by far the most effective, it requires a lot of experience and time (for me anyway, right now)

    I like each terminal to have their own tables.
    That allows any user to reset or even zap their own tables.
    I have done a lot of this in the past (non alpha) and now developing replacement systems with Alpha.
    I found exploring shadow tables (not shadow database) allow users to have new tables created for them on the fly and use one central shadow set. These tables at present are not even being registered in the database (which suits me fine)
    As soon as a sale is completed a millisecond update of the actual tables is required.
    THis also allows me to put a sale on hold - visa vie customer left his wallet in the car - and continue with next customers.
    Last edited by Ray in Capetown; 12-13-2012 at 04:27 AM.

  10. #10
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Hi Ray, Very Nice Approach, I thought it is not possible in alpha five, May I request you to please post your sample on the board for us all to adopt from your technique?Every terminal then would have its own table in saving the sales then later on appended to a central table. the main tables would be, tblCutomers, tblSalesHeader, and tblSalesDetail , the temporary tables would be temptblSalesHeader and temptblsalesDetail, this is what I understood and it is I think a very good technique for multi user app, so that we can use the browse control because it is the easiest way to add sales rather than using the effective but tedious Xdialog.Please correct me if I'm wrong, Hope you can share also your solution. Thanks very much!

  11. #11
    "Certified" Alphaholic
    Real Name
    Tom Cone Jr
    Join Date
    Apr 2000
    Location
    Florida
    Posts
    23,310

    Default Re: Data Entry Technique for a Grocery Application

    Ray,

    I'd very much like to see a simple example illustrating the use of shadow "tables". Thanks.

    -- tom

  12. #12
    "Certified" Alphaholic Keith Hubert's Avatar
    Real Name
    Keith Hubert
    Join Date
    Jul 2000
    Location
    London, UK
    Posts
    6,930

    Default Re: Data Entry Technique for a Grocery Application

    Tom,

    I think what Ray is talking about is a temp table and then the data gets appended to the main table on the server. Could be wrong of course.
    Regards
    Keith Hubert
    Alpha Guild Member
    London.
    KHDB Management Systems
    Skype = keith.hubert


    For your day-to-day Needs, you Need an Alpha Database!

  13. #13
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Quote Originally Posted by Tom Cone Jr View Post
    Ray,

    I'd very much like to see a simple example illustrating the use of shadow "tables". Thanks.

    -- tom
    Yes Ray, Whether it is shadow tables or a temp table, hope you can upload a simple app illustrating it.

  14. #14
    "Certified" Alphaholic
    Real Name
    Tom Cone Jr
    Join Date
    Apr 2000
    Location
    Florida
    Posts
    23,310

    Default Re: Data Entry Technique for a Grocery Application

    Yes, Keith, I think so, but it sounds like he's creating the "temp" table on the fly, or possibly storing them on the local workstation, or both. A temp table on the network server, shared by others, would defeat the purpose wouldn't it? So, I'm curious about how the local tables are implemented. -- tom

  15. #15
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    Sure Tom

    Fundamentally, first follow the technique exactly as in the sample in the help for table.create_shadow() to create your shadow files, construct your set using the created shadow files complete with field rules and forms/reports either now or add later.

    Then I use create_shadow() in a function to switch between (and create new tables) as required during program operation.
    As Jet has described, is how I use it for invoicing.

    Code:
    FUNCTION InvShadowTo AS C (NewHd AS C)
    uhfn = table.filename_get(NewHd) '= "c:\ac\com\invhbob.dbf"
    sHfn = a5.Get_Path()+"\invhshadow.dbf"
    table.create_shadow(shfn, uhfn)
    END FUNCTION

    Keith, you can switch the associated set/foms/reports between temporary tables that only allow one header record to archive tables with thousands, using the same call.

    Open a form, enter data
    Switch shadow
    Open the form again, no data
    Enter new data
    Switch the shadow back to the first
    Open the form
    First data is back
    Viola
    Last edited by Ray in Capetown; 12-13-2012 at 11:39 AM.

  16. #16
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    Tom, yes they certainly can be on the server. It doesnt defeat the object
    You simply control who accesses which via filename.
    You could also keep them on the C drive and use the same filename.
    The point is that your form always belongs to one shadow table.

  17. #17
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    No comments for a while so you lot are trying it out.
    Lets hear from you when done.

  18. #18
    "Certified" Alphaholic
    Real Name
    Tom Cone Jr
    Join Date
    Apr 2000
    Location
    Florida
    Posts
    23,310

    Default Re: Data Entry Technique for a Grocery Application

    Ray.

    This is new territory for me. Can you break the entire sequence down into smaller steps ?

    I'm confused about the data entry sequence.

    When the shadow table opens is the "real" table opened also?

    Is the shadow table a physical table? (It would seem so)

    When records are entered into the shadow table are they entered into the "real" table automatically?

    I'm having trouble seeing the advantage here in a multi-user setting (it seems to me that the "link" or "shadow" relationship must be invoked before your data entry begins. This suggests that both shadow and "real" tables are open during data entry. )

    Thanks.

  19. #19
    "Certified" Alphaholic
    Real Name
    Tom Cone Jr
    Join Date
    Apr 2000
    Location
    Florida
    Posts
    23,310

    Default Re: Data Entry Technique for a Grocery Application

    Ray, maybe this will help you understand my confusion.

    In a multi-user app where high data entry speed is the goal, I could envision a design that uses local tables on each workstation. Data entry to the local table involves no network activity. When the transaction is accepted / finished a script then appends the transaction records to the database tables on the server. Collisions with other users are minimized (and can be easily trapped) since no one on the network is editing data directly in the tables on the server.

    I thought maybe your shadow tables would fit this model, but they do not seem to. Am I missing something?

  20. #20
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    Tom, you are 100% correct.
    The exclusive use of temp files was not the main reason for my using shadow tables. It is a spin-off because I personally like it - I can go into the reasons with you. To do with data confidentiality, and accessibility, trace-ability from the server, testing purposes and my own phobias.

    Simply for personal temp tables the C: option is fine. As you said. works exactly the same. For the multi-user purpose only.

    My reasons using shadow tables is for a more far reaching porpoise (humour), mainly around finding, viewing, printing and maybe even editing, following data wherever it lies as it moves and replicates rather than a multitude of file and record copies. And all that using a common interface set.
    the structure of all of the different extended tables is different to the shadow, but all have at least the shadow's fields. for example auto incrementing different fields in each location. Ultimately an invoice can be tracked via its history, archive retrieval and origins but each in a different vertical part of the application.
    SHIKES Im now getting convoluted. And thats the short explanation. I'll stop here - ask if further interested.

    The shadow table NEVER "OPENS" - it only contains a pointer. No records.

  21. #21
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Experts are now confused a bit, how much more to beginners,Ray, can you possibly share your sample in the Code Archive? Seems your approach is very much effective that even long time alpha users are not aware of your technique.Thanks!

  22. #22
    "Certified" Alphaholic
    Real Name
    Govindan Gandhi
    Join Date
    Aug 2008
    Location
    New York, NY
    Posts
    4,294

    Default Re: Data Entry Technique for a Grocery Application

    hello
    i never had a runtime license, finally bought one and reading thru the documentation and playing with it ( along with my web development).
    i see if we do network optimization, it creates a shadow copy of all the files in the original master db. i store that in a separate folder along with supporting folders. and when you open the shadow copy it looks and feels like the regular master
    and it updates the master instantly. so far tried using with two computers and the record insertion has been painless.
    should i create another temp copy of the shadow table to work with it, to be safe?
    thanks for reading

    gandhi

    version 11 3381 - 4096
    mysql backend
    http://www.alphawebprogramming.blogspot.com
    ggandhi344@gmail.com
    Skype:ggandhi344@gmail.com
    1 914 924 5171

  23. #23
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    I don't have so much money but I really need to have his kind of solution suggested by Ray, Can someone offer do it for me with a price, May I request for the lowest bidder because as I have said I dont have much money.Please Pm me if somebody is interested.It is quite disappointing that the browse control cannot handle this kind of multiuser situation which is very much common for many applications, the xdialog is highly suggested but it takes too much code and contradicts alpha five's RAD nature. If the browse control could be improved for this then alpha five is the best RAD tool for desktop database RAD tool.

  24. #24
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    @Tom
    There is the advantage in that whilst developing, and later changing, ALL changes to form rules, table rules etc are done once to the shadow and apply to all the tables that will get used. Even when you create new user tables. One table can then be used by different forms providing different attributes. I haven't even explored all the possibilities yet. There is nothing in the help other than the sample with the function.

    @Jet. I pointed earlier to the fundamental code and gave example function to do the switching. This is quite powerful and very specific to your needs.
    You really should experiment.
    I will try to put a generic demo together, focussed only on the aspect of temp private tables that interests you - but you would still want to go into those to see how they work to tailor it. You may have more questions than I could answer.

    I'm thinking the meantime if Tom would explain the local pc method that might get you there quicker.
    That I imagine would entail checking a local drive for existence of the temp table and create it if is not. Your code would specifically refer to a C drive.

    @Gandhi - there is a difference to shadow database which is a copy of the whole database (all tables), this is regarding table shadow.

    When this facility was released in V10 Selwyn made mention of its usefulness - no one else seemed to see a use.
    I had a need, with what I had been doing in systems previous, and this looked like a possibility - it turned out so, and more than expected. Maybe others with more experience in Alpha are adept at writing programs that do the same thing, for me I struggled for long - this is deployed easily - after a lot of experimentation, testing what happens when...
    Last edited by Ray in Capetown; 12-14-2012 at 01:34 AM.

  25. #25
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Thanks very much Ray for the example, I hope you can spend a bit more time and charge me for it so that it would be more complete.

  26. #26
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    I will post or send you a working sample to see if it is actually the panacea (= the solution to all problems) you expect.
    I wont write a specific system for you - the brief would have to be very specific and detailed.

  27. #27
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Quote Originally Posted by Ray in Capetown View Post
    I will post or send you a working sample to see if it is actually the panacea (= the solution to all problems) you expect.
    I wont write a specific system for you - the brief would have to be very specific and detailed.
    Thanks very much!

  28. #28
    "Certified" Alphaholic Ray in Capetown's Avatar
    Real Name
    Ray Hendler
    Join Date
    Jan 2009
    Location
    South Africa
    Posts
    2,036

    Default Re: Data Entry Technique for a Grocery Application

    AS promised
    A basic working demo for invoicing using shadow for temp tables. It explicitly offers facility for two users each independent of each other.
    I added a simple field rule to demonstrate how rules migrate with the shadow.
    Uses only a header and lines tables which are shadow linked.
    Start with the start form - the NEW button would show how one can ZAP the invoice tables whilst other users are invoicing.

    You can, in the standard manner add field rules, additional tables for stock lookup and customer details. Add totals tax calcs etc
    Add buttons on the form to proceed with print and archive and post and all of those things as normal.

    This is offered purely as a learning exercise to learn from or not as you choose. No warranty or support is to be expected.
    In the spirit of this we can all learn from any new application anyone discovers so post back.

    And JEt what I would like is to know WHERE YOU ARE operating from?
    Attached Files Attached Files
    Last edited by Ray in Capetown; 12-14-2012 at 09:10 AM. Reason: attachment

  29. #29
    "Certified" Alphaholic
    Real Name
    Jetson Lilibeth
    Join Date
    Dec 2011
    Posts
    1,093

    Default Re: Data Entry Technique for a Grocery Application

    Ray, What if I will be adding a new table called customer and products, am I going to create a shadow also for these two tables? how did the Two tables invhshadow and invlshadow got created?I also noticed that the structure cannot be edited, I tried to delete them on the workspace because I thought they can be automatically added by clicking new on the start menu, are the shadow tables created on the fly?. This might work well Ray, nice approach to multi user, I am trying to figure the logic behind , BTW, how do I combine both the invoices of the two users so that when I create a report, it would come from only a sales header and a sales detail line?
    Last edited by JetLi; 12-14-2012 at 10:01 AM.

  30. #30
    "Certified" Alphaholic
    Real Name
    Tom Cone Jr
    Join Date
    Apr 2000
    Location
    Florida
    Posts
    23,310

    Default Re: Data Entry Technique for a Grocery Application

    Thanks, Ray. I'll enjoy studying this over the weekend.

    -- tom

Similar Threads

  1. Urban Grocery Delivery System Shopping Cart
    By richardurban in forum Application Server Version 10 - Web/Browser Applications
    Replies: 3
    Last Post: 12-30-2010, 01:23 PM
  2. How To Import Data From Web Application Into Desktop Application
    By edocx in forum Application Server Version 8
    Replies: 6
    Last Post: 03-14-2008, 10:44 AM
  3. data entry: Argument is incorrect data type
    By ten10ten in forum Alpha Five Version 4
    Replies: 6
    Last Post: 05-18-2006, 02:57 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •