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

Xbasic Explorer?

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

    Xbasic Explorer?

    I've run across references to the "Xbasic Explorer" in the A5V9 docs, but if it exists, I can't find it. Sounds VERY useful for learning Xbasic. Does Xbasic Explorer actually exist? If so, how does one really get at it? Thanks.

    #2
    Re: Xbasic Explorer?

    I certainly have found it to be very useful, especially for learning.

    Perhaps the most useful place to access it is with xbasic scripts on forms. In the script editor, go to the top menu and click Task List and then select Xbasic Explorer. Then click Objects, Windows and your form's name. This will give you all the objects on your form, and methods and properties not only for the form but also for every object on your form. Perhaps the most useful properties for fields are .value or .text. but you can learn a lot by playing around with many of the properties and methods.

    Note that you can drag items into your script, dropping them wherever your cursor was in the script (usually on a blank line). For fields this item will begin with the name of the form, as in Form_name:fld_1.value (which you could set to "Smith" with Form_name:fld_1.value = "Smith". Because form names often change during development (mine do anyway) it is a good idea to change "Form_name:" to "Parentform:" (you can do all of them with a Search & Replace). This way the script will work no matter if the name of the form changes.

    You can also access the Xbasic Explorer in the script editor when doing scripts from the Code Tab (same way as above), but of course from there you would not have any form objects.

    Happy Learning!

    Raymond Lyons

    Comment


      #3
      Re: Xbasic Explorer?

      Mr. Lyons;

      Thanks for your reply. I'm assuming that by "script editor" you mean "Code Editor". I'm not being pedantic here, I just want to make sure I'm following. I can follow your instructions only when the Code Editor form is on the screen. Only then does Task List contain the option "XBasic Explorer". Thanks again for taking the time to help a new learner.

      Comment


        #4
        Re: Xbasic Explorer?

        Hi Warren,

        Yes, for someone new to all this I should have written "Code Editor" not "script editor." I might add that I recommend creating a test database with a table with all kinds of fields and then a form with fields, text boxes, buttons, etc. and then a new test button on which you can use the Xbasic Explorer to code all kinds of things relating to the other objects on the form. For example, with the push of the test button change the text in a text box depending on the value in a field. Or hide a field or text box. Or change the font for a field from black to blue. You get the idea--just play around to learn things that you can use later when working on a real application.

        Have fun.

        Raymond Lyons

        Comment


          #5
          Re: Xbasic Explorer?

          Originally posted by Raymond Lyons View Post
          I certainly have found it to be very useful, especially for learning.

          Perhaps the most useful place to access it is with xbasic scripts on forms. In the script editor, go to the top menu and click Task List and then select Xbasic Explorer. Then click Objects, Windows and your form's name. This will give you all the objects on your form, and methods and properties not only for the form but also for every object on your form. Perhaps the most useful properties for fields are .value or .text. but you can learn a lot by playing around with many of the properties and methods.

          Note that you can drag items into your script, dropping them wherever your cursor was in the script (usually on a blank line). For fields this item will begin with the name of the form, as in Form_name:fld_1.value (which you could set to "Smith" with Form_name:fld_1.value = "Smith". Because form names often change during development (mine do anyway) it is a good idea to change "Form_name:" to "Parentform:" (you can do all of them with a Search & Replace). This way the script will work no matter if the name of the form changes.

          You can also access the Xbasic Explorer in the script editor when doing scripts from the Code Tab (same way as above), but of course from there you would not have any form objects.

          Happy Learning!

          Raymond Lyons
          While eating lunch it dawned on me that I should have added that in most contexts you need neither "Parentform:" or the form name ("Form_name:" in my example above). That is, in my example, fld_1.value = "Smith" is all you need. In any case, if you use drag and drop from the Xbasic Explorer, it can be a good idea (see above) to either replace the form name with "parentform:" or just delete the form name and use fld_1.value = "Smith".

          Also note that in many cases form scripts can be moved to and be called from the Code Tab by a button on the form. Since such a script would be called from an appropriate form, even fld_1.value = "Smith" would still work, at least in V9. Whether you would want to or should move such scripts to the Code Tab is another question entirely and my answer would usually be "don't do it" unless you have a very good reason to do so.

          Raymond Lyons

          Comment


            #6
            Re: Xbasic Explorer?

            In Addition, take a look at the Object Explorer. The copy to clipboard will give the correct syntax to use for various objects and their subelements...explicit or implicit.
            Mike
            __________________________________________
            It is only when we forget all our learning that we begin to know.
            It's not what you look at that matters, it's what you see.
            Henry David Thoreau
            __________________________________________



            Comment


              #7
              Re: Xbasic Explorer?

              Originally posted by Raymond Lyons View Post
              ... You can also access the Xbasic Explorer in the script editor when doing scripts from the Code Tab (same way as above), but of course from there you would not have any form objects.
              Not totally true. IF you leave a form open (typically in design mode but it doesn't matter) while working in the code editor, then all those field objects will be shown in the xbasic explorer so you can add them to your script.

              Originally posted by Raymond Lyons View Post
              While eating lunch it dawned on me that I should have added that in most contexts you need neither "Parentform:" or the form name ("Form_name:" in my example above). That is, in my example, fld_1.value = "Smith" is all you need. In any case, if you use drag and drop from the Xbasic Explorer, it can be a good idea (see above) to either replace the form name with "parentform:" or just delete the form name and use fld_1.value = "Smith".

              Also note that in many cases form scripts can be moved to and be called from the Code Tab by a button on the form. Since such a script would be called from an appropriate form, even fld_1.value = "Smith" would still work, at least in V9. Whether you would want to or should move such scripts to the Code Tab is another question entirely and my answer would usually be "don't do it" unless you have a very good reason to do so.
              Here are some alternate thoughts. Neither method is "right". Just another way of looking at it.

              Using "parentform": I prefer to include parentform (or topparent if necessary) simply because it is immediately obvious when I see something starting with those words that I'm working with an object on a form and not just a dot variable. Of course, it doesn't take a lot to figure it out - I just like to add those because it reduces the amount of thought I have to put into editing. I also think it makes it easier for me to find references to form objects - either visually or with a text search - because I can look for a known string - parentform. (I also cheat, typing "parentform" on my system is essentially one keystroke - <Ctrl-Alt-p>. I couldn't survive without my keyboard macro program!)

              Moving script to the Code tab: I usually move any large script to the Code tab. Anything short and simple stays on the button/event. The real criteria are (1) how hard it will be to edit/debug the script and (2) how likely will it be to have to edit/debug the script. If I have to spend any amount of time debugging, it's much faster to "run a test, switch to the code editor, make changes, switch back to the form and start over" than to "run a test, switch the form to design mode, right click the object, open the editor, make the changes, save the form, switch to View mode and start over".

              A third consideration for xbasic scripts would be "how badly do I want to protect the script". To me this is most critical for generic apps. For custom apps I seldom protect the code. If the script is something like "parentform.close()" then I certainly don't need to protect it. However, if it is a critical part of the application then I want to protect it from being tampered with. And if it's something that I consider complex enough that another developer would have a hard time figuring out how to do it, then I want to protect it so someone else can't use it to create their own competing application. Xbasic scripts can be password protected by simply putting a password on a commented first line like so:
              'password MyPassword
              It MUST start with 'password, including the single quote to 'comment' the line, and that must be followed by ONLY your password.

              FWIW, it turns out that Action Scripts in the Code tab can also be password protected if you use the Script Passwords routine in my AIMS Grab Bag. This was a "bonus" because I had no idea it would work when I built the routine. The routine adds or removes passwords from all scripts and functions in the Code tab. On my system it takes about 8 seconds to add or remove all the passwords from 600 scripts. The only thing you need to remember with Action Scripts is that the password will be removed every time you edit the Action Script. Therefore, you must re-run the Script Passwords routine after editing Action Scripts if you want to keep them protected.

              Comment

              Working...
              X