Alpha Software Mobile Development Tools:   Alpha Anywhere    |   Alpha TransForm subscribe to our YouTube Channel  Follow Us on LinkedIn  Follow Us on Twitter  Follow Us on Facebook



The Alpha Software Forum Participation Guidelines

The Alpha Software Forum is a free forum created for Alpha Software Developer Community to ask for help, exchange ideas, and share solutions. Alpha Software strives to create an environment where all members of the community can feel safe to participate. In order to ensure the Alpha Software Forum is a place where all feel welcome, forum participants are expected to behave as follows:
  • Be professional in your conduct
  • Be kind to others
  • Be constructive when giving feedback
  • Be open to new ideas and suggestions
  • Stay on topic

Be sure all comments and threads you post are respectful. Posts that contain any of the following content will be considered a violation of your agreement as a member of the Alpha Software Forum Community and will be moderated:
  • Spam.
  • Vulgar language.
  • Quotes from private conversations without permission, including pricing and other sales related discussions.
  • Personal attacks, insults, or subtle put-downs.
  • Harassment, bullying, threatening, mocking, shaming, or deriding anyone.
  • Sexist, racist, homophobic, transphobic, ableist, or otherwise discriminatory jokes and language.
  • Sexually explicit or violent material, links, or language.
  • Pirated, hacked, or copyright-infringing material.
  • Encouraging of others to engage in the above behaviors.

If a thread or post is found to contain any of the content outlined above, a moderator may choose to take one of the following actions:
  • Remove the Post or Thread - the content is removed from the forum.
  • Place the User in Moderation - all posts and new threads must be approved by a moderator before they are posted.
  • Temporarily Ban the User - user is banned from forum for a period of time.
  • Permanently Ban the User - user is permanently banned from the forum.

Moderators may also rename posts and threads if they are too generic or do not property reflect the content.

Moderators may move threads if they have been posted in the incorrect forum.

Threads/Posts questioning specific moderator decisions or actions (such as "why was a user banned?") are not allowed and will be removed.

The owners of Alpha Software Corporation (Forum Owner) reserve the right to remove, edit, move, or close any thread for any reason; or ban any forum member without notice, reason, or explanation.

Community members are encouraged to click the "Report Post" icon in the lower left of a given post if they feel the post is in violation of the rules. This will alert the Moderators to take a look.

Alpha Software Corporation may amend the guidelines from time to time and may also vary the procedures it sets out where appropriate in a particular case. Your agreement to comply with the guidelines will be deemed agreement to any changes to it.

Bonus TIPS for Successful Posting

Try a Search First
It is highly recommended that a Search be done on your topic before posting, as many questions have been answered in prior posts. As with any search engine, the shorter the search term, the more "hits" will be returned, but the more specific the search term is, the greater the relevance of those "hits". Searching for "table" might well return every message on the board while "tablesum" would greatly restrict the number of messages returned.

When you do post
First, make sure you are posting your question in the correct forum. For example, if you post an issue regarding Desktop applications on the Mobile & Browser Applications board , not only will your question not be seen by the appropriate audience, it may also be removed or relocated.

The more detail you provide about your problem or question, the more likely someone is to understand your request and be able to help. A sample database with a minimum of records (and its support files, zipped together) will make it much easier to diagnose issues with your application. Screen shots of error messages are especially helpful.

When explaining how to reproduce your problem, please be as detailed as possible. Describe every step, click-by-click and keypress-by-keypress. Otherwise when others try to duplicate your problem, they may do something slightly different and end up with different results.

A note about attachments
You may only attach one file to each message. Attachment file size is limited to 2MB. If you need to include several files, you may do so by zipping them into a single archive.

If you forgot to attach your files to your post, please do NOT create a new thread. Instead, reply to your original message and attach the file there.

When attaching screen shots, it is best to attach an image file (.BMP, .JPG, .GIF, .PNG, etc.) or a zip file of several images, as opposed to a Word document containing the screen shots. Because Word documents are prone to viruses, many message board users will not open your Word file, therefore limiting their ability to help you.

