ibm-information-center/dist/eclipse/plugins/i5OS.ic.nls_5.4.0.1/rbagsearlymessagebind.htm

93 lines
5.9 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="concept" />
<meta name="DC.Title" content="Early message binding" />
<meta name="abstract" content="Text can be stored externally from the source code in a separate message file but is bound into the object when it is created." />
<meta name="description" content="Text can be stored externally from the source code in a separate message file but is bound into the object when it is created." />
<meta name="DC.Relation" scheme="URI" content="rbagscodtec.htm" />
<meta name="DC.Relation" scheme="URI" content="../rzakc/rzakcmstdfmscon.htm" />
<meta name="DC.Relation" scheme="URI" content="../rzakd/rzakdmstptmsgco.htm" />
<meta name="DC.Relation" scheme="URI" content="../cl/crtcmd.htm" />
<meta name="DC.Relation" scheme="URI" content="../cl/addmsgd.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rbagsearlymessagebind" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Early message binding</title>
</head>
<body id="rbagsearlymessagebind"><a name="rbagsearlymessagebind"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Early message binding</h1>
<div><p>Text can be stored externally from the source code in a separate
message file but is bound into the object when it is created.</p>
<p>This technique can be used for:</p>
<dl><dt class="dlterm">Display files</dt>
<dd>Constants such as titles, instruction lines, option definitions, headings,
field prompts, command key descriptions</dd>
<dt class="dlterm">Printer files</dt>
<dd>Constants such as titles, headings, total line descriptions</dd>
<dt class="dlterm">User commands</dt>
<dd>Prompt descriptions on the command definition statements</dd>
</dl>
<p>For device files (display and printer), the message is referred to by the
Message Constant (MSGCON) keyword in the DDS source specifications.</p>
<p>For example:</p>
<pre>A line pos MSGCON(length message-ID[*libl/]message-file-name)
^
includes expansion space</pre>
<p>For user commands, the message identifier <var class="varname">xxxnnnn</var> is
specified on the PROMPT keyword instead of a literal. The message file is
referred to on the Create Command (CRTCMD) command.</p>
<p>For example:</p>
<pre>CMD PROMPT(xxxnnnn)</pre>
<p>The message file name <var class="varname">message-file-name</var> is in a source
file referred to by the following command.</p>
<pre>CRTCMD CMD(command-name) PGM(library-name/program-name) +
PMTFILE([*libl/]message-file-name)</pre>
<p>Before the object can be created, you must enter the message description
into the specified message file. Enter the message description using the Add
Message Description (ADDMSGD) command.</p>
<p>For example:</p>
<pre>ADDMSGD MSGID(xxxnnnn) MSGF(library-name/message-file-name) +
MSG('Text ')</pre>
<p>where <var class="varname">xxxnnnn</var> is the message identifier.</p>
<p>This technique allows you to create any number of objects in different
languages and to put them into different libraries using the same source code
by just assigning another message file at object creation time.</p>
<p>The message file is needed only during the creation of the object. Consider
specifying the appropriate length for different languages on the MSGCON keyword.
Then make the length information available to the translator.</p>
<p>The following figure shows how early message binding works:</p>
<br /><img src="rbags507.gif" alt="Early binding of messages" /><br /><p>At file creation time, you can choose the appropriate textual data of the
language version you want to work with by setting up the library list with
the specific library containing the textual data and the program library.</p>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbagscodtec.htm" title="Application displays, printer file specifications, and user-created commands typically contain a large amount of constant text. Application displays, printer file specifications, and user-created commands also contain input and output fields such as headings, field prompts, instruction lines, and function key descriptions.">Textual data code design</a></div>
</div>
<div class="relconcepts"><strong>Related concepts</strong><br />
<div><a href="../rzakc/rzakcmstdfmscon.htm">MSGCON (Message Constant) keyword for display files</a></div>
<div><a href="../rzakd/rzakdmstptmsgco.htm">MSGCON (Message Constant) keyword in printer files</a></div>
</div>
<div class="relref"><strong>Related reference</strong><br />
<div><a href="../cl/crtcmd.htm">Create Command (CRTCMD) command</a></div>
<div><a href="../cl/addmsgd.htm">Add Message Description (ADDMSGD) command</a></div>
</div>
</div>
</body>
</html>