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

Sorting a dropdown

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

    Sorting a dropdown

    Hello all, (A5V9 Web)
    I've searched the forum but I don't seem to come across an answer that works - plus, I'll sometimes try to find that answer again and can't so I'll post and hope someone can help.

    I want to sort a dropdown box. I setup a simple test using A5 table genies. I created a Grid and used a field as a dropdown (Dynamic). From another post by Steve Wood (I can't find it again now) I remembered seeing something along the lines of using table.external_record_content_get() and so I created the following - see screen shots. The first screen shows how I thought I'd seen it done in a post from Steve Wood and the second one is the error I get when switching to Live Preview. Can anyone see what I'm doing wrong?

    Thanks
    -John

    #2
    Re: Sorting a dropdown

    Close. Take the expression out of your grid and put it in the A5W page that contains the grid (or anywhere PRIOR to when your grid is opened. Change the expression so that it populates a session variable.

    session.mylist = table.external.....

    Then in the grid, make your dropdown source a Variable, and assign it that session variable. You can sort your list using the Order parameter in the function.
    Steve Wood
    See my profile on IADN

    Comment


      #3
      Re: Sorting a dropdown

      Note - you could also use a Lookup rather than a dropdown, you can control the order in the lookup grid.
      Steve Wood
      See my profile on IADN

      Comment


        #4
        Re: Sorting a dropdown

        Thanks Steve, I'll give both a try so I will know both methods for next time. I'm a little shakey on the first method so once I try it I may have to post back.

        Thanks


        Originally posted by Steve Wood View Post
        Note - you could also use a Lookup rather than a dropdown, you can control the order in the lookup grid.

        Comment


          #5
          Re: Sorting a dropdown

          John,

          You were on the right track with your first idea. But don't use the table.external...

          I believe that whatever expression you use to create the drop down display values is used to order the choices alphabetically.

          See my example.

          --Stephen
          Stephen Pilon
          Associate Librarian
          Christendom College

          Comment


            #6
            Re: Sorting a dropdown

            Hi Stephen,
            Thanks for the reply and that's a good option that I will keep in mind. My problem though is that I do not want to see the field I'm sorting on, for example:
            A 4
            B 2
            C 3
            D 1

            in the dropdown needs to look like
            D
            B
            C
            A

            I can still use your idea on other dropdowns though!

            Thanks

            -John

            Originally posted by StephenP View Post
            John,

            You were on the right track with your first idea. But don't use the table.external...

            I believe that whatever expression you use to create the drop down display values is used to order the choices alphabetically.

            See my example.

            --Stephen

            Comment


              #7
              Re: Sorting a dropdown

              Hi Steve,
              I did as you suggested and it works well except how do I now specify the field I want to store in the database?

              Field Sort Order ID
              Cucumber 2 800
              Grape 3 850
              Apple 1 900

              In the drop down I'd like to see
              Apple
              Cucumber
              Grape

              When the user clicks Grape I want the database to store 850, not "Grape". Is that possible?

              Thanks again.


              Originally posted by Steve Wood View Post
              Close. Take the expression out of your grid and put it in the A5W page that contains the grid (or anywhere PRIOR to when your grid is opened. Change the expression so that it populates a session variable.

              session.mylist = table.external.....

              Then in the grid, make your dropdown source a Variable, and assign it that session variable. You can sort your list using the Order parameter in the function.

              Comment


                #8
                Re: Sorting a dropdown

                I never noticed that if you select Variable, the choice to input something other than the variable (in whole) is saved as the value. I'll have to think about this. I will also send a note to Alpha that I think this should allow a different value saved to the table.

                if the var contained "apples | 1001", you should be able to save word(var,2,"|") (or "1001") to the table.
                Steve Wood
                See my profile on IADN

                Comment


                  #9
                  Re: Sorting a dropdown

                  John,

                  How about this for a solution? I created a drop down field, and filled it with static data of:

                  One
                  Two
                  Three

                  Then I went to the Properties section, and under Other Properties, added this line (as shown in the attached picture):

                  tmpl.field_info[1].DropdownBox.Choices = table.external_record_content_get("[PathAlias.ADB_Path]\job","name-'|'+jid","department",".t.")

                  Is this what you are looking for?

                  --Stephen
                  Stephen Pilon
                  Associate Librarian
                  Christendom College

                  Comment


                    #10
                    Re: Sorting a dropdown

                    Hi Stephen,

                    Thanks for the reply. I don't think I'm as familiar with xBasic or web pages as you are so your example has me a little lost.

                    The section that has line numbers, where is that from? Is it from a A5w page? And the pipe sysmbol | can you tell me what that does? I did try a quick example and I got pretty lost. I may just live without this feature for now (it's not a show stopper in my app) and hope Alpha can put that option in for v10 :)

                    I surely do appreciate all the responses.

                    Thanks
                    -John

                    Originally posted by StephenP View Post
                    John,

                    How about this for a solution? I created a drop down field, and filled it with static data of:

                    One
                    Two
                    Three

                    Then I went to the Properties section, and under Other Properties, added this line (as shown in the attached picture):

                    tmpl.field_info[1].DropdownBox.Choices = table.external_record_content_get("[PathAlias.ADB_Path]\job","name-'|'+jid","department",".t.")

                    Is this what you are looking for?

                    --Stephen

                    Comment


                      #11
                      Re: Sorting a dropdown

                      John,

                      The section with line numbers in the background of the image is the XBASIC tab near the bottom of the screen on the Grid Builder. I left it there to show where I looked up the info I needed for the Other Properties section.

                      The window with line number in front is the Other Properties box from the Properties section. You need to click the section to open it.

                      The '|' pipe symbol denotes a pairing of "Displayed Value|Stored Value".

                      The idea is to create any old dropdown just to define it, then use the Other Properties to redefine it using the table.external_record_content_get() function, which allows you to filter your results, order them any way you want, and return data formatted any way you want.
                      Stephen Pilon
                      Associate Librarian
                      Christendom College

                      Comment


                        #12
                        Re: Sorting a dropdown

                        Stephen/John,

                        This solution works nicely. I've never used that Other Properties section, but I see its value. John - putting the code in the Other Properties instead of where I suggested is important. My suggestion creates a variable when the page is loaded, then the DropDownBox alphabetizes it. Stephens solution creates the list directly and it stays ordered by the ORDER field in the expression.

                        The Other Properties are in the Properties for the Grid, at the very bottom, under the Advanced tab.
                        Steve Wood
                        See my profile on IADN

                        Comment


                          #13
                          Re: Sorting a dropdown

                          John,

                          Attached is a very simple example database. I hope it helps.

                          --Stephen
                          Stephen Pilon
                          Associate Librarian
                          Christendom College

                          Comment


                            #14
                            Re: Sorting a dropdown

                            Stephen/Steve

                            I didn't see these replies until just now. I'm trying this out on a test database and then I'll put it into my real one.

                            Thanks both of you for the help
                            -john


                            Originally posted by StephenP View Post
                            John,

                            Attached is a very simple example database. I hope it helps.

                            --Stephen

                            Comment


                              #15
                              Re: Sorting a dropdown

                              Sorry, John,

                              I forgot to include the web project files in my example.

                              --Stephen
                              Stephen Pilon
                              Associate Librarian
                              Christendom College

                              Comment

                              Working...
                              X