Missing french characters while writing to the target in informatica

Image

Objective: To retrieve data with  French Characters as inserted into the database.

In SIT2 Oracle database for the address table city column we do have instances where it is shown as French characters mixed with English characters. Once we had processed the data via Informatica code, those characters disappears completely leaving only the English characters.

We set the Relational Connection in Informatica WorkFlow manager to set the character coding to ISO-8859 – 1 European coding set, ran the WF which create the ascii file but the french characters were removed.

Solution

Check the oracle configuration in oracle by running Query

—  select * from v$nls_parameters

Take these outputs

Unix box of informatica locale:

LANG=en_US.UTF-8

 

Informatica Admin console:

Codepage: UTF-8 encoding of Unicode

Oracle 10g:

select * from v$nls_parameters

NLS_LANGUAGE AMERICAN

NLS_TERRITORY AMERICA

NLS_CHARACTERSET WE8MSWIN1252

mention these entry in environment variable in informatics integration services

NLS_LAND = American_america.WEBMSWIN1252

After updating integration services properties save the setting and restart the integration services.

Cheers!

Loaded library : /usr/java5_64/jre/bin/classic/libjvm.a.

Folder: [BIDW_test_LF]

Workflow: [wkf_test]

Mapping name: m_test

2012-04-03 15:10:19 : INFO : (1179648 | MAPPING) : (IS | IS_test_U01_00) : ND_BIS_BIDW_U01 : PMJVM_42020 : [INFO] Loaded library : /usr/java5_64/jre/bin/classic/libjvm.a.

2012-04-03 15:10:20 : ERROR : (1179648 | MAPPING) : (IS | test_U01_00) : test_U01 : PMJVM_42008 : [ERROR] Cant’ create Java VM (error code = -4).

2012-04-03 15:10:20 : ERROR : (1179648 | MAPPING) : (IS | test_U01_00) : test_U01 : CTSDK_43010 : Plug-in Driver level: CT failed in init().

————————————————————————————————————–

1 Check — Issue is happing because informatica application is not able to find out Java to create VM session to run the workflow.

Please check the informatica admin console integration properties -  > processes - > General Properties

 

Java SDK Minimum Memory: 512M (Make sure M is added to the memory )
Java SDK Maximum Memory: 1024M

Most Commonly Used Unix Commands

ls
ls -ltr
ps-ef – view processes
clear
cp -copy
mv -move
cd – change directory
du -directory side
du -g directory side in gb
dir – view directory
chmod – change mode
chmod -x – giving execution permission
chmod 777 -giving read, write, execute
rm – remove file
rm -r – remove directory
date -view date and time
cal – view calender
vi <filename> – to create a file
esc i to insert on vi editor
esc !wq – save and exit from vi editor
mkdir < directory name > – to create a folder
kill -9 process number – to kill running process

To execute fastload

fastload < filename.sql

Syntax to do fastload in Teradata
sessions 4;
errorlimit 25;
logon 127.0.0.1/bally,sam;
drop table bally.customers;
CREATE TABLE bally.CUSTOMERS
(
CUSTOMER_ID integer NOT NULL,
COMPANY     VARCHAR(150),
FIRST_NAME  VARCHAR(130) NOT NULL,
LAST_NAME   VARCHAR(130) NOT NULL,
ADDRESS1    VARCHAR(172) NOT NULL,
ADDRESS2    VARCHAR(172),
CITY        VARCHAR(130) NOT NULL,
STATE       VARCHAR(120) NOT NULL,
POSTAL_CODE VARCHAR(110) NOT NULL,
PHONE       VARCHAR(130) NOT NULL,
EMAIL       VARCHAR(130));
UNIQUE PRIMARY INDEX (CUSTOMER_ID)

drop table bally.error_1;
drop table bally.error_2;

set record unformatted;
define

CUSTOMER_ID (VARCHAR(138)),
COMPANY     (VARCHAR(150)),
FIRST_NAME  (VARCHAR(130)),
LAST_NAME   (VARCHAR(130)),
ADDRESS1    (VARCHAR(172)),
ADDRESS2    (VARCHAR(172)),
CITY        (VARCHAR(130)),
STATE       (VARCHAR(120)),
POSTAL_CODE (VARCHAR(110)),
PHONE       (VARCHAR(130)),
EMAIL       (VARCHAR(130))
file = C:\Documents and Settings\XPMUser\My Documents\customers.xls;
show;

begin loading bally.customers errorfiles bally.error_1,bally.error_2;
insert into bally.customers values(
:CUSTOMER_ID ,
:COMPANY     ,
:FIRST_NAME  ,
:LAST_NAME   ,
:ADDRESS1    ,
:ADDRESS2    ,
:CITY        ,
:STATE       ,
:POSTAL_CODE ,
:PHONE       ,
:EMAIL
);
end loading;

logoff;

Report all the mappings using a particular source

OPB_SRC table, though to get the SQL overrides, we need to query another table discussed later. This table stores all the Source related information for the mappings where the SRC_ID uniquely identifies each source and SOURCE_NAME field to get the name of the source. SUBJ_ID associates the sources to their respective Folders. OPB_TARG table stores all the Target related information for the mappings where the TARGET_ID uniquely identifies each target and TARGET_NAME gives the target name. SUBJ_ID field associates the targets to their respective Folders.

SELECT SUBJ_NAME, TASK_NAME, MAPPING_NAME, INSTANCE_NAME, SOURCE_NAME FROM OPB_SUBJECT, OPB_SESSION, OPB_TASK, OPB_MAPPING, OPB_SWIDGET_INST, OPB_SRC WHERE OPB_SESSION.SESSION_ID=OPB_TASK.TASK_ID AND OPB_SESSION.MAPPING_ID=OPB_MAPPING.MAPPING_ID AND OPB_SUBJECT.SUBJ_ID=OPB_MAPPING.SUBJECT_ID AND OPB_TASK.TASK_ID= OPB_SWIDGET_INST.SESSION_ID AND OPB_MAPPING.MAPPING_ID= OPB_SWIDGET_INST.MAPPING_ID AND OPB_SWIDGET_INST.WIDGET_ID=OPB_SRC.SRC_ID AND OPB_SWIDGET_INST.WIDGET_TYPE=1 AND OPB_SRC.SOURCE_NAME=:Source_Name

How to get rid of carriage return ( ^M ) from in Unix scrip? or Remove carriage return in Unix?

This is practical issue when you transfer scripts from windows environment to unix  environment and scripts does not run because the extra character is added in each line of the scripts and can easily viewed by vi editor .

————Something like this——-

$vi bally.sh
If [     ]    ^M
end ^M
The easiest way to remove this extra character from every line is

press these keyboard keys
ESC : %s/ ctrl  V M //g enter

After you follow the above… syntax will look like this

syntax
:%s/^M//g

or

$ perl -pl -e ‘s/\r\n?/\n/’ <FILENAME>

More tips to come till then enjoy Cheers~