25 pts.
 Spanish Printing in AS/400
How can I print some report text in Spanish? AS400 5.3

Thanks, BobPhoenix



Software/Hardware used:
AS/400 5.3 RPG36
ASKED: August 30, 2011  1:53 PM
UPDATED: March 31, 2012  5:23 PM

Answer Wiki:
Last Wiki Answer Submitted:  Be the first to answer this question.
All Answer Wiki Contributors:  Be the first to answer this question.
To see all answers submitted to the Answer Wiki: View Answer History.


Discuss This Question:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _


 

It’s hard to determine exactly what you want to do. Here’s a very trivial ILE CL program that prints a report. The heading and first detail line is in English. The last detail line is in Spanish. This was tested on a US English system:

/* +
   CRTCLMOD MODULE( mylib/PRTSPANISH )           +
            SRCFILE( mylib/QCLSRC )              +
            SRCMBR( PRTSPANISH )                 +
            LOG( *NO )                           +
                                                 +
   CRTPGM PGM( mylib/PRTSPANISH )                +
          BNDDIR( QC2LE )                        +
          ACTGRP( *NEW )                         +
*/
pgm  ( +
     )

   dcl   &msgdta      *char  128

   dcl   &NL          *char    1     value( x'15' )
   dcl   &x00         *char    1     value( x'00' )

   dcl   &rc          *int


/* Set a trivial page heading... */
   chgvar           &msgdta       ( +
                                    'A generated Spanish SPLF:' *cat  +
                                    &NL          *cat  +
                                    &NL          *cat  +
                                    &x00               +
                                  )

/* Assign our printed output to QPRINT... */
   ovrdbf      STDOUT  +
                 tofile( QPRINT )  +
                 share( *YES )

/* Print our trivial heading... */
   callprc        'printf'            ( +
                                        &msgdta        +
                                      ) +
                                rtnval( &rc )


   chgvar           &msgdta       ( +
                                    'Name   Address' *cat +
                                    &NL          *cat  +
                                    &x00               +
                                  )
   callprc        'printf'            ( +
                                        &msgdta        +
                                      ) +
                                rtnval( &rc )

   chgvar           &msgdta       ( +
                                    'Nombre Dirección' *cat +
                                    &NL          *cat  +
                                    &x00               +
                                  )
   callprc        'printf'            ( +
                                        &msgdta        +
                                      ) +
                                rtnval( &rc )

/* Clear away our override... */
   dltovr      STDOUT

/* ...and get out of here... */
   return

endpgm

But somehow that doesn’t seem to be what you’re trying to do.

Can you explain in a little more detail?

Tom

 107,995 pts.