NetTalk Central

Author Topic: NetWebBrowse - Multi-table views, Filters, and Locators.  (Read 7577 times)

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
NetWebBrowse - Multi-table views, Filters, and Locators.
« on: October 04, 2012, 01:45:23 PM »
NetWebBrowse - Multi-table views, Filters, and Locators.

One of the coolest features in NetWebBrowse is the sorts by columns and locators. Unfortunately there are issues with the locator that I wish to draw attention to for possible fixes. I have prepared an example program (attached) with a multi-table view with conditional filters and I have tested it with different “Locator Types.” Below are my issues with each type.  

Position locator type
Does not work well in the example. I believe due to the conditional filter. After the locator value has been entered, the list will position the locator value. However pressing the Next button will reset to the beginning of the list again. This the problem with both string and numerical column sorts. The locator entry line is hidden when all the records can appear on the browse which makes sense for a Position locator type. However should the locator  position value locate records towards the end of the list, then the locator entry line and navigation buttons disappear as if that was all the records in the list. The user will not know what to do or what he has done.  
To show the problem, change the ViewBrowse procedure locator type to Position in the example application and compile. Start the example press the “Other Audits” button and enter “test05” in the locator field, press search button, then the press the  “next” button to see the rest of the records positioned from “Test05”, but you will see that the list has jumped back to the start of the entire list.
To show the disappearing locator and navigation buttons, enter “TEST10” in to the position field.

Starts with, Contains and Search locator types.
These locator types work better than Position type for Columns containing strings. BTW is there any difference between “Contains” and “Search” types? When the sort is on string columns, these locator types will make a subset of records based on the search string. The Next button will page through the subset of the records fine. That being the case, why are the “Previous” and “First” buttons not disabled when the subset is first shown?  The locator entry line is not hidden when all the records can appear on the browse which makes sense for these search locator types. When the sort is on columns with numbers, the locator acts the exact same way as the Position locator type, which is probably the best way for locating numbers or dates, however all the problems listed above for the Position locator still exist.
To show this problem, change the ViewBrowse procedure locator type to “Starts with” in the example application and compile. Start the example press the “Other Audits” button then the press “Project #” column header to set the sort order and enter “2000” in the locator field, press search button, then the next button to see the rest of the records with starting with “2000”, but you will see that the list has jumped back a number of records before “2000”.
To show the disappearing locator and navigation buttons, enter “2230” in to the position field.

I would like to see all the problems fixed, however the fixes that would work for me are the following  for the “Starts with” locator type.
1. The locator entry text line is never hidden for this locator type.
2. The “Previous” and “First” buttons are disabled whenever there are no previous records.
3. When the sort is on columns with numbers, the filter for the locator value should remain after the initial search such that only records that exceed the locator value entered will be seen.

Thanks
Robert Kolanko


[attachment deleted by admin]
« Last Edit: October 05, 2012, 05:50:00 AM by Rob Kolanko »

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #1 on: October 05, 2012, 12:26:20 AM »
I suppose it's worth answering the easy question first;

>> BTW is there any difference between “Contains” and “Search” types?

strictly speaking, yes. In practical terms not so much.
With contains the "locate string" is seen as "one string" regardless of spaces.
So locating on Bruce John needs to find that exact match of characters. It will not match with Bruce Franklin Johnstone

With "search" the list is assumed to be "space separated" which means that each term is distinct. In this case searching for Bruce John would match Bruce Franklin Johnstone. Indeed, since this is an "or" match it would also match with Bruce Henry, and John Townsend.

You can duplicate a contains, when doing a search by using quotes. ie If you had a search filter and you searched for "Bruce John" then it would see that as "one term" and would not match with Bruce Franklin Johnstone.

Incidentally if you wanted to AND the terms instead of OR them then you could search on +Bruce +John and then it would match Bruce Franklin Johnstone, but not John Townsend.

The reason underlying creating the locator as a new option, rather than just modifying the Contains was because the behavior was considered different enough to cause problems for people already using Contains.

I'm working through your other questions now.

cheers
Bruce

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #2 on: October 05, 2012, 12:32:02 AM »
Rob - I think you attached the wrong app as an example. It suspiciously contains absolutely no browses...

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #3 on: October 05, 2012, 05:52:22 AM »
Ooops. The zip file on the orignial post has been corrected.
Rob Kolanko

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #4 on: October 09, 2012, 05:29:34 PM »
Hi Bruce,
Are you able to compile the corrected example download? The correct example program is called View01.APP
Thanks Rob

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #5 on: October 09, 2012, 09:32:38 PM »
sorry Rob - been bogged down for a couple days getting some admin stuff done - I hope to get back on NetTalk by tomorrow or Friday...

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #6 on: October 17, 2012, 10:00:39 PM »
Hi Bruce,
Well, it has been a week. Have you had a chance to look at the example that I prepared? Do see the problems with the locater?
Thanks,
Rob Kolanko

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #7 on: October 19, 2012, 02:13:39 AM »
Hi Rob,

yes, I have been looking at it, but the effect is very subtle. Some of the effects you've discovered are very specific (for example, they mostly don't exist in SQL) partly because some of the file functions work differently for TPS and SQL. What I'm trying to find is the combination that works best for both situations.

I'll keep you posted as I make progress.

