× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Simon, thank you for the wonderful answer.  I hope you're saving this 
series of mails for inclusion in your book....?

Question: Lets say a person is an average experienced RPG programmer and 
can also write some basic HTML tables.  Someone like me.  How cruel and 
how steep is the learning curve?  If learning to write a regular subfile 
program from scratch is a 8 on a scale from 1 to 10, where would you place 
learning to write a subfile in UIM from scratch? 

Question: Does it have any potential for moving off the constraints of the 
5250 window?  At the moment I am finding it frustrating to have just 80 or 
132 viewable columns.  HTML reports in a browser are simple to do and are 
really a solution for attractive presentation of data and for attractive 
printing choices for the user.



_______________________
Booth Martin
Booth@MartinVT.com
http://www.MartinVT.com
_______________________




"Simon Coulter" <shc@flybynight.com.au>
Sent by: owner-rpg400-l@midrange.com
04/14/2001 03:40 AM
Please respond to RPG400-L

 
        To:     RPG400-L@midrange.com
        cc: 
        Subject:        Re: What is UIM

Hello Booth,

You wrote:
>Simon, what is UIM? Why would we want to use it?  Is it green-screen only 

>or can it be transported easily to other user-interfaces?  Is it 
RPG-only?

UIM is the User Interface Manager used by IBM to handle most of the menus, 

displays, and lists that make up the standard OS/400 interface.  If you 
use 
a 'Work with' panel you using UIM.  The definitition language is 
documented 
in the Application Display Programming manual (SC41-5715).  Appendix 1 
describes the language, Chapters 3,4, and 5 explain how to use it -- in 
standard IBM style where the user is expected to be clever enough to fill 
in the gaps.

Although UIM imposes a more rigid screen layout than DDS it also creates a 

more consistent interface.  It is extremely useful if NLS and translation 
is required because it automatically handles wrapping textual constants 
and 
scrolling if the translated panels occupy more screen area than the 
English 
versions.  (English is a very concise language and can generally express 
prompt text in fewer characters than other languages e.g., German.)

UIM also supports larger lists than subfiles (as many records as will fit 
in 16MB rather than the 9999 limit of subfiles).  List entries can be 
added 
(like a WRITE to the SFL record), changed (like an UPDATE to the SFL 
record), deleted (like ... can't do that with subfiles), inserted (can't 
do 
that either with subfiles).

A panel can be conditioned in a much more flexible manner than with DDS. 
For example, if one uses indicators to hide a DDS field that field still 
occupies space on the screen.  With UIM the field is not displayed at all 
and everything else on the page is reformatted accordingly.

UIM also provides support for command lines, parameter substitution, 
issuing commands, calling programs, translating values, and much more. 
(but 
no steak knives :)

UIM is green screen only but because it is defined using a tag-based 
language it would be much easier to convert to HTML or XML than DDS.

UIM also helps make applications more modular because you end up writing 
many small programs to handle different functions (filling the list, 
processing options, conditioning, positioning, etc).  It is also possible 
to make generic programs that can use information passed from UIM to 
determine how to behave so one could have a single option processor or a 
single list builder (or indeed a single program to handle everything) 
although in practice having separate programs is usually better.

An application uses API calls to interact with the UIM thus it can be used 

from any language supported on OS/400 -- even CL which can be useful for 
prototyping purposes.

Regards,
Simon Coulter.

«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»
«» FlyByNight Software         AS/400 Technical Specialists       «»
«» Eclipse the competition - run your business on an IBM AS/400.  «»
«»                                                                «»
«» Phone: +61 3 9419 0175   Mobile: +61 0411 091 400        /"\   «»
«» Fax:   +61 3 9419 0175   mailto: shc@flybynight.com.au   \ /   «»
«»                                                           X    «»
«»               ASCII Ribbon campaign against HTML E-Mail  / \   «»
«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»«»

+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

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.