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

"F" key shortcut

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

    "F" key shortcut

    In the older versions of Alpha Five, as a shortcut you could hit the "f" key for finding a record. Same thing by hitting "e" to enter a new record. This doesn't seem to work in V8. Is this still possible?

    #2
    Re: "F" key shortcut

    I believe you're mistaken. It's Ctrl-F to initiate a find by form; it's Ctrl-E to begin entering a new record. These work the same way in A5v8 that they did in A5v4. -- tom

    Comment


      #3
      Re: "F" key shortcut

      Thanks for the quick reply. Let me clarify. We migrating to V8. We currently use V1 (10 years). In V1 you just hit the "f" key for finding a record. No "alt-f". Same with "e" for enter. Alt-e does work for entering. You are correct but alt-f does not work for finding a record within a database. I know we are ancient for using V1 but it has been very solid over the years.

      Comment


        #4
        Re: "F" key shortcut

        Who said anything about Alt-F or Alt-E? Open any form or use the default form for the table. Then hold down the control key and press F or E without letting the control key up.

        BTW: My copy of A5v7 is copyright, 1996, which is more than 10 years ago. I suspect vers 1 was released well before that.

        Good luck with your migration project.

        -- tom

        Comment


          #5
          Re: "F" key shortcut

          My bad. I meant ctl-f. In V1, you did not need to hold down ctl and hit f, you just hit the key f. We are just trying to keep some of the functions the same for when we have to "retrain" everyone on V8. In V8 if I hold down ctl-e it does enter a new record. ctl-f also appears to enter a new record instead of finding one. I just guessed on the time that we've had V1. We got it when it first came out. Thanks for taking the time to answer my questions.

          Comment


            #6
            Re: "F" key shortcut

            I think that you might actually want Ctrl-K for finding something by an index.

            However, in the help file, go to the index tab and type in "key". Look for an item below that titled "Closing a Form with the ESC Key". Read the example and modify for whatever keys you want to do things on your form.

            Comment


              #7
              Re: "F" key shortcut

              Mark, I didn't mean to sound hostile. I'm on a diet and have discovered that I get a bit cranky when I get hungry! Ctrl-F should not begin a new record. If the table is empty then the form is already in enter mode when it opens. Perhaps that's what you were seeing.

              -- tom

              Comment


                #8
                Re: "F" key shortcut

                Tom, I didn't take it that way. I am very appreciative that you could take the time to try to answer so quickly. We are just trying to figure out some ways to make it easier on our users here when we migrate. We have a lot of catching up to do with V8. Good luck with the diet. I have been on one myself the past few weeks and can relate.

                Comment


                  #9
                  Re: "F" key shortcut

                  This is an issue that also comes up if you are migrating from A4 to A5 (newer versions). I guess V1 was set up to be like A4 but honestly don't remember as I didn't do much with v1 (and wouldn't remember it if I had)
                  Control-hot keys are probably the easiest way once people get used to it. You can also use the onkey events for forms, see the code below. (from the documentation)

                  OnKey Events on Forms
                  Handling Key Events
                  The general approach to intercepting and handling keystrokes in your application is as follows.
                  IF a_user.key.value = "{<Key_to_be_trapped>}" THEN
                  a_user.key.handled = .T.
                  IF a_user.key.event = "down" THEN
                  <Action_to_be_taken>
                  END IF
                  END IF

                  You will then have to set this up for each form, or do it with a global script that runs on the oninit for every form. I was going to do that, but in the end used hotkeys where appropriate.

                  Bear in mind that a lot of places where you could use the onkey event you can do the same thing with xbasic or action scripting. For example if you want to save a record and start another after a certain field is exited, you can do this with action scripting, (save current record, enter new record). If you want a check in between to check if everything is OK with the current record, add a dialog after save and before enter a new record asking if the user wants to start a new record. The default can be yes. Then they will just have to press enter one extra time.

                  Another factor in this is that keyboards are not made like they used to be. At one time the F keys were available on the left side, making them more readily available. Now with them on the top, in my opinion, they are not as naturally available so using them may not really save any time in data entry. (I still use an old Northgate keyboard, one of the best, but now pricey from Avant stellar.)

                  Russ

                  Comment


                    #10
                    Re: &quot;F&quot; key shortcut

                    Mark,

                    I'd caution you against trying to completelyy replicate your vers 1 interface using vers 8. It's possible to set your form up so that when the user presses the "F" key on the keyboard a find begins... but then you have to reprogram all text data entry controls on the form so that the letter "F" will be recognized as a character and not a command. This can be done of course, but it will take a lot of time, and will be error prone. Far better, in my opinion, would be to spend some of that time studying the default (built in) behaviors of vers 8. A lot has changed since vers 1 including the interface. Give the "new" way a fair shake before deciding to abandon it in favor of the way things used to be done. Again, good luck with your project. -- tom

                    Comment


                      #11
                      Re: &quot;F&quot; key shortcut

                      If I am not mistaken, vesion 1 worked in DOS. There was no Windows back then or perhaps Windows 3 one which was text-based not graphics-based.

                      These are two different enviroments and you have to dis-abuse yourself of all old habits. Sure they die hard, but just let them die.

                      Start fresh.

                      Comment


                        #12
                        Re: &quot;F&quot; key shortcut

                        Tom is correct of course, you can do anything, the question is whether it's worth the time.

                        Gabe, Alpha 4 is DOS, Alpha 5 is windows. Alpha 5 ver 1 may have been 16 bit though, I don't remember.

                        Russ

                        Comment


                          #13
                          Re: &quot;F&quot; key shortcut

                          Yes. In A5v1 (it was Windows based - maybe even 3.0), the letter "F" would start a Find operation. Don't bother trying to get that to work in any one of the later versions. As Tom said, it isn't worth the bother. [Edit: Yes, Russ, it was 16 bit.]

                          They can use Ctrl-K, as already mentioned, or here's another idea. It's a bit advanced but not really as difficult as it may sound.

                          Set up an OnKey event (each form has a number of Events, one of them is an OnKey event) to trap the F11 key and have the F11 key press the "Find_btn" button. (I name the Find buttons on all my forms by that name so the OnKey script is common for all forms.) The OnKey script would be like this:
                          Code:
                          IF a_user.key.value = "{F11}"
                              a_user.key.handled = .T.
                              IF a_user.key.event = "down"
                                  parentform:Find_btn.push()
                              END IF
                              END'
                          END IF
                          (Do NOT put this on a form that does not have a Find_btn button or it will generate an error. Error checking could be added to the script shown but that would make it much more complicated. I like simple.)

                          The script on the button could be as simple as "parentform.find()" (which is the same as pressing Ctrl-K) or it could be a more complicated script that runs a specific Find or even runs various finds depending on what the user selects. For example:
                          Code:
                          index = ui_get_list( "FIND BY:", 1, "Customer Name", "Company", "Last Name", "Company ID" )
                          SELECT 
                             CASE index = "Company"
                                parentform.index_set( "Company_" )
                                parentform.find()
                             CASE index = "Last Name"
                                parentform.index_set( "Last_name_" )
                                parentform.find()
                             CASE index = "Customer Name"
                                parentform.index_set( "Cust_name_" )
                                parentform.find()
                             CASE index = "Company ID"
                                cid = ui_get_text( "COMPANY ID", "Enter company ID." )
                                IF cid = ""
                                   END'
                                END IF
                                [COLOR=blue]'If user entered "123" convert to "C0123", etc.
                          [/COLOR]      IF left( cid, 1 ) <> "C"
                                   cid = "C" + padl( cid, 4, "0" )
                                END IF
                                parentform.index_set( "Cust_ID_" )
                                parentform.find( cid )
                          END SELECT
                          END[COLOR=blue]'[/COLOR]
                          This method has the added advantage that you can customize the Find operation for each form because the F11 key then runs whatever script is run by the Find_btn button on that specific form. Each form could conceivably have a different Find action but all would be activated by the F11 key. This also makes the application more user friendly.

                          WARNING: I believe there is also a slightly different action when the Ctrl-K is pressed compared to when the "F" key was pressed in v1. I don't recall exactly what it was but I do recall having to make some minor (but annoying because of the number of Finds that were involved) changes when I upgraded a v1 app to a v5 app.

                          HINT: If you haven't started to make the conversion yet, take the time to go back to the v1 app and name every single script in the application first. Otherwise, you will have to start from scratch figuring out what each action was supposed to do. The system will rename the scripts for you BUT names like {SCP94739934}, etc. won't do you much good in figuring out what each script was used for. ALSO, make sure each script has a unique name. If you name every script on all 25 Close buttons as "Close_form", you will end up with 25 scripts named Close_form.

                          Also, when you convert to v8, all the scripts will be attached to various tables and sets because of how v1 worked. It will be much better if you can get them all in the "database" file in v8. (It won't work any better but I think it will make development and updates easier.) I believe I have a routine that will move them for you IF each script has a unique name. If you're interested, I'll see if I can find the routine but no promises - it's been a long time since I used it.
                          Last edited by CALocklin; 04-12-2007, 09:56 PM.

                          Comment


                            #14
                            Re: &quot;F&quot; key shortcut

                            Here's another hint - applicable to many....

                            Come to the conference in May. You will learn a LOT!

                            Comment

                            Working...
                            X