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

Why does <OBJECT>.CHILD_GET() appends "�" to value returned? FYI:alltrim() fixes this

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

    #16
    Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

    Post removed by user: ~ "Suffering from POSTITIS"
    Last edited by SNusa; 02-28-2012, 02:33 PM. Reason: POSTITIS
    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."

    Comment


      #17
      Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

      Robert:
      Either the poor hamster is dead and long gone to hamster heaven, or you are beginning to suffer from a very serious condition, namely: "Message Board Postitis".
      Please go back to post#5 and tell me where do you see my name there?

      Comment


        #18
        Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

        Originally posted by G Gabriel View Post
        Robert:
        Either the poor hamster is dead and long gone to hamster heaven, or you are beginning to suffer from a very serious condition, namely: "Message Board Postitis".
        Please go back to post#5 and tell me where do you see my name there?
        WOW.... NOW I SEE.... I guess I am suffering from "POSTITIS" ~ I feel like windows vista after "slipping a bit."
        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."

        Comment


          #19
          Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

          Can we please say a little prayer and give the poor hamster a good burial?
          He was a good hamster. He had a good life, but like anything else, all good things must come to an end.

          Comment


            #20
            Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

            Originally posted by G Gabriel View Post
            Can we please say a little prayer and give the poor hamster a good burial?
            He was a good hamster. He had a good life, but like anything else, all good things must come to an end.
            Too funny, I obviously replied to Stan's post which had a similar code example, thinking it was yours........

            I guess it's about time for me to disappear for a week or so. Heading tomorrow AM for FL. (vacation / visit family)....
            No cellphones, no computers, no tablets, virtually "no nothin"......

            I've literally been learning the depths of a5 (desktop X-basic) for 15+ hours a day, 7 days a week for over a month now. ~ "Brain Strain!"
            Learning a5 has been a 15 year goal of mine. I decided since I finally had the time, I had better do it now.
            (Had I waited much longer it would presumably have ended up on my "bucket-list.")
            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."

            Comment


              #21
              Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

              Originally posted by Stan Mathews View Post
              .child_get() without the optional numeric parameter returns a list of the child tables for the parent specified in the table pointer. Thus the crlf() after each entry in the list.

              [ATTACH=CONFIG]31100[/ATTACH]

              Stan's post makes sense to me.... (~Since there is only one child table, the � (return) is included.)

              Now that I'm back on track, I guess my question all along should have been related to the append() function.

              According to the wiki help: NOTE : ALLTRIM() does not remove CR, LF, or Tab characters.

              Having found (through trial and error) that alltrim() did seem to remove the � from the end of the string:
              So why does this (enclosing vp_Table.child_get() in the append function) effectively work here???

              .....Thinking crlf() (unlike CR, LF, or Tab characters) is actually processed and stripped by the alltrim() function.
              Last edited by SNusa; 02-28-2012, 03:38 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."

              Comment


                #22
                Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                You can always see for yourself what it does.

                tst = "abc"
                ? tst
                = "abc"

                ? len(tst)
                = 3

                ? len(alltrim(tst))
                = 3

                tst = "abc"+crlf()
                ? tst
                = abc


                ? len(tst)
                = 5

                ? len(alltrim(tst))
                = 3
                There can be only one.

                Comment


                  #23
                  Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                  Thanks Stan, "got it"...

                  I had thought this may have been the case. I was "headed down that path" prior to your last post.
                  (I wasn't able to finish editing my previous post, due to a call coming in.)
                  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."

                  Comment


                    #24
                    Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                    That leaves one wondering what the wiki note means.
                    There can be only one.

                    Comment


                      #25
                      Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                      According to the wiki help: NOTE : ALLTRIM() does not remove CR, LF, or Tab characters.
                      Originally posted by Stan Mathews View Post
                      That leaves one wondering what the wiki note means.
                      Is a LF considered the exact same as crlf() ??

                      ~ If so this appears to be a documentation "inconsistency" re: the alltrim() function. (in the wiki anyways)....
                      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."

                      Comment


                        #26
                        Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                        Originally posted by SNusa View Post
                        Is a LF considered the exact same as crlf() ??

                        ~ If so this appears to be a documentation "inconsistency" re: the alltrim() function. (in the wiki anyways)....
                        http://blog.sqlauthority.com/2009/07...new-line-char/
                        Andrew

                        Comment


                          #27
                          Re: Why does &lt;OBJECT&gt;.CHILD_GET() appends &quot;�&quot; to value returned? FYI:alltrim() fixes

                          Hi Robert,

                          Originally posted by SNusa View Post
                          Is a LF considered the exact same as crlf() ??
                          ~ If so this appears to be a documentation "inconsistency" re: the alltrim() function. (in the wiki anyways)....
                          If trim(), rtrim() and alltrim(), did not trim those characters, an extreme number of key built-in functions in Alpha Five would fail all over the place.

                          If you like danger, just create a global function called alltrim() in a database that doesn't do the trim, and all of the sudden, everything will probably start failing right after you save the function. You probably will totally disable that database. If you want to try it, make sure it's a new database in it's own directory, and delete the database afterwards.

                          Alpha often uses one or the other, e.g. a LF (same as chr(10) ) is used internally for editor functions because it simplifies aspects of processing, but it is converted back for display and storage.

                          There are also other systems, often LINIX/UNIX-based, that only use a LF or a CR as delimiter of a line. Some systems also have LF+CR instead of the more typical CR+LF. Any data (e.g. a CSV file) coming from other unspecified systems have to be prepared to modify the data as needed.

                          For the most part, Alpha's definition of a line separator is CR+LF, so make sure you present it that way if a function parameter is a "list".

                          Also, in the debugger, RTF fields and probably some other places, Alpha shows a CR LF sequence (typically meaning a hard Carriage Return) as a the "�", so the CR+LF is visible.

                          Here is some test code of various examples from A5v8 and it's results.

                          Code:
                          ?alltrim("abc"+crlf())
                          = "abc"
                          ?len(alltrim("abc"+crlf()))
                          = 3
                          ?rtrim("abc"+crlf())
                          = "abc"
                          ?len(rtrim("abc"+crlf()))
                          = 3
                          ?alltrim("abc"+chr(10))
                          = "abc"
                          ?len(alltrim("abc"+chr(10)))
                          = 3
                          ?rtrim("abc"+chr(10))
                          = "abc"
                          ?len(rtrim("abc"+chr(10)))
                          = 3
                          ?alltrim("abc"+chr(13))
                          = "abc"
                          ?len(alltrim("abc"+chr(13)))
                          = 3
                          ?rtrim("abc"+chr(13))
                          = "abc"
                          ?len(rtrim("abc"+chr(13)))
                          = 3
                          ?alltrim("abc"+crlf(2))
                          = "abc"
                          ?len(alltrim("abc"+crlf(2)))
                          = 3
                          ?rtrim("abc"+crlf(2))
                          = "abc"
                          ?alltrim("abc"+crlf()+" "+crlf())
                          = "abc"
                          ?len(alltrim("abc"+crlf()+" "+crlf()))
                          = 3
                          ?rtrim("abc"+crlf()+" "+crlf())
                          = "abc"
                          ?len(rtrim("abc"+crlf()+" "+crlf()))
                          = 3
                          ?alltrim("abc"+crlf()+chr(9)+crlf())
                          = "abc"
                          ?len(alltrim("abc"+crlf()+chr(9)+crlf()))
                          = 3
                          ?rtrim("abc"+crlf()+chr(9)+crlf())
                          = "abc"
                          ?len(rtrim("abc"+crlf()+chr(9)+crlf()))
                          = 3
                          ?trim("abc"+crlf()+chr(9)+crlf())
                          = "abc"
                          ?len(trim("abc"+crlf()+chr(9)+crlf()))
                          = 3
                          Last edited by csda1; 02-29-2012, 01:20 PM.
                          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

                          Working...
                          X