Skip to main content

[archive] Ntf Changed - thread - listbox - 8.1.1

  • March 10, 2010
  • 3 replies
  • 0 views

[Migrated content. Thread originally posted on 04 March 2010]

Not sure if anyone can give me some direction here or not. What I have is a listbox (populated with many items) and an entry field on screen used for searching the listbox. Type into the entry and the listbox shortens the list to the matching items. It all works quite well excpet when we started getting into the 10,000 items in the listbox, users had to wait for it to totally load before they could enter anything in the entry field to narrow the search down.

So I changed the call to load the listbox in a thread and it works well.

Screen1-Ef-1-Ex-Ntf-Changed.
     IF WS-THREAD-HANDLE NOT = ZEROS
           STOP THREAD WS-THREAD-HANDLE
           DESTROY WS-THREAD-HANDLE
     END-IF.
     PERFORM IN THREAD X000-UPDATE-LIST
              HANDLE IN WS-THREAD-HANDLE.


With is code the listbox goes on happily loading while the user types in the search field, and with each letter the thread stops and restarts flawlessly under acuthin.exe but not under wrun.exe, I have no idea why, it seems the Screen1-Ef-1-Ex-Ntf-Changed exception doesn't want to fire under wrun32.exe.

And on a side note I swapped the listbox out for a grid and it too works well under thin client, but when you enter text into the entry field under wrun32 it thows a "number required" warning message, like I have the field set to numeric only but I do not...

Maybe my code isn't very sound or someone could give me some direction on how I can do this so that it will work under both wrun32 and acuthin. I know paged listboxes are what i shoudl be going to, but unfortunately they are not very modern looking and users have no way to tell how many records match their search, and frankly they just are not as user friendly as a scrollbar. I have never seen any other application with paged gids/listboxes outside of acu...

3 replies

[Migrated content. Thread originally posted on 04 March 2010]

Not sure if anyone can give me some direction here or not. What I have is a listbox (populated with many items) and an entry field on screen used for searching the listbox. Type into the entry and the listbox shortens the list to the matching items. It all works quite well excpet when we started getting into the 10,000 items in the listbox, users had to wait for it to totally load before they could enter anything in the entry field to narrow the search down.

So I changed the call to load the listbox in a thread and it works well.

Screen1-Ef-1-Ex-Ntf-Changed.
     IF WS-THREAD-HANDLE NOT = ZEROS
           STOP THREAD WS-THREAD-HANDLE
           DESTROY WS-THREAD-HANDLE
     END-IF.
     PERFORM IN THREAD X000-UPDATE-LIST
              HANDLE IN WS-THREAD-HANDLE.


With is code the listbox goes on happily loading while the user types in the search field, and with each letter the thread stops and restarts flawlessly under acuthin.exe but not under wrun.exe, I have no idea why, it seems the Screen1-Ef-1-Ex-Ntf-Changed exception doesn't want to fire under wrun32.exe.

And on a side note I swapped the listbox out for a grid and it too works well under thin client, but when you enter text into the entry field under wrun32 it thows a "number required" warning message, like I have the field set to numeric only but I do not...

Maybe my code isn't very sound or someone could give me some direction on how I can do this so that it will work under both wrun32 and acuthin. I know paged listboxes are what i shoudl be going to, but unfortunately they are not very modern looking and users have no way to tell how many records match their search, and frankly they just are not as user friendly as a scrollbar. I have never seen any other application with paged gids/listboxes outside of acu...
Well after some research I figured out what the problem was. I had a couple of entries in my config file on my local workstation that were not there in the thin client environment that were causing the issue. I can't remember adding them, but I'm sure it was to try and solve some issues with threads at one time or another.

Anyhow it was these two lines causing the issue when run locally. Without them it works as it should and the same as thin client.

FILE_IO_PEEKS_MESSAGES ON
FILE_IO_PROCESSES_MESSAGES ON

[Migrated content. Thread originally posted on 04 March 2010]

