Jump to content


Photo
- - - - -

Application.PagingModel


23 replies to this topic

#1 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 20 February 2006 - 10:38 AM

Hi

I am using NT in development - customer is generallyusing XP and Win2003 Server as the statandard

I am using
Client 5.5 524
Kernel 5.5 3.4.5

I am trialing using the Application.PagingModel = "Standard" as described in the V5.5 Properties.

Generally I think there are immediate benefits in using this feature. The Scrollbars and odd/even/highlight shading etc.,

1) Has anbody and "negative" experiences of using this feature (I've not seen any yet, but I have 1000+ screen functions) ?

2) Using this feature the HighlightRecors is set as True for all Paging Screens.
At a System level HOW is it possible set the odd/even/highlight Colors that are used in by this Application.PagingModel feaure.

The Paging Record HighlightColor is this picked up from the proivconst.ini or is it some other file.

tnks

George

#2 Joseph Bove

Joseph Bove

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 756 posts
  • Gender:Male
  • Location:Ramsey, United States

Posted 20 February 2006 - 03:06 PM

George,

1) Has anbody and "negative" experiences of using this feature (I've not seen any yet, but I have 1000+ screen functions) ?

The one thing that is a bit irksome is that way that the scroll bar actually works. As you move the scroll bar up and down wit the mouse, the behavior is not what you would expect.

Otherwise, it's been nothing but a very positive change.

At a System level HOW is it possible set the odd/even/highlight Colors that are used in by this Application.PagingModel feaure.


As far as I know, based on the last time we asked ProIV about this, no.

hth,

Joseph

#3 Kelvin Rapley

Kelvin Rapley

    Member

  • Members
  • PipPip
  • 40 posts
  • Gender:Male
  • Location:BIRMINGHAM, ENGLAND

Posted 21 February 2006 - 12:32 PM

Hi

1) Has anbody and "negative" experiences of using this feature (I've not seen any yet, but I have 1000+ screen functions) ?



kernel: 5.5 3.0.3 running on AIX
Client: 5.5 503

We experimented with this feature this morning; it seemed to work fine in our development area so we sent it live.

A user complained that he wasn't getting his label prints after adding raw material receipts.
We discovered that this was due to a change in the timing cycle. The screen cycle in question previously only executed the mode logic on the way into the cycle - not on the way out when the user canceled or saved off the current record line.
With the Application.PagingModel set to "Standard", the mode logic is executed on the way out when the user cancels or saves off the current record line. This resulted in scratch variables being reset which caused the failure to print labels.

We can easily fix this by moving the code from the mode logic to the cycle entry logic. However we were not expecting any changes to the timing cycle so we have removed the feature in case any other functions are affected.

Regards,
Kelvin

#4 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 21 February 2006 - 01:33 PM

Hi Kelvin, Joseph

Thanks for the feedback

Kelvin
1) You refer to "Mode Logic" - Which Logic Execution Point in the Timing Cycle are you you referring to (Is it the Default Logic of LS ) ?

2) Will you report this problem to Pro-IV ?

Rgds

George

#5 Dan Shannon

Dan Shannon

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 374 posts
  • Gender:Male
  • Location:Australia

Posted 21 February 2006 - 01:47 PM

1) You refer to "Mode Logic" - Which Logic Execution Point in the Timing Cycle are you you referring to (Is it the Default Logic of LS ) ?


You must be using native development then... :)

Mode logic is (theoretically) executed whenever you (i) enter a cycle/subfunction/LS/whatever, or (ii) you change screen mode. It used to be the 'default' logic in pre-5.0 PRO-IV, IIRC; it's still there as the entry logic in native @MOD or @S or whatever it is.

Entry logic is (theoretically) only performed once, when you enter a cycle/subfunction/LS/whatever. Native dev on v5 makes you window on some obscure field to find this one, I seem to remember.

This kind of reminds me of the (v4.0 I think) bug where UMSG("",-1) suddenly caused a core dump on UNIX systems. Random changes to execution of basic functionality are what make us all nervous about the way PRO-IV 'works'.

HTH

Dan

#6 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 21 February 2006 - 02:06 PM

Hi Dan

Thanks for the reply

Yes we are using native, our own "ANOTHER development environment" and supplemented by @MODX where we've not included yet the native features. We may shortly take the jump to VIP !!!

In 99% of LSs we are using the default logic, initialise values, set the SEL command etc., in a copule of instances we may have utilised the Entry Lgc.

Kelvin seems to be reporting that the Default LGC is again executing on the way out of the LS.

I have implemented the Application.PagingModel feature as a button in the Menu of our application, so that it can be easily toggled on/off, so far its only in our Dev environment. We'll carry out more testing of the different type functions prior to decisions on releasing to users.

Rgds

George

#7 Neil Hunter

Neil Hunter

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 414 posts
  • Gender:Male
  • Location:Johannesburg, South Africa

Posted 21 February 2006 - 02:32 PM

I've had problems with sort on column click and Expand/Contract

#8 Kelvin Rapley

Kelvin Rapley

    Member

  • Members
  • PipPip
  • 40 posts
  • Gender:Male
  • Location:BIRMINGHAM, ENGLAND

Posted 21 February 2006 - 02:55 PM

Hi Joseph,

Yes, I was referring to the Default Logic of LS (executed on initial entry to cycle and when mode changes).

