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

Updating objects for child tables.

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

    Updating objects for child tables.

    I know other people are using separate tables to hold the memo fields. How do you get the "parent/calling form" to update correctly when creating a new memo?

    I have a display form called "Order_form" based on a moderately complex set:
    Order_header
    - 1:M Order_items child
    - 1:M - Other_charges grandchild.
    - - 1:1 Memo table.
    - - 1:1 Client table.

    The problem occurs when a new order has been created and saved and a new Memo is added. (Both of which will be the last record in their respective tables, if that means anything.) A separate form is opened for entering the memo but when the memo is closed, the memo field on the "Order_form" won't update unless I either close the form and re-open it or do a Fetch_prev()/Fetch_next() which causes the form to "flash" and doesn't look very good to users. (Closing the form and re-opening it also works.)

    I've tried multiple combinations of resynch, refresh, and repaint. I've also put these actions in various events and the Close button on the memo form. I've even tried activating various objects before refreshing, etc. - no luck finding anything that works consistently.

    Please note, once a memo has been established, there is no problem updating changes.

    Does anybody have a method that works consistently for NEW memos? If not, child memos apparently have the same 'refresh' issues as browses?

    #2
    RE: Updating objects for child tables.

    Cal,
    Just curious. Is there an embedded browse for the parent record on the main form?
    John

    Comment


      #3
      RE: Updating objects for child tables.

      Hello Cal,

      This is my method when I�m feeling extremely paranoid. I�m not suggesting that this should be done all the time with memo fields.

      I put a 255 length character in the parent table which I�ll call Memo_mirror. The child table containing the memo field is NOT linked to the parent, or in a set used for data entry. Usually when you have a memo field displayed on a form, you only see the first few sentences anyway, so the memo_mirror field is displayed on the form along with a button, Enter/Edit Memo. This button when pushed checks the separate memo table and determines whether there is an existing record in the memo table that corresponds to the current record on the parent form. If there is, I get the memo field value and put it in the A5_rtf_editor() (or Xdialog with rtf control), if not I just bring up an empty A5_rtf_editor(). Then if the user presses Save on the rtf editor I save the memo (or RTF) to the separate table, and populate the parent tables memo_mirror field with the first 255 characters. If the user presses cancel, I throw it all away.

      I have a set with the separate memo table linked in for reporting only.

      Much of my thinking has been influenced by Peter Wayne's approach to memo fields.

      Jim

      Comment


        #4
        RE: Updating objects for child tables.

        Cal,

        I should have mentioned that if I'm not that paranoid, and am going to link in the seperate memo table and display it in a browse, I usually create another 255 character field in the memo child table. I make this a calculated field with the expression:

        RTF_TO_TEXT(theMemoField)

        I do this because in the past, I've had problems locking a memo field displayed on a browse. Even if you restricted the browse, etc, if you click, right click, you can usually get the memo editor to come up. This way, I will only display the calculated field in the browse, keeping the memo out of harms way. I have not had a problem with the calculated field refreshing.

        Good luck,
        Jim

        Comment


          #5
          RE: Updating objects for child tables.

          No, but there is a browse for the 1:M Ord_item table.

          Comment


            #6
            RE: Updating objects for child tables.

            Thanks, Jim, I'll give that a try. I'd read your method before but the reason for the 255 char field hadn't quite clicked.

            The only bad thing about that is that most records will not have memos and carrying a 255 char field along that's mostly empty means an extra megabyte of wasted space each year - not very efficient! I'll check the history and see if I can't pare it down a bit based on the size of existing memos.

            Comment


              #7
              RE: Updating objects for child tables.

              Computers can be frustrating!

              I don't know if it was because of a reboot (although I swear I tried that before) but a simple
              :order_form.refresh_layout()
              is working perfectly - at least for now.

              Comment

              Working...
              X