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

QuickFilter on browse - super fast - QueryRun, not so much.....

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

    QuickFilter on browse - super fast - QueryRun, not so much.....

    I have a grandchild table (in a browse, on a layout/form.)

    I've been able to accomplish what I need with the following line of code attached to button on a form, based on a parent/child/grandchild set:
    (The problem is, it's slow as molasses even after setting the tables index. ~ Although maybe I need to set the index somehow differently as it's a child table of the set the form is based on?)

    Code:
    topparent.QueryRun("Points_TBL->DATE >= {" + dtoc(vd_StartDate) + "} .AND. Points_TBL->DATE <= {" + dtoc(vd_EndDate) + "}","","","NO","Points_TBL",.t.,"")
    
    'Points_TBL is the grandchild table on form.  Parent-->Child-->Points_TBL
    (vd_StartDate and vd_EndDate are values representing the beginning and end dates of the same year ie: 01/01/2010 and 12/31/2010)


    By comparison, I can embed a calculated field on the form to show only the year. And "right clicking" on a field in the child browse and then selecting "QuickFilter" is "rocket-fast... (But it's a user based action that way.) ~ Isn't there any way to apply the "QuickFilter" on a browse column & assign the QuickFilter value via code? (This is just for display purposes, to limit the information presented to user.)

    The only thing I haven't yet tried is to use topparent.QueryRun with an embedded browse calculated field that only shows the year. (ie. 2010)
    I don't think it would matter, as QuickFilter appears to only be filtering the data records presented on the browse, without working on the table/set......

    Notes: This is a .dbf backend. Difference in speed is about 1/4 of a second versus ~25 seconds as windows pointer "spins" before (eventually) displaying the correct results when using the QueryRun code approach.....

    I've also tried to use "between" with Query Run instead, but I've encountered difficulty "encoding" the query correctly..... This may also help with regards to LQO? (But still nowhere as fast as QuickFilter)......
    Last edited by SNusa; 04-03-2013, 04:41 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."

    #2
    Re: QuickFilter on browse - super fast - QueryRun, not so much.....

    Originally posted by SNusa View Post
    I have a grandchild table (in a browse, on a layout/form.)
    What about using this?:

    Code:
    topparent.QueryRun("Points_TBL->DATE >= {" + dtoc(vd_StartDate) + "} .AND. Points_TBL->DATE <= {" + dtoc(vd_EndDate) + "}","","","NO",[COLOR=#ff0000]"<crosslevel>"[/COLOR],.t.,"")
    
    'Points_TBL is the grandchild table on form.  Parent-->Child-->Points_TBL
    Edit: another thought would be to wrap your filter in eval() and/or convert_expression()
    Last edited by MoGrace; 04-03-2013, 07:12 PM.
    Robin

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

    Comment


      #3
      Re: QuickFilter on browse - super fast - QueryRun, not so much.....

      It was worth a shot, but that didn't work. (using "<crosslevel>" as a parameter results in an error)

      Best I can accomplish is using: topparent:CONTROL_BROWSE4.quick_search() attached to the double-click event of the browse.
      Even so, this occasionally exhibits strange results. It usually works (the first time), but after clicking a button that invokes topparent:CONTROL_BROWSE4.show_all()..... I can't get the browse to quick_search() by double clicking on the same field a second time. after invoking the browse.show_all() method.

      (I can't double click on any other field and filter by a different value either, unless: I move to a different grandchild browse column (staying on same record) and back again. ~And moving field to field via code using browse.next() & browse.prev() doesn't work. (it moves the cursor, but it doesn't solve the problem) ~ I have to physically use the mouse & click....... (I also have to move off and back on the parent record [the middle table] via code before doing this.) (which can be done via code)......

      Odd, because I can right click and "call" quickfilter from the menu over and over again without any problems. (after clicking on the browse.show_all() button between filtering to reset the browse to showing everything.) ~ If I could somehow use send_keys() it might work, but there's no key combination for quickfilter.

      Note: I believe that Quickfilter only filters the data reported by the browse. (Same thing goes for browse.Quick_Search().... It doesn't see data "beyond the browse." (That's why it's lightening fast?!?)
      Last edited by SNusa; 04-04-2013, 08:54 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

      Working...
      X