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

Mask problems

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

    Mask problems

    Hi everyone,

    If I create a character field, say seven characters long, and, in field rules, a simple mask, LL-0000, I have a problem when trying to modify a record via a form, or via the default browse.

    I can overwrite the first character of either "block", i.e. the first of the two alphabetic characters, and the first of the numerics, but no further characters can be changed. The only way is to highlight and delete subsequent characters, then type the changes in. How can I set the application to overwrite the character at the cursor (or even insert, possibly losing the last one)? Has anyone else had this problem?

    Thanks,

    Martin.

    #2
    Hi Martin,
    Actually I was having the same trouble yesterday and decided to give up on the mask. It worked fine on a new entry but on edit was too clumsy. Have you tried toggling the insert key? I am thinking the field is already filled so the cursor will not "insert" any more characters unless you delete them first. Another other option would be to join two fields together with a calculation, so the user must change one of two separate fields to update the field you want to appear masked - which cannot be changed.

    (code_letters+"-"+code_numbers) or some such thing for your calc field.
    Robin

    Discernment is not needed in things that differ, but in those things that appear to be the same. - Miles Sanford

    Comment


      #3
      Thanks Robin,

      I agree with you on all the effects you mention. I have tried the "insert" key with no success. It seems as if the only option is to permit a free-form entry then validate on leaving the field. This means that the mask is useless for modifications, although it seems to work on new entries. I don't know if it's possible to turn off the mask for mods but on for new entries, anyone? This is baffling as it's only doing half the job. I take your point that it seems as if it's trying to insert but doesn't have room, although it DOES permit the overwriting of the first character only. Wierd. I didn't have this problem in ver 4.5. I can't really use your suggestion re two fields as the user would have to press <tab> or otherwise re-focus whilst in the middle of (to the user) the same field.

      I assume that, as no-one has replied with a solution, there isn't one. Or nobody uses masks.

      It looks like my upgrade from version 4.5 to 6, which should represent progress, is going to mean that I have to go through quite a large application re-programming in xBasic every form where there are fields which relied on masks for their input/modification.

      Unless anyone else knows better?

      This combined with a separate post about the display of date formats (it changes when modifying the date! Yes, really!) is going to keep me busy for a while.

      Thanks again, Robin, for confirming that I am not the only one to experience this effect.

      Martin.

      Comment


        #4
        Martin,
        In playing with this mask did you switch between storing the literal mask or not? I just tried it both ways and once the mask is NOT stored it screws up the mask when you go back to edit the field. If you need the mask stored (and had changed it) you may have to try an update to fix it if recalc field rules doesn't do it. It seemed to be what may have caused the edit trouble. Also putting the cursor at the start of unselected text in the default value seems to make a difference.
        Robin

        Discernment is not needed in things that differ, but in those things that appear to be the same. - Miles Sanford

        Comment


          #5
          Hi Robin,

          I have tried various options. I need unselected text (because usually an operator is only changing one or two characters in the whole field and to set it to selected text tends to delete the entire field at the firsr keypress), and always to store any mask literals. I am having real problems understanding the thinking behind the way masks work. All I want to do is to be able to type into a field, overwriting the current content (or inserting if the keyboard is in insert mode) with the mask in effect. So many things in A5, particularly in version 6.0, seem to be far more complicated and ambiguous than they need be. I'm continually having to write little bits of xbasic just to make the system behave like a normal Windows application.

          Perhaps someone from Alpha could explain why masks don't work properly. (I'd also love to hear the official explanation of why date formats vary depending on whether the field is in focus or not, but that's another thread!)

          I think the answer really is: forget masks, they don't work - and write validation routines in xbasic for every relevant field. More late nights!

          Thanks, again, for your input.

          Martin.

          Comment


            #6
            Hi Martin,

            If I create a character field, say seven characters long, and, in field rules, a simple mask, LL-0000, I have a problem when trying to modify a record via a form, or via the default browse.

            I can overwrite the first character of either "block", i.e. the first of the two alphabetic characters, and the first of the numerics, but no further characters can be changed. The only way is to highlight and delete subsequent characters, then type the changes in.
            I was unable to duplicate this issue. I created a simple mask exactly as you described: LL-0000 and was successfully able, via a form, to change all characters without having to highlight anything.

            Perhaps there is something else in field rules or on the form itself that is causing a conflict somehow. If you can attach the table/form in question, I would be happy to take a quick look and see if I can figure it out for you.

            Good luck
            Cheryl
            #1 Designs By Pagecrazy
            http://pagecrazy.com/

            Comment


              #7
              Thanks, Cheryl,

              If you didn't have problems then it must be some simple setting which I haven't yet discovered. It will probably be embarassingly simple.

              So, here is a database, test_mw, which contains a table, test_mw, and a form, mask_form. Try changing the top field, which should contain QX-6666. It will allow me to overtype the Q or the first 6, but nothing else without first deleting, or highlighting, a character.

              I'd be very grateful for your comments.

              Martin.

              Comment


                #8
                Martin,

                In the field rules: position cursor at: end of selected text. See attached.

                Good luck
                Last edited by Cheryl Lemire; 09-13-2006, 10:17 AM.
                Cheryl
                #1 Designs By Pagecrazy
                http://pagecrazy.com/

                Comment


                  #9
                  Yes, I tried that. If I click somewhere in the highlighted text, it becomes un-selected and the problem is the same. If I start to type in the selected text it, of course, deletes the whole text and replaces with what is being typed. This works, but my point was that, if someone has a long field (my example is for demonstration only) they have to first delete the characters they want to replace, then re-type. I want the user to be able simply to position the cursor at a particular place in the string, and then overtype (or maybe insert if the insert key is pressed on the keyboard, but this is less likely) a few characters, with the mask in operation.

                  So, if someone has a field: "QWERTY-208603-291-BBC" for instance, and they want to change, say, the 603 to 704, they don't want the whole field pre-selected because as soon as the operator types any key, the entire text is deleted. I want the text unselected and for the operator to place the cursor between the 8 and the 6, then type, e.g., 704 and for those three character to replace the next three characters so that the field now reads QWERTY-208704-291-BBC.

                  However, I find that the use of masks allows only the first character in any group (those characters between the literals "-") to be changed.

                  You don't say whether you found the same problem?

                  Thanks again for your time.

                  Martin.

                  Comment


                    #10
                    Martin,

                    However, I find that the use of masks allows only the first character in any group (those characters between the literals "-") to be changed.

                    You don't say whether you found the same problem?
                    This is not true. I can change just a few characters in the middle using any of the three options for the cursor in the field rules. The mask is working correctly, we just need to teach ourselves how to edit the data within a masked field.

                    If I use: end of selected text and I have: QWERTY-208603-291-BBC and I want to change the 603 to 704

                    Mouse click in front of the '6' so the text is no longer highlighted, then delete the 603 and type 704.

                    This works the same with the other two options except the text is not highlighted. With the highlighted one, you just need to be careful when you mouse click so as not to delete the entire entry.

                    This is correct behaviour. I can try to explain why, but not sure if I will be successful or not. If you have a character field 12, with a mask: LL-0000-0000 - You are accounting for every character in that field.

                    If you select in the middle of an existing field, Alpha still shows all 12 characters as being accounted for. You must delete the ones you want to change in order for Alpha to recognize there is room for your changes. Simply highlighting them does not tell Alpha they are no longer being used.

                    If you simply click in front of the 6, and try to change it to a 7, Alpha does not allow it because until you delete the 6, all characters in the mask are filled.

                    Does that help?
                    Cheryl
                    #1 Designs By Pagecrazy
                    http://pagecrazy.com/

                    Comment


                      #11
                      Well, yes, thanks Cheryl, it does help in the sense that it confirms that it IS necessary to delete characters before making a change. I wanted to overtype, rather than insert, depending on the <insert> keyboard key (like in WP or Excel, etc.) but, as you say, this is impossible. (I'm still not sure why the first character WILL accept an overtype, even in an already-full field, but the later ones do not; seems an odd default.)

                      Thanks, though, for confirming that I'm not imagining it all.

                      Best wishes,

                      Martin.

                      Comment


                        #12
                        Martin,

                        I guess what it boils down to is what is most important in the application. When in a data entry mode, we almost always are concerned with speed for the data entry person. How important is the validation, the formatting, how many records are entered simultaneously as new records, how many records are edited in the masked fields and how frequently?

                        Robin's idea of creating separate fields could be used without the user knowing any different by using the auto advance in the field rules and strategically displaying the fields on the form so that they appear to be one field. Of course, if you are masking each of the fields, you would still run into the same issue of having to delete a character in order to change it. But now with the smaller fields it may be easier to retype that 4-6 character portion.

                        You can try to use mask() and unmask() in xbasic in place of the field rule, but when you unmask() for editing records, you lose your validation and formatting.

                        It boils down to this .... how often is a particular masked field going to actually be edited. If it is not a lot, then I would stick with the masked field in field rules and just teach the users to delete the portion they need to replace (this really does not take that long, unless they type like me, it is faster to re-type the entire field than to take the time to mouse click).

                        If these masked fields will get edited a lot, then perhaps switching to validation would be better. The biggest difference besides the editing is that the mask stops the user from entering incorrect data as they type where the validation happens after the user has typed the entire field.

                        Typically when entering new records, users want speed ..... yet when editing a record, we are normally not speeding through a lot of fields on a given form making changes, so using the mouse to position the cursor and deleting the unwanted characters is not extremely time consuming from the standpoint of what is trying to be accomplished during the original data entry side of things.

                        Good luck
                        Cheryl
                        #1 Designs By Pagecrazy
                        http://pagecrazy.com/

                        Comment


                          #13
                          I agree with Cheryl. I worked for several years as a computer operator/data entry person. During data entry, speed is of the essence but there has to be a way to verify accuracy and find mistakes before a final posting is done. In correcting data, time is taken to insure it is correct so that you don't have to fix it again.

                          If you are looking at users being able to click where they want to be for the change, why not try holding down the shift key while clicking and highlight what needs to be changed, type the first value (which will erase the items hilighted), then finish putting in the correct alphanumeric chars? It will satisfy the 'partially empty' portion of masking and allow the alphanumeric entry.

                          It is like in word processing, you notice you typed mistaek instead of mistake. You have the choice of placing the cursor at the the end of the word, back spacing twice and then typing ke to correct the word. OR, you can use the mouse to highlight the ek, type letter k which makes the word now mistak and then finish by typing the e to have the correct spelling.

                          Since you appear to want to be able to change portions in the middle and not of specific length, I think the highlight with mouse and replace is the best way to go. Again, this requires the data entry folks to stop and think of what they are doing instead of just typing.

                          My 2 cents worth

                          Oran
                          My two cents worth :)

                          Oran

                          Comment

                          Working...
                          X