Twirly help

Chris Kelleher

Administrator
Staff member
Could someone please give me the correct sequence of the include programs
necessary to get the twirly to twirl? We are coverting programs from Symix
4 to Syteline 4.5.

I believe I need:

{lib/vcounter.i}
{lib/work-on.i}

Then in the process: {lib/counter.i &no-twirly=no}

{lib/work-off.i}


What am I missing as this does not work?

Thanks!!
Barb Roels
US Filter/JWi
 

Chris Kelleher

Administrator
Staff member
I think you have it already, well almost..
I'm running 3.5b00a and the followng sequence works for me.
It must be in a loop to work such as FOR EACH statement.

{lib/vcounter.i}

{lib/work-on.i}

/****Loop starts here****/

{lib/counter.i} /***Don't include this "&no-twirly=no" ***/

/****Loop ends here****/

{lib/work-off.i}


I hope it helps.

Randy

Randy Brazeau
Data Processing Coordinator
Enduro-Niagara Ltd
rbrazeau@enduroniagara.com
 

Chris Kelleher

Administrator
Staff member
You can also use {lib/twirl.i} at any other point you want to make it
"twirl" without counting records.

_______________________________________________
Jeff Smith
Single Source Systems Phone: 317-596-3000 Ext: 169
9003 Technology Dr. Fax: 317-596-3001
Fishers, IN 46038 jefsmi@singlesrc.com
 

Chris Kelleher

Administrator
Staff member
i also made a different 'working/twirl' indicator so users can tell whether
the program is a symix or mod program.
i call it lib/cheerio.i
instead of doing a / - \ twirl like counter.i, it does a .o0o. (the 'o' gets
bigger and smaller).
 

Chris Kelleher

Administrator
Staff member
o0o - that is cute! I'll try it!

On my part my twirly displays number of processed records and the time
elapsed - great for pacifying the users - they know where they are and how
far yet to go.

In addition I often replace the message "records processed" with something
more meaningful like "building temp tables", "Analysing Demand" or
"Printing".

Jake Kacher
 

Chris Kelleher

Administrator
Staff member
FYI, this slows down the processing A LOT to have it display for every
iteration of a loop. (Run the same reports with and without twirly to
see what I mean).

On larger reports you can set the variable status-freq (already
defined by symix) to the number of records that should pass before it
updates the twirly.

IOW:

status-freq = 100 means that it will only twirl once every 100
records. This will speed up processing considerably but you need to
find a balance between making the report run faster and not updating
the display very often.

Zane Appel
LogicData
San Jose, CA
 

Chris Kelleher

Administrator
Staff member
I do not bother with frequency - 1:1 is fine.
Placing {lib/counter.i} in a strategical places give appearance of brisk
performance without overly straining the system.
 

Chris Kelleher

Administrator
Staff member
You may find this come to bite you one day. That which seems to create
little slow down in some cases can provide surprising degredation in
others. E.g., updates like this take only a couple of characters in a true
host/terminal environment, i.e., serial cable, but become a whole packet
for each change of the indicator when using telnet over a LAN. Make that a
low bandwidth WAN connection and the problem can get acute!

=========================================================================
Thomas Mercer-Hursh, Ph.D email: thomas@cintegrity.com
Computing Integrity, Inc. sales: 510-233-9329
550 Casey Drive - Cypress Point support: 510-233-9327
Point Richmond, CA 94801-3751 fax: 510-233-6950
 

Chris Kelleher

Administrator
Staff member
What do you mean Doc?

The counter runs in memory so there is no going accross the net.

If it was then checking of the frequency would be on each lib/counter.i
occurance regardless of its setting; yes it would be speed deficient to send
updates to the screen - in my situation this does not matter as we run
directly on the server.

Time to time we need to send disclaimer and a warning to remind that our
advices are based on our circumstances and that the ideas expressed are to
be critically scrutinized in order to work for yours.

Jake Kacher
 

Chris Kelleher

Administrator
Staff member
I was talking about any sort of progress display which did make screen
updates where changes in packaging and bandwidth can transform trivial
overhead into a serious bottleneck.

=========================================================================
Thomas Mercer-Hursh, Ph.D email: thomas@cintegrity.com
Computing Integrity, Inc. sales: 510-233-9329
550 Casey Drive - Cypress Point support: 510-233-9327
Point Richmond, CA 94801-3751 fax: 510-233-6950
 

Chris Kelleher

Administrator
Staff member
Displaying to the screen with every iteration of a FOR loop has
tremendous overhead and will slow down your reports. The twirly is
updating the display AND loading a new picture of the running man,
which has even more overhead - not to mention the extra network
traffic.

If you can cut down the number of times you call the twirly a report
will run faster. Setting the status-freq variable will allow you to
do this.

Zane Appel
LogicData
San Jose, CA
 

Chris Kelleher

Administrator
Staff member
If you display 1:1 you are absolutely degrading performance,,, and
it is geometrically proportional to the number of records you will
process... This is proven and easily proved....
It is even worse if you are running in tty mode....

Mike
 
Top