When you’re using a display file, in order to display any data at all on a screen, you need to define the area that you want the data to show up in. For messages, this is done in one of two ways, either by way of the MSGLOC() keyword or by a “message subfile”. Error messages can be involved with either one, but the kinds of errors generally break down to one kind or the other.
.
If the error is defined in the DSPF itself, for example by ERRMSG, ERRMSGID, SFLMSG or SFLMSGID keywords or by validation errors such as invalid dates entered into a ‘date’ type ‘L’ field, messages will display on the MSGLOC() line number. If the messages are sent by your program to the program’s message queue, the messages will display on the lines defined for a message subfile. You can define both of those for the same line.
.
The MSGLOC() keyword is used at the file-level in DDS. It is limited to a single line, and only a single message will show at a time. A message subfile is defined by adding a small subfile and a subfile control format to your DDS. It can define as many lines on the screen as you want. Usually, only one or two lines are defined, but it’s a subfile that the user can scroll through. All new messages from the program message queue will be loaded into the subfile automatically.
.
The MSGLOC() messages appear whenever their conditions are active, e.g., when their conditioning indicators are on when their records are written to the display.
.
Message subfile messages are sent to the program or procedure message queue of the program or procedure that is displaying the display file, and they appear when your program writes the message subfile control record. You would normally use the Send Program Message (QMHSNDPM) API to send the messages to the current call stack entry.
.
If you type [ message and subfile ] into the left-hand search box of the Information Center, you can find example DDS for a message subfile, as well as numerous subtopics about them.
.
Tom
OVRDBF FILE(FILE1) SHARE(*YES) SEQONLY(*YES) OPNQRYF (SOME CONDITION) CALL PGM1 DLTOVR FILE(FILE1) CLOF OPNID(FILE1) – I have used this method and Coded the program. Error Message “CPF5149 will be occurred when the File is opened with Shared Access Path (*YES)” is logged in Error Message File after executing the program. what is the cause of this issue? the above method?
For Lotus Notes standard configuration on an Apple Mac OS X system:
Shared data directory location:/Applications/Note.app/Contents/Resources/.lproj/Data
/Applications/Note.app/Contents/Resources/English.lproj/Data(For English locale)
Data files directory location for each user :~/Library/Application Support/Lotus Notes Data
For Notes basic configuration the default directories location are:
Shared data directory/data folder location:/Applications/Note.app/Contents/Resources/.lproj/Data
Shared data directory location(For English locale): /Applications/Note.app/Contents/Resources/English.lproj/Data.
Data files directory location for each user :~/Library/Application Support/Lotus Notes Data
This seems to be a school task.. We don’t make your tasks here. If you make your program and have some problems you can ask it here and then we are here to help you.
Okay, you described the task. Now, what is your question? What problem are you having? — Tom
Is this for something written in Java? Or are you thinking of a tool that helps to develop with Java on AS/400s? — Tom
Every report uses an external printer file. Commonly QSYSPRT or QPRINT is used. You can use OVRPRTF if necessary.
.
You really should not use an IBM-supplied printer file, just as you wouldn’t use an IBM-supplied DSPF or PF for your own applications. It would be better if you copied one of those and used the copy instead. You could also make multiple copies with different names and use CHGPRTF to give each copy different attributes so that OVRPRTF wouldn’t be needed.
.
However, best would be not to use internal printer specs at all. How often do you code internal display file specs? Why would you use external display files and not use external printer files? The benefits of external printer files are more than those for display files.
.
Tom
It might depend on your certificate provider. You need to contact them and ask what options they provide. I would expect that you can’t change the expiration period since longer periods can require longer key lengths. Instead of renewing, you will probably need to request a new certificate that has a longer period.
.
I believe that 1-year renewals can be better because they can be easier to schedule. Also, if personnel change, procedures might be forgotten or reminder e-mails might be lost. Organization details can also change and need to be re-authenticated as more years go by. However, longer terms can also come with slightly less cost per year.
.
As I understand things, you can typically purchase server certificates for 1, 2 or 3 years. From at least one provider I’ve seen, a 4-year certificate can be bought. Root certificates typically expire after 10 years. Someone with detailed experience might post corrections to what I’ve written here or add useful details.
.
Tom
You can insert hex values with SQL if the column allows the hex value. Otherwise the INSERT would fail. — Tom
One minor side note… You can create, populate and read a subfile in your program code without ever actually displaying it on a screen. Sometimes this can work as an array or MODS. By declaring an array over DSPF record format fields and arranging DSPF fields in a desired order, it can be easier to populate the DSPF. Sometimes. — Tom
And you might want to test a query using option 3=Define the sequence. Change the sequences of some characters to see how it changes sorted results or changes comparisons for ‘greater than’, ‘less than’ or ‘equals’ in the test query that you create. — Tom
Option 2 on your system causes Query to use the collating sequence for English. On someone else’s system, the option might show a different language or it might not be shown at all. Language collating sequences are often different from a hexadecimal sequence. For most things that involve a person looking at results, you should use the language sequence that is associated with that user. — Tom
I have a screen that does this with non-subfile data. Tab key advances thru “left side” fields and then “right side” fields (not actually columnar, more by proximity). The only unusual thing I found in the DDS (I didn’t write this one) is a display size override
DSPSIZ(27 132 *DS4)
My guess is any field located beyond some value (80 ?) is treated like it’s at the end.
So in your spare time, you may want to try this with your subfile to see how it responds.
I’m 99% sure you won’t like it.
Times Roman is a proportional font.
Spaces take less horizontal distance then characters in a font of that type.
But RPG print spec’s locate by number of characters from the left margin.
Your columns of data will not be aligned.
But the printing will be very nice.
Do an OVRPRTF to set the Font jsut before you call your program that will produce the output.
People create a tool to satisfy a need.
There are hundreds of free tools available on the web today.
Can you be more specific on what you are trying to accomplish?
Are you tryting to build something to sell? Or just a timesaver to give away?
What are your needs?
Tom – I bet you didn’t think your extra tidbit of advice would be so useful so quickly. Thanks again … now that I consistantly populate the message subfile I saw that it was not properly clearing. Focussing on the api parms, I tried many combinations. Nothing worked until I reread your “Binary” advice – so I switched that parm (silly me – taking the IBM site info literally) to a 10 digit integer and it finally seems to work perfectly. So you answered my next question before I even asked it.
Have you ever thought of starting a “you want it yesterday – OK” service ? (like next day delivery only better)
The last poster said you could copy the text into doc and save with .eml extension. Easier to just save the email (from within notes). It automatically is saved with a .eml extension. Then just embed as a doc but will open up as an email once clicked.
Great .. SETGT and,READPE aren’t operations that I need to use frequently.
If you are creating a table, you have predefined fields. So I do not understand how you would insert something after the last field in the file.
If you want to insert a new record with a hex value, you can do that with SQL.
INSERT INTO yourlib/yourfile VALUES(X'3F')







