PeopleSoft Related Language Records

Peoplesoft Related Language RecordAs we all know, PeopleSoft is capable of maintaining application data in multiple languages within the same database. This feature is driven by special records called Related Language Records that store language sensitive information in all required languages other than the base language of the system.

Structure of a Related Language Record

Data in Related Language Record has a one-to-one relation with the data in the base record to which it is tagged. So it’s natural that it will have all the key fields that the base record have. Further, it will also have LANGUAGE_CD as a key field.

Creating a Related Language Record

The easiest way to setup a Related Language Record for your base record would be to follow the below steps.

  • Clone the base record and and save it as <base_record_name>_LANG
  • Include LANGUAGE_CD as a key
  • Remove all non-key, non-language-sensitive fields
  • Associate it with the base record

Base Record

Related Language Record

Associating Related Language Record to Base Record

To associate the Related Language Record to your base record, open the base record in Application Designer and open the record properties. On the use tab, within the Related Language Record field, enter the name of the Related Language Record that you have just created. Save the record!

Link Related Language Record to Base Record

How Related Language Records Work

Say you have a search record that has a Related Language Record associated with it. When you login to the system in the base language and try searching, the text is retrieved from the base record. However, when you are logged in to the system in a language other than the base language, the system checks for a translation in the related language record. If a translation is found, it is displayed; otherwise, it displays the text from the base record. This logic enables us to selectively translate portions of data in the system while keeping the system functional at all times even if all rows are not translated.

By default, the base language for all PeopleSoft systems is English. However, an admin can change the base language to the desired one via SWAP_BASE_LANGUAGE Data Mover script.

Tags: , ,
Subscribe to Comments RSS Feed in this post
11 Responses
  1. Hi,
    the information is quite helpful. i have made a record that includes three fields two of them are PS delivered fields and one is a custom filed.
    i have made a related language record for it. not the problem is when i use base language everything (both data and field labels) appear in English but when i switch to other language (in my case Arabic), then label for custom field remains in English.

    How can i change custom field labels on language switch?
    Any help would be highly appreciated.

    • Hi Jia,

      On the Display tab in the Configuration Manager, change the Language to Arabic.
      Now, log into App Designer and Type in the Label of the required field in Arabic.

      This should get the label to show up in Arabic.
      Please let meknow if this helped.

      If this doent work mail me at chethan.dhanaraj at gmail.com

      -Chethan
      in.linkedin.com/in/chethandhanaraj

      • Wao.. that worked… thanks alot:)

        • Glad to know it helped. Appreciate the response :).

          -Chethan
          in.linkedin.com/in/chethandhanaraj

  2. Hi,

    Can you please suggest how to translate a related display field. for example the Description field value for department on Job data page. the control field being JOB.DEPTID and related display field being DEPT_TBL.DESCR

    • Hi Pri,

      In this case, the system checks for the presence of a translated value for the description field. If it’s not there, the base language value is shown.

      For explaining this, I am assuming that you have multi-language installation, your base language is English and you want the field value to be translated into French.

      Now, while logged in as a French user, if you want to have the description (related display) to show up in French, you should ensure that the French translation for this value is already present in the system.

      To do this, while logged in as an English user, navigate to the Chartfield Values setup page where you enter the Department and the Description.
      For all concerned Departments, use the Data Language drop down on the top of the page to choose French.
      Now enter the French Description of the Department and save. You are done!
      This will create entries in the related language record with the French translations.

      Now to test this, you can log in as a French user and open the Job data page and choose one of the departments that you have translated (using the steps above).
      This should show the French translated value in the description field.

      Please let me know if you need more info on this.

  3. Hi,
    I wrote a code in JOB.POSITION_NBR Savepostchange to update PER_ORG_ASGN BUSINESS_TITLE while login in any RELATED LANGUAGE

    SQLExec("SELECT DESCR from PS_POSITION_DATA FILL where POSITION_NBR=:1 and %EFFDTCHECK(POSITION_DATA,FILL,:2)", &currEff.JOB.POSITION_NBR.Value, &currEff.JOB.EFFDT.Value, &DESCR);
             &REC = CreateRecord(Record.PER_ORG_ASGN);
             &REC.EMPLID.Value = JOB.EMPLID.Value;
             &REC.EMPL_RCD.Value = JOB.EMPL_RCD.Value;
             &REC.SelectByKey();
             &REC.BUSINESS_TITLE.Value = &DESCR;
             &Ret = &REC.Update();

    Evenif the &Ret is TRUE it is not updating the PER_ORG_ASGN table.. why it is so…pls help me out

    • @ Kr,

      I’ve made a small change to the code.
      Can you please try it and let us know if this solves the problem?

               &REC = CreateRecord(Record.PER_ORG_ASGN);
               &REC.EMPLID.Value = JOB.EMPLID.Value;
               &REC.EMPL_RCD.Value = JOB.EMPL_RCD.Value;
               If &REC.SelectByKey() Then
      		&REC.EMPLID.Value = JOB.EMPLID.Value; /* Specifying the keys again */
      		&REC.EMPL_RCD.Value = JOB.EMPL_RCD.Value;
      		&REC.BUSINESS_TITLE.Value = &DESCR;
      		&Ret = &REC.Update();
               End-if;
  4. I want to remove the few languages from appearing on the PS login page. Any idea from where in the setup we can or we have to approach for any technical help (admin)?

    • You should be able to make the change by editing the following file.
      $PS_HOME/webserv/domain/applications/peoplesoft/PORTAL/WEB-INF/psftdocs/sitename/signin.html

      The signin.html page is a static HTML file that resides on your webserver.
      As always, be sure to keep a backup!

  5. Does the related language work in App Engine when writing log messages? Or do we need to look up the related language manually?

Leave a Reply to jia Cancel reply

Your email address will not be published. Required fields are marked *

*
*