cheers
Bruce

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #8 on: October 19, 2012, 10:49:48 AM »
Hi Bruce,
I very much appreciate all the work that you do on this product, however I do not consider the effects as "very subtle". When simply locating by position causes the locator and navigation buttons to disappear leaving the user confused, or if the navigation buttons remain, they do not page properly, are not subtle effects. The locator is broken. Sorry to be direct, but from your reply, I did not think that the problem would not receive much more attention.

Rob 

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #9 on: October 19, 2012, 10:51:32 PM »
Hi Rob,

sorry, you misunderstood me.
I meant "subtle" in the context of the code that has to be altered, not "subtle" in the sense that the feature is not important.

The code to manage the Browse view is very precise because it's handling Views, and view positions across threads, using a variety of database drivers (sql and isam behaving differently) and then on top of that with a variety of "ancillary" behaviours. So I have to be very careful about what changes are made - it's not as simple as making it work "in one program" if you get my meaning.

So yes, I am working on it (I use locators myself all the time) and I hope to have the fix out in the next build.

sorry for the confusion.

cheers
Bruce

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #10 on: October 21, 2012, 09:52:11 PM »
>> That being the case, why are the “Previous” and “First” buttons not disabled when the subset is first shown?

fixed in 6.48

>> When the sort is on columns with numbers, the locator acts the exact same way as the Position locator type,

it actually changes to the Position type for numbers and dates, so this would be expected. (you'll see the locator prompt text changes with these columns as well.)

>> 3. When the sort is on columns with numbers, the filter for the locator value should remain after the initial search such that only records that exceed the locator value entered will be seen.

this would actually solve the whole problem with the position locator, but I suspect would have some backlash. ie the point of a position locator is designed to be just that, a "point" - which in turn allows the user to scroll up or down from there. I suppose it's possible to have a "From Position" type locator - where you can scroll forward (but not backward) but I think that may be undesirable in most cases. (just guessing though.) - I'd be interested in your thoughts on this;

cheers
Bruce





Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #11 on: October 22, 2012, 07:06:58 AM »
Hi Bruce,
Quote
>> 3. When the sort is on columns with numbers, the filter for the locator value should remain after the initial search such that only records that exceed the locator value entered will be seen.

this would actually solve the whole problem with the position locator, but I suspect would have some backlash. ie the point of a position locator is designed to be just that, a "point" - which in turn allows the user to scroll up or down from there. I suppose it's possible to have a "From Position" type locator - where you can scroll forward (but not backward) but I think that may be undesirable in most cases. (just guessing though.) - I'd be interested in your thoughts on this;

The "#3" suggestion is only a fix for the "Starts with" locator type. From the debug of filter string, I noticed how the templates were positioning the browse in the "Starts with" locator and thus the suggestion. Thus the "Starts with"  locator type would use a "From Position" for number and date columns. It may be a stretch, but I think that you would not need to change the "Starts with" locator prompt when the sort changes to number and date columns for this locator type. Also with this change, the locator prompt and field should be left on when the navagation buttons disappear to allow the user to "reset" the browse.

This suggestion does not make sense for the Position locator type as the user will expect to scroll each way after positioning the browse. Would the concepts from the clarion browse templates be of any help?

Thanks Rob Kolanko
« Last Edit: October 22, 2012, 12:23:19 PM by Rob Kolanko »

Bruce

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 11250
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #12 on: October 23, 2012, 02:23:59 AM »
Hi Rob,

I think a little background is in order here.  There are two "kinds" of locators. Positional and Filtered.

Position is obviously positional, across all column types.

Filtered are Begins With, Contains and Search - but ONLY on String columns. Number and Date columns are always Positional. (It literally changes to a Position locator for these columns.)

So my suggestion is not related to Starts with because I specified that it would only apply to numbers, and Starts-with does not work on numbers.

I'm not sure what you mean by "concepts from the clarion locators" - I think I understand how I want to locators to work - the problem is making them work in the specific case of your example. (There are a number of things affecting your example which make it break in that case.)

I most likely won't use my earlier suggestion of a new locator type as my current research shows that may not help. I think for TPS a slightly different approach will be required.

Cheers
Bruce


Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #13 on: October 23, 2012, 06:45:09 AM »
Quote
Filtered are Begins With, Contains and Search - but ONLY on String columns. Number and Date columns are always Positional. (It literally changes to a Position locator for these columns.)

So my suggestion is not related to Starts with because I specified that it would only apply to numbers, and Starts-with does not work on numbers.
Hi Bruce,

I am aware that locator always changes to positional on number columns, but there is no law that says it has to. As you mentioned, leaving the filter on would fix the positional issues on number columns except that  the user will not be able to page back before the value entered by the user. I think that this limitation is acceptable for the “begins with” locator type.  Whether this is “positional” or “filtered” type does not matter to the user. It is simply a suggestion for a partial solution as the positional locator fix for TPS files sounds like it will be a challenge.

Regards,
Rob

Rob Kolanko

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: NetWebBrowse - Multi-table views, Filters, and Locators.
« Reply #14 on: November 08, 2012, 08:11:16 AM »
Hi Bruce,
I wish to bring the locator issue to the forefront. It is biggest flaw in my application that hoping to release very soon and there is no workaround. Besides the incorrect paging after locating by position documented in my example, if the user locates a record within the last page of records, the locator and the navigation buttons disappear. The only way to reset the browse is to leave the page and come back or refresh the page.

Thanks
Rob.