Introduction:
Recently came across a situation, where in we need to translate workflow notifications to Simplified Chinese. We evaluated multiple methods
Approach 1:
- Set the NLS_LANG on the desktop and edit the workflow and update messages with Chinese translations.
- Remove all standard and flex fields workflow from the current definition.
- Set NLS_LANG to ”SIMPLIFIED CHINESE_CHINA”.ZHS16GBK and then upload the workflow using WFLOAD
Approach 2:
1. Open
the workflow in notepad and set the language to ZHS.
2. Remove
all standard and flex fields workflow from the current definition
3. Update
message subject and body with Chinese translations
4. Set
NLS_LANG
5. Upload
the .wft using FNDLOAD and using afwfload.lct
Approach 3:
1. Give
a SQL script to update subject and body columns of WF_MESSAGES_TL for ZHS
language as we are only translating the messages and not changing any other
part.
---First, set the session language:
execute immediate 'alter session set nls_language='||''''||'SIMPLIFIED CHINESE'||'''';
-- Secondly, set the WF mode and access levels..
wf_core.upload_mode := 'FORCE';
wf_core.session_level := 100;
-- Prepare tables, if we want to execute the script in patch edition
-- Need to prepare the seed tables
ad_zd_seed.prepare('WF_MESSAGES');
ad_zd_seed.prepare('WF_MESSAGES_TL');
ad_zd_seed.prepare('WF_RESOURCES');
-- Finally call the API with message
WF_LOAD.UPDATE_MESSAGE (
p_type => 'XXCSWF', -- wf type
p_name => 'XXMSGNAME', -- message name
p_subject => l_subject, -- message subject in Chinese
p_body => l_msg_body, -- message body in Chinese
p_html_body => l_body , -- message html body in Chinese.
p_level_error => x_level_error);
-- Commit or rollback based on success/failure
Note: Use
SET SERVEROUTPUT ON;
SET DEFINE OFF;
SET VERIFY OFF;
to turn off substitution.
No comments:
Post a Comment