|
>>> rbaird@esourceconsulting.com 03/19/02 01:14pm >>> >> curious back at you: how do you handle screen display attributes (ri, pr) and functions (sflctl, sflctldsp, etc)? Here is how it is done in my shop ** Give names to indicators d IndicatorP s * inz(%Addr(*in)) d Indicators ds based(IndicatorP) d pc#AllFld 1 20 d pc#CustNb 1 1 d pc#CustName 2 2 d pc#PhoneNum 3 3 d pc#City 4 4 d ri#AllFld 21 40 d ri#CustName 21 21 d ri#CustNb 22 22 d ri#PhoneNum 23 23 d ri#City 24 24 d #sfldsp 42 42 d #sflclr 43 43 d #sflend 44 44 d #sflnxtchg 45 45 d pc@reset s 20 inz(*all'0') d ri@reset s 20 inz(*all'0') In our standard, the # (I know, it ports badly in europe) indicate a field used in a DSPF or PRTF. The caracter before the # represent the attribute (PC=Position Cursor, RI=Reverse Image ...) in fact we use the actual code that we find in the DSPF (ND, BL UL ...). So if I want to set the field #Street in reverse, I do: eval ri#Street = *on and if I want to reset the attributes for all the fields I do: eval ri#AllFld = ri@reset (In our standard, @ means a variable defined in the D spec of the program) As you see, we allow for 20 fields in one screen. We rarely have more than that on a single screen. For other keywords (like sfldsp ...) we rename the indicator using the actual keyword prefixed by #. This is far from perfect but it has given good result for us. Denis Robitaille Directeur services techniques Cascades Inc 819 363 5187
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.