Announcement

Collapse

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

Upsizing and MYSQL questions...

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Upsizing and MYSQL questions...

    My first post to the forum so excuse me if there is a FAQ somewhere on the subject.

    I'm trying to help a friend who is a long time A5 user migrate some/all of A5 to a MYSQL backend so that he/we can develop a mobile app frontend from the data that's been gathered.

    I've read a number of posts and watched a few of the videos of users migrating/upsizing to MYSQL as a backend and I was able to successfully upsize to MYSQL. I have a few questions if anyone could help or point me in the right direction that would be great.

    1 - Can anyone confirm that the link between A5 and MYSQL are either read/write? I think it questioned as part of the upsizing genie but I quickly went through the process as a POC and have forgotten?
    2 - All of the tables in A5 control panel have a link icon on them as I would suspect, except for one. However this table did migrate as I see a copy of it in MYSQL, how did it lose the link and how do I re-create it?
    3 - After the upsizing process is complete and the tables have been linked to MYSQL, will all form development/reports/letters, etc. continue to happen in A5 correct, nothing there changes?
    4 - Does it make sense to only upsize the required tables and leave the rest as .DBF?

    Thanks for any guidance or answers you supply. Any help is appreciated.

    VB,

  • #2
    Re: Upsizing and MYSQL questions...

    When you develop either a web or mobile app the table links in the control panel are not part of the process. Think of Alpha and MySQL as 2 separate entities.
    You'll build an AlphaDAO Connection String (Web Control Panel / Tools) to your MySQL database and use that connection string when building List Controls etc. in your app.

    The only reason you used the Control Panel Table Links is to link your desktop application to your MySQL database.

    By default, your AlphaDAO Connection String will be read/write. The same goes for the Table Links.

    You'll need to fully test your existing desktop application with your MySQL tables. MySQL and DBF are completely different and there is no guarantee that Alpha will behave the same with one as with the other.

    Any table you'll need in your web / mobile app you will need in MySQL. Do not use DBF tables in your web / mobile app... they are from another era and do not belong in current development.

    Comment


    • #3
      Re: Upsizing and MYSQL questions...

      I forget how the upsize genie works and I'm not even sure I understand your questions. This is a dbf desktop application or a dbf web application? I assume it's the former.

      Alpha's desktop has never been optimized for SQL, but you can work with it. If you convert the dbf to MySQL you can use active link tables (which are still really dbf tables linked to the MySQL tables). Is that what the upsize genie does - create active link tables? Anyway, the AL tables will read/write to the MySQL backend. Will your forms/reports all work the same way? More or less, I guess. I had a few hybrid apps quite a ways back and there were certain things such as queries that had to be customized for the MySQL/active link paradigm. So it wasn't 100% a fluent conversion. I did have to customize a lot of stuff. Should you convert all the tables or just some? I don't know. I guess in your case, i would only convert the ones you need for mobile. After you gain some experience with it you can decide what you want to do about the rest.
      Peter
      AlphaBase Solutions, LLC

      Peter@AlphaBaseSolutions.com
      https://www.alphabasesolutions.com


      Comment


      • #4
        Re: Upsizing and MYSQL questions...

        Thanks for the reply's.

        The web app will probably be designed in PHP/Dreamweaver and leverage MYSQL so there would be no direct interaction with A5 only MYSQL.

        You'll build an AlphaDAO Connection String (Web Control Panel / Tools) to your MySQL database and use that connection string when building List Controls etc. in your app.

        The only reason you used the Control Panel Table Links is to link your desktop application to your MySQL database.
        Yes I think I understand the link portion of the process and was able to successfully create the ODBC connection and the tables do appear to be linked to MYSQL, updates in A5 do update the MYSQL tables as was tested. So, if this is a link to MYSQL and it is a read/write connection when designing a form is the data in A5 .dbf or on MYSQL which would utilize a connection string? Can it be used either way?

        Should you convert all the tables or just some?
        Great point Peter, as we design the front end we'll need to sit down and discuss what need to be migrated.

        The plan is to allow all the development to continue in A5, forms, reports, etc. just using MYSQL as the backend.

        When I look at the Control Panel I see that all the tables have the "link" icon except for one. That table somehow "lost" the link and I don't see an option for adding it back in the menu, however the table did migrate to MYSQL. Do you guy's know how to add that back?

        VB,

        Comment


        • #5
          Re: Upsizing and MYSQL questions...

          You can just select an individual table when you run the genie, I believe. it's sorta coming back to me now.
          Peter
          AlphaBase Solutions, LLC

          Peter@AlphaBaseSolutions.com
          https://www.alphabasesolutions.com


          Comment


          • #6
            Re: Upsizing and MYSQL questions...

            So just a couple of screen shots ...

            Link vs non-linked table
            SNAG-0012.jpg

            Menu on linked table
            SNAG-0010.jpg

            Menu non-linked table
            SNAG-0011.jpg

            I only see a "Workspace Genie" not a Table genie...?
            SNAG-0013.jpg

            Comment


            • #7
              Re: Upsizing and MYSQL questions...

              I found the way to re-link the table... I had to re-create it.

              SNAG-0014.jpg

              Comment


              • #8
                Re: Upsizing and MYSQL questions...

                Hi ampapa,

                Make sure in each table you have a primary key and an index for that primary key under MySQL. Have that primary key as an integer. Just so you know MS has a free version as well which is called MS SQL Express. I like it better then MySQL.

                Regards,

                Doron
                The Farber Consulting Group, Inc.

                Main Web Site: http://www.dFarber.com
                Alpha AnyWhere Development

                Comment


                • #9
                  Re: Upsizing and MYSQL questions...

                  Hi AM.Papa,

                  I've converted many dbf tables to MySQL.
                  I typically export the data to a spreadsheet, which then
                  gives me the opportunity to easily insert a column to use as primary key (I typically call it seq).
                  I use ms sql Express and MySQL, but prefer MySQL because triggers, dates, stored functions, and
                  stored procedures are in my opinion, much easier to deal with.
                  Gregg Schmidt

                  Comment

                  Working...
                  X