[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference iosg::all-in-1_v30

Title:*OLD* ALL-IN-1 (tm) Support Conference
Notice:Closed - See Note 4331.l to move to IOSG::ALL-IN-1
Moderator:IOSG::PYE
Created:Thu Jan 30 1992
Last Modified:Tue Jan 23 1996
Last Successful Update:Fri Jun 06 1997
Number of topics:4343
Total number of notes:18308

1309.0. "Symbol problems under V3.0" by JOCKEY::MARSHALLJ (Glad that the devil is red ......) Tue Aug 25 1992 20:02

               ***** How to best use these symbols ?? *****


Hi,

A customer of mine is experiencing all sorts of problems when trying to 
migrate a large application from V2.3 to V3.0, and in the main these are being 
caused by seemingly very small problems/changes.  They accept that going from 
V2.3 to V3.0 is likely to compound some things but others don't seem to be 
documented.  

1. OA$MSG_ID

A change is causing aserious problem with lots of UDP's.

Here's what the customer says;

    	      	   	--------------------

We use the DOCUMENTED symbol oa$msg_id outside WPS documents to test for 
situations such as trying to select an invalid document, or bottom of folder. 
(not in indexes at time). This symbol now only seems to be getting set in some 
cases  i.e.


Condition     	   	     OA$MSG_ID used to be     	   OA$MSG_ID now is


Select invalid document	     CAB_CANT_FIND  	      	   LASTLINE

Bottom of folder (using      CAB_BOTTOM_FOLD	      	   LASTLINE
    	     down arrow)

Bottom of cabinet (using     CAB_BOTTOM	    	      	   LASTLINE
    	 gold down arrow)


These do still work:-


Invalid Choice - reenter     ICR

No item satisfied search     SELCOUNT0

Already at last page (index) SCLATLAST   

    	      	   ----------------------

Of the initial three that are no longer set, one has changed from V2.4 to V3.0

In V2.4, select an invalid document results in OA$MSG_ID = NOCANGET.  
Consequently, they have a valid complaint that something has changed that, as 
far as I can see, isn't documented in the (V3.0) release notes.

2.  OA$STATUS

To compound the above problem, they are also saying that OA$STATUS does not get 
set as before, vis. a vis.

    	      	   	--------------------

I'm getting more complaints about UDPs not working - following on from my mail 
yesterday regarding oa$msg_id.  It seems that oa$status is no longer set in the 
same places (this maybe because certain messages have become warnings rather 
than errors).

In UDPs,  if a document is selected that does not exist, we used to check 
status using either oa$status which is set to either "1" or "0"  or oa$msg_id 
as specified yesterday.  

The only way we can find to check now is by using oa$msg_text.  This contains 
the full text of the message as displayed on the screen.  eg. "This document 
does not exist - please try again".  We will need to code the full text of each 
message, how can we be sure that these messages won't change?  We don't want to 
use CABINET functions to check for the existance of documents, as it is our 
Users that are writing UDPs and I don't think that they can be trusted with CAB 
functions.

Why have all these symbols been changed?  What are we supposed to use instead.

    	      	   ------------------------

As no specifics were provided for this one its difficult to elucidate further.

However, what they would like answering is the very last question, "what are we 
supposed to use instead ?" or more precisely, "what guidelines should we follow 
to ensure that any changes we make to the application this time (2,500 BLP's 
and 2,000 UDP's) won't have to be redone again down the line?" 

If they are using the wrong symbols, or the right symbols but making the wrong 
tests, please let me know.

What we relly need are guidelines for the future.  

Thanks in advance,

John.



T.RTitleUserPersonal
Name
DateLines
1309.1Initial thoughtsIOSG::CARLINDick Carlin IOSG, Reading, EnglandThu Aug 27 1992 17:0844
    John
    
    This is a tricky one and I can't promise any quick magic solutions.
    
    As you can see, their approach is impacted by the fact that both 2.4
    and 3.0 have modified the messages (mainly as a result of bug reports
    stating that the messages were inappropriate or misleading). These are,
    after all, UI messages so it is dangerous to treat them like API status
    values.
    
    Also, with shared filing etc, there are potentially many more messages
    that you would have to cater for anyway.
    
    A typical reason for the changes was that messages signalled from code,
    being -W- or -E-, were always "overtaking" the friendlier or more
    general UI messages, which were only -I-. A change was made to demote
    the signals to -I-, so that the friendly message was displayed as the
    principal message, but the signal(s) could be seen using GOLD-W. So,
    for example, as you discovered, the message:
    
    %OA-I-CAB_BOTTOM_FOLD, You have reached the bottom of the folder
    
    is now (since 2.4) preceded by:
    
    %OA-I-LASTLINE, Reached bottom of folder - positioning at first document
    
    I don't know why UI messages always have an id of LASTLINE; that has
    always struck me as not being too useful. Perhaps if we replaced with
    the real id it would be a start, though you would still have some
    rewriting to do. 
    
    On the OA$STATUS issue, can you give some examples of how they think
    things have changed?
    
    Finally, I've said a lot, but not much to help you. I would have
    thought that the best method would have been to use functions, since
    you can then rely on OA$STATUS being set. Any values in OA$STATUS, other
    than immediately following a function call, cannot be relied upon since
    OA$STATUS is freely used in scripts and named data, for example to
    trigger IFSTATUS. 
    
    I hope we can work something out.
    
    Dick