Not sure if anyone can give me some direction here or not. What I have is a listbox (populated with many items) and an entry field on screen used for searching the listbox. Type into the entry and the listbox shortens the list to the matching items. It all works quite well excpet when we started getting into the 10,000 items in the listbox, users had to wait for it to totally load before they could enter anything in the entry field to narrow the search down.

So I changed the call to load the listbox in a thread and it works well.

Screen1-Ef-1-Ex-Ntf-Changed.
     IF WS-THREAD-HANDLE NOT = ZEROS
           STOP THREAD WS-THREAD-HANDLE
           DESTROY WS-THREAD-HANDLE
     END-IF.
     PERFORM IN THREAD X000-UPDATE-LIST
              HANDLE IN WS-THREAD-HANDLE.


With is code the listbox goes on happily loading while the user types in the search field, and with each letter the thread stops and restarts flawlessly under acuthin.exe but not under wrun.exe, I have no idea why, it seems the Screen1-Ef-1-Ex-Ntf-Changed exception doesn't want to fire under wrun32.exe.

And on a side note I swapped the listbox out for a grid and it too works well under thin client, but when you enter text into the entry field under wrun32 it thows a "number required" warning message, like I have the field set to numeric only but I do not...

Maybe my code isn't very sound or someone could give me some direction on how I can do this so that it will work under both wrun32 and acuthin. I know paged listboxes are what i shoudl be going to, but unfortunately they are not very modern looking and users have no way to tell how many records match their search, and frankly they just are not as user friendly as a scrollbar. I have never seen any other application with paged gids/listboxes outside of acu...
Well after some research I figured out what the problem was. I had a couple of entries in my config file on my local workstation that were not there in the thin client environment that were causing the issue. I can't remember adding them, but I'm sure it was to try and solve some issues with threads at one time or another.

Anyhow it was these two lines causing the issue when run locally. Without them it works as it should and the same as thin client.

FILE_IO_PEEKS_MESSAGES ON
FILE_IO_PROCESSES_MESSAGES ON

[Migrated content. Thread originally posted on 04 March 2010]

Not sure if anyone can give me some direction here or not. What I have is a listbox (populated with many items) and an entry field on screen used for searching the listbox. Type into the entry and the listbox shortens the list to the matching items. It all works quite well excpet when we started getting into the 10,000 items in the listbox, users had to wait for it to totally load before they could enter anything in the entry field to narrow the search down.

So I changed the call to load the listbox in a thread and it works well.

Screen1-Ef-1-Ex-Ntf-Changed.
     IF WS-THREAD-HANDLE NOT = ZEROS
           STOP THREAD WS-THREAD-HANDLE
           DESTROY WS-THREAD-HANDLE
     END-IF.
     PERFORM IN THREAD X000-UPDATE-LIST
              HANDLE IN WS-THREAD-HANDLE.


With is code the listbox goes on happily loading while the user types in the search field, and with each letter the thread stops and restarts flawlessly under acuthin.exe but not under wrun.exe, I have no idea why, it seems the Screen1-Ef-1-Ex-Ntf-Changed exception doesn't want to fire under wrun32.exe.

And on a side note I swapped the listbox out for a grid and it too works well under thin client, but when you enter text into the entry field under wrun32 it thows a "number required" warning message, like I have the field set to numeric only but I do not...

Maybe my code isn't very sound or someone could give me some direction on how I can do this so that it will work under both wrun32 and acuthin. I know paged listboxes are what i shoudl be going to, but unfortunately they are not very modern looking and users have no way to tell how many records match their search, and frankly they just are not as user friendly as a scrollbar. I have never seen any other application with paged gids/listboxes outside of acu...
Well after some research I figured out what the problem was. I had a couple of entries in my config file on my local workstation that were not there in the thin client environment that were causing the issue. I can't remember adding them, but I'm sure it was to try and solve some issues with threads at one time or another.

Anyhow it was these two lines causing the issue when run locally. Without them it works as it should and the same as thin client.

FILE_IO_PEEKS_MESSAGES ON
FILE_IO_PROCESSES_MESSAGES ON