Friday 17 April 2020

How to replace multiple special character from oracle BI etext template



Requirement: Bank disbursement etext report output file having multiple special characters like (i.e special character ‘&’, ’*’, ‘(‘, ‘)’ ) which is not accepted by banking team.


Example :

Report output having following text,

ABC & XYZ cooperation (LTD)  - Bank will not accept this format

Actual output required. Which is accepted at the banking system interface.

ABC  XYZ cooperation LTD  - Bank accepted format



Issue Facing during using SQL REPLACE function:

We can use REPLACE function to replace special character from a specific field, but on specific the field we can use max 1 or 2 nested REPLACE function at etext template level which is a limitation.

But when we have multiple special characters to replace REPLACE function will not work properly, We required to find other solution

i.e  REPLACE(REPLACE(FiledXMLtag))



Solution:

We can define the set of replacing a character in etext template definition part. You can see highlighted screenshot.

In between 

start tag <REPLACE CHARACTERS> and 
end tag <END REPLACE CHARACTERS> 

we have to use all special character which we have to replace, in the 1st column we have to add special character which we have to replace and in 2nd the column we have to add what we have to use in replacement of special character,

I have given space only as I want to remove the special character from my report output.




You can update your template and check your output your issue will be resolved.





2 comments:

  1. How do you use the above replace characters in your Data

    ReplyDelete
    Replies
    1. Hi, If I need to remove specific special characters than I will add it in between *&^% ....and in the second column I will add blank space so all special char replace with space or blank...

      Delete