Similarly, if you are uploading a zipped archive, you should simply create a .ZIP file and not a self-extracting .EXE as many users will not run your EXE file.
See more
See less

Development considerations for multiuser environment

  • Filter
  • Time
  • Show
Clear All
new posts

  • Development considerations for multiuser environment

    I have been using Alpha 5 for about 14 months now, having made a couple of small personal applications and one for a person that runs his own small business. I have learned a lot reading this board and constantly reading the documentation. I haven't gotten the hang of this Wiki yet, and still struggle searching for answers, but find most. This one I have not found, so I am asking. I am really a rookie at database design and development, and I am entering a project that will require the application to be accessed by multiple users. I don't know the specific considerations that are required when designing and writing code for a multiple user app. I have read much about strategies to get unique identifying id numbers and security. I haven't found much on things like when it is necessary/preferred to open a table exclusive, or what circumstances introduce user conflicts in data writing that a developer needs to know about for multi user apps. Could someone point me in a direction for a good read or reference for this. Thanks.


  • #2
    Re: Development considerations for multiuser environment

    There are multi-user "hotspots"- like any programming medium.
    Depending on where your previous programming experience lies, some new issues may need addressing.
    see here


    • #3
      Re: Development considerations for multiuser environment

      Hi Ray,
      My nickname is JMichael, so that's how I signed in. Thanks much for that link. I might have found it had I hyphenated the word multiuser


      • #4
        Re: Development considerations for multiuser environment

        I got it Jmike (hope so),

        Articles are a bit dry and general.
        Experience is the real education in multi user planning.
        IMHO;-Multi user integration is specific for each scenario. Alpha takes care of most.
        Something I have found useful is to think, as you create forms and code that write data, "what if someone else is doing this" (or something else related while I am doing this) right now.

        When beta testing the app have another "user" in the same set or form, just open (use runtime). Elementary conflict will show. Check the resultant data on the other.
        Err on the side of caution, like, lock tables when unsure (say during critical update). The user will feedback if that causes a bottleneck, but it won't corrupt data. If the update is reasonable (quick) Alpha will wait long enough before returning an error to another user.

        One could go on discussing backup, rollovers etc - ask as you get specific topics.


        • #5
          Re: Development considerations for multiuser environment

          Good advice, Ray. I will proceed with those thoughts in mind.



          • #6
            Re: Development considerations for multiuser environment

            Hi Ray;

            I presume you're "more seasoned" with a5 than I am... But here's a link I kept for reference regarding multi-user considerations. It might be of use to someone. (I think it's worth reading the entire thread, along with it's associated links thoroughly.)

            I also know it's beneficial/imperative to topparent.commit() as soon as possible, before all the header table data is saved so that when you're adding a new record, you're "editing it" instead of "adding it." (To avoid internal table record locking issues.)
            Last edited by SNusa; 02-17-2013, 09:53 PM.
            Robert T. ~ "I enjoy manipulating data... just not my data."
            It's all about the "framework." (I suppose an "a5-induced" hard drive crash is now in order?)
            RELOADED: My current posting activity here merely represents a "Momentary Lapse Of Reason."


            • #7
              Re: Development considerations for multiuser environment

              Yes Robert, thanks for the consideration.
              I had followed that thread post by post as it developed.
              The main topic around which all the various posts meandered was the invoicing aspect - header data , autonumbering or not, invoice numbers and record locking.
              When the question is specific to that aspect, that is a good thread to read. I wouldn't think as a definitive guide, It may be a bit confusing to a newcomer to multi-user in general and some mildly conflicting opinions were offered. That time will come.
              I'm advising very generally to all aspects of a business system- include Master file record creation and management, Indexing, avoid overwriting others edits, login etc etc too many to be covered and that don't apply the same concerns and principles as invoicing which become quite specific.

              I definitely don't even suspect that I am more seasoned than you in alpha although I have been through the mill settling down over 350 registered small businesses over the years, dbf based multi-user integrated systems. Most with specific changes. Finding resolution to the rare problems is the challenge.
              I am finding now with Alpha that a lot of the manual lock, check, wait & unlock operations are unnecessary as Alpha does them, but the rest of the same issues need to be covered in the design.