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

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

Infinite Loop

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

    Infinite Loop

    Ok, here's a good one!

    I have a script that loops though a set and updates the master record with the contents of details.

    It works great until it hit's the 16th record, a number
    very suspicious in programming.

    I have ruled out bad indexes and structures.

    Details are included in the readme.txt included in the zip.

    I'll be at the A5 conference, so if anyone can find an error in the script logic that causes this, I'll buy them diner (or a reasonable facimile. :)

    TIA,
    Melvin

    #2
    RE: Infinite Loop

    that's dinner, not diner. Pardon my quick typing. :)

    Comment


      #3
      RE: Infinite Loop

      Melvin

      While I am having trouble following the logic of the script, I do see that you fetch the child records, but never fetch the next parent. Is this what you want?

      If the purpose of this script is to take the memos from each child and add it to the memo already in the parent, this seems like a convoluted way to get there. Since you have the set open, which opens the child table, I am not sure why you are trying to apply a range and an index to these records. The child records are linked to the parent with the linking expression. If you need to search the child records in some other way, you will probably have to open another instance of the child table or just fetch each child and only act on it if it meets some criteria.

      Jerry

      Comment


        #4
        RE: Infinite Loop

        Jerry,

        To clarify, the set is opened with dbhsum as the handle
        dbhsum.fetch_next(2) means fetch through the set at the
        child level. This is documented in the xbasic help
        and it works.

        The script does what it is intended to do, which is
        a batch posting of comments. The only problem is
        as noted already.

        If you edit the script, and insert a debug(1)
        before the fetch loop begins, you can monitor what
        occurs, by watching the following fields

        dbhsum.admit_num

        Comment


          #5
          RE: Infinite Loop

          Melvin

          Attached is a different method to combine comments from the child to the parent. This opens both the parent and child separately and does not write to an external file. This runs fairly fast on my computer. It took about 3 seconds to run using your sample data.

          Jerry

          Comment


            #6
            RE: Infinite Loop

            i don't think it has anything to do with it being the 16th record. your admit_num that causes the problem is the first one that appears twice in cmcom.dbf. there is almost certainly an error in your logic that fails when it encounters 2 comments with the same admit_num.

            Comment


              #7
              RE: Infinite Loop

              Jerry,

              You'll not go hungry this weekend.

              Tom

              Comment


                #8
                RE: Infinite Loop

                Jerry,

                Thanks much! Your mods do indeed work. I was converting A5v1 code, and because it was successful in eliminating
                problems I had iwth memo fields, I kept the technique of
                writing to, and reading from, a temp file.

                I think the real problem stems from my doing an update
                dbhcom.change_begin on the detail after the master was
                updated. I think that the pointer was being reset somehow.

                There were a couple of glitches in the 'fix', but I've amended them and am reposting for you to review.

                Anyway, a promise is a promise. No sign of snow on the Island today, so if the Orient Point ferry doesn't sink with me on it, I should be at the conference by 8:30 9:00 pm 'ish. If you want a late dinner, let me know, otherwise tomorrow or sat. (but not both) is also good. :)

                Much thanks,
                Melvin

                Comment


                  #9
                  RE: Infinite Loop

                  Melvin

                  I have not had much luck converting A5V1 code. There are so many improvements in the current version, I end up rewriting just about everything. Your changes are nice enhancements. I was just creating a "quick and dirty" approach to see if the concept would work in your case.

                  One of the lessons I have learned is to keep the actions as simple as possible, only open tables when I need them, and only do what needs to be done. The simpler, the better. The nice thing about A5 is that there are many ways to get the same result. The method I posted works, but I suspect there are other ways to get the same result.

                  I am coming to the conference, but will arriving very late this evening, so I will see you Friday. Dinner is not necessary.

                  Jerry

                  Comment


                    #10
                    RE: Infinite Loop

                    OK, Friday it is.

                    It will be my pleasure to meet you.

                    Melvin

                    Comment

                    Working...
                    X