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

Break up a Memo Field

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

    Break up a Memo Field

    I have a client that has 6 memo fields in one table. They have come up against the 2 gig limit, so they can't add any more records. Each memo field has less than 1,000 characters in the memo fields.

    I want to bread each memo field up into 4 different character fields of 255 characters.

    Anyone have a suggestions on how to best accomplish this?

    Thanks,

    Dan
    Dan

    Dan Blank builds Databases
    Skype: danblank

    #2
    RE: Break up a Memo Field

    Not sure that changing the table structure will save space. Each character field you define will be filled with blank spaces even if the text you place there does not run the full width of the field.

    Having said that, I think the answer to your question lies reading the memo field text into a character type variable. This will give you one long string of characters, punctuation marks, and linefeed carriage return pairs. You then would have to parse the resulting string to assign portions of it to different table fields.

    -- tom

    Comment


      #3
      RE: Break up a Memo Field

      Hi Tom,

      Thanks for responding! I can get the memo field into a character varialble. It is the parsing that I don't know how to do. Never 'parsed' before.

      Any suggestions?

      Thanks,

      Dan
      Dan

      Dan Blank builds Databases
      Skype: danblank

      Comment


        #4
        RE: Break up a Memo Field

        Others will probably have better suggestions.

        But a brute force approach would determine the length of the text in the variable, and then divide it by 4. Then you could use the substr() function to carve blocks of characters out of the single long string. You could then examine the final character in each block. If it's not a space or a crlf pair it's probably in the middle of a word, So you'd have to borrow characters from the next block.

        An alternative would be to step through the string from left to right counting chars as you go. As each char is retrieved you examine it to see if its an alphanumeric, a space, or a cr or a lf. As each is processed you tack it onto a separate variable you build one char at a time. Once you get near the field width you're shooting for you keep counting and processing each char until you hit a space or crlf pair. The new variable you're building is saved to disk and emptied. You resume processing characters from the last position, continuing until all are processed.

        -- tom

        Comment


          #5
          RE: Break up a Memo Field

          Dan

          The easiest way to approach this is to break up the memo field's into separate tables (each having a 2 Gig limit - it might be more under NTFS file system of XP depending upon where the limitation is). Create 6 tables having a 1:1 link field and a memo field.

          Then copy each memo field into each of the tables to hold it.

          As background, all memo fields in a table are stored in the same memo file. If you don't compact the memo field table it will grow every single time you save a memo field by about 512 bytes. To compact it, you basically need to copy the table records to a new table, and then move the copy back to the original location.

          Regards,

          Ira
          Regards,

          Ira J. Perlow
          Computer Systems Design


          CSDA A5 Products
          New - Free CSDA DiagInfo - v1.39, 30 Apr 2013
          CSDA Barcode Functions

          CSDA Code Utility
          CSDA Screen Capture


          Comment


            #6
            RE: Break up a Memo Field

            Ira, thanks. You've helped me see the forest, after I became engrossed in counting leaves on one of the trees! -- tom

            Comment


              #7
              RE: Break up a Memo Field

              Hi Ira, and Tom,

              Ira, thanks for the suggestion I will probably go this route as it is the easier way to go. I just hope this will preform well over a network. I really hate using memo fields over a network. We shall see!

              Tom, Your idea will probably be my second choice if the memo fields cause to many problems over the network.

              Thanks for your help!

              Dan
              Dan

              Dan Blank builds Databases
              Skype: danblank

              Comment


                #8
                RE: Break up a Memo Field

                Dan,

                Not sure what your concern is with "using memo fields over a network". I have lots of tables w. memos and I use them over the network everyday. But I do try to follow Peter Wayne's advice - a.k.a. "Memo fields that work".

                Peter
                Peter
                AlphaBase Solutions, LLC

                [email protected]
                https://www.alphabasesolutions.com


                Comment

                Working...
                X