I had noticed that paging screens we have developed with "smooth mode" enabled default to lookup mode when the user cancels (or saves) off a record in add mode so I suppose I should not be surprised that the "mode/default" logic is executed. However the user is generally trying to just exit the function by cancelling twice (or hitting F3 twice), he has no intention of changing mode. In the "normal" [presumably now the non-standard] paging screen if the user cancelled off the record in add mode the screen would not revert to lookup mode so he would escape without the "mode/default" logic being executed.

This is all well and good (as I am sure ProIV would argue), its just that we sometimes added logic into "mode/default" logic in the knowledge that it would not be executed when the user exited the screen [in other words, whether it was sensible or not, it worked and got through the testing process].

We now tend to use "smooth mode" and, until today, have not had a problem when developing paging screens from scratch. Unfortunately we cannot convert all of our legacy paging screens to "smooth mode" (standard) using the Application.PagingModel flag without checking out all our instances of "mode/default" logic. Which is a shame because its an excellent feature which would have transformed the look and feel of our legacy paging screens.

I suppose developers have now had time to take advantage of the execution of "mode/default" logic when the user exits the screen so it may be difficult to have a common behaviour between the "normal" and the "smooth mode".

Regards,
Kelvin.

#9 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 21 February 2006 - 03:18 PM

Kelvin

Thanks for the comprehensive feedback, I suppose I need to concentrate the testing on Paging Screens that are Multi-Mode, I think that most of our paging screens are single mode so maybe the "affects" of the new feature wont be too much to handle.

Rgds

George

#10 Kelvin Rapley

Kelvin Rapley

    Member

  • Members
  • PipPip
  • 40 posts
  • Gender:Male
  • Location:BIRMINGHAM, ENGLAND

Posted 21 February 2006 - 04:10 PM

George,

I just tested a "smooth mode" screen that only has add mode and was surprised to find that it still defaulted to lookup mode and executed "default/mode" logic when exiting the screen.

Since moving to dev studio and then VIP we do most of our logic (initialising values, setting the SEL command etc) in the entry logic and only rarely use the default/mode logic. I had a quick look at native (first time in years) and was surprised to find that the default/mode logic is the main logic - the obvious place to initialise variables etc. So, we have a lot more legacy instances of default logic than I first thought.

Kelvin.

#11 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 24 February 2006 - 05:55 PM

Hi Kelvin

In our application to-date we've pretty much ignored the entry logic - its used in less that 20 occurences.

I'm thinking of writing an update to amend the LSDEF.
Identify Screen/GS functions, identify Paging screens (100s of them), where the Entry Lgc not already set then set the Entry Lgc ID with that of the Default (Mode) LGC and set the Default (Mode) LGC ID to blank.

We have very few multi-mode paging screens and would concentrate our testing on these screens.

I've already done this amendment manually to about 20 Paging screens (Lookup, Change, ComboBox Select, Multi-Mode data entry) and dont seem to have any problems, the Entry lgc is working same as the former default logic.

Anybody else got experience of making this kind of Global Change, is there aything to be aware of ?

tgif

George

#12 Joseph Bove

Joseph Bove

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 756 posts
  • Gender:Male
  • Location:Ramsey, United States

Posted 27 February 2006 - 02:23 PM

George,

re: Moving default logic to entry logic

I'm wondering if you might run into some issues with scratch variables and processing based upon it and possbily select logic.

There is one difference between entry logic and default logic. Entry logic is executed once per screen. Default logic is executed both upon entry and any time a user change screen mode.

What the actual ramifications may be is hard to say, but it is something to look out for.

hth,

Joseph

#13 Chris Mackenzie

Chris Mackenzie

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 368 posts
  • Gender:Male
  • Location:Bristol, United Kingdom

Posted 01 March 2006 - 02:46 PM

If anyone is planning moving all default (mode) logic to Entry logic
be aware there may be an effect on some ActiveX controls initialisation
although it probably won't affect most paging screens.

E.g. set up a right click menu in entry logic causes run time error
but no error in mode logic.
The content and views expressed in this message are those
of the poster and do not represent those of any organisation.

#14 George Macken

George Macken

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 248 posts
  • Gender:Male
  • Location:Co. Wicklow, Ireland

Posted 08 March 2006 - 10:08 AM

Hi guys

thanks for the feedback so far with the usage of Application.PagingModel feature

This property is at application level, If I then wish to alter 1 of the attributes on this property in a particular Paging LS can it be done or do the Application settings always take precedence.

I'm using v5.5, Native and our own development tools (no VIP)

What I'm trying to do is set the Paging Cycle Properties for a Paging Screen to Control Screen Appearance (PropertyNames ... OddColor, EvenColor, HighLightColor) .
1) Which Logic Point of the LS/Cycle should be used for setting these properties, Entry Logic or Mode/Default Logic ?
2) What is the syntax for setting the properties, is it CurrentCycle.PropertyName = "whatever" or is it @LS_TAGNAME.PropertyName = "whatever"

I've tried both but am getting Error MSG 78 - wrong point in the timing cycle ...

Is there a particular Manual and Page that refers to what properties can be set at what point in the timing cycle.

Rgds

George

#15 Chris Mackenzie

Chris Mackenzie

    ProIV Guru

  • Members
  • PipPipPipPipPip
  • 368 posts
  • Gender:Male
  • Location:Bristol, United Kingdom

Posted 08 March 2006 - 03:35 PM

Our paging screens always have an outer non-paging characteristic
and properties are set in the mode /default logic of the outer cycle.

Tagname.Property = 'value'

e.g.

pagingcycle1.scroll = 'Standard'
The content and views expressed in this message are those
of the poster and do not represent those of any organisation.



Reply to this topic



  


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users