on 06-26-2009 1:12 PM
Hi,
I have a requirement where XI would pick CSV files from R/3 directory.
Every record in this file contains an email ID.
All records having same email ID have to be collected and sent to that email ID.
In this way,a number of emails will be generated for every file based on the number of email IDs present in the file.
I have changed the occurence of target Standard Mail Structure for using Mail Package to 0..unbounded.
and used the logic:
emailid field->sort->splitbyvalue(value changed) -> collapsecontexts->Mail
in test tab I can see the correct result and message is successful in SXI_MONITOR
but in RWB,I am getting this error:
java.lang.IllegalArgumentException: can't parse argument number http://sap.com/xi/XI/Mail/30
Can anyone please help?
Thanks.
Regards,
Shweta
if your mail-body is not going to change for every email-id then no need to change the occurence of the Mail structure.....just stuff all the emailids in the To node with ";" as a separator.....may be because you have changed the occurence you are getting the error.
Regards,
Abhishek.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Swetha,
There is simple solution for this.
Here you have to split the interface as two.
Pick the file and split it into the file based on the mail id and store it into the Dummy folder.(Any folder of your PI system).create one file for each mail id.
Then pick the file from this folder and send it to mail through mail adapter.
Finally your interface will be as follow.
1) File-PI---File(each file for one mail id)
2) File--PI-Mail
This will work with out BPM
Regards
Ramesh Varanganti
Hi Shwetha,
I Expect You can create an UDF in the Mapping and Use this to filter the Duplicate values:
Just Put SORT-- >The The Unique value UDF
The code for Unique values(UDF) is as follows:
public void Unique_Value(String[] a,ResultList result,Container container){
//write your code here
String value = "";
for (int i = 0; i < a.length; i++) {
if (value.length() < 1) {
value = a<i>;
result.addValue(a<i>);
}
if (!a<i>.equals(value)) {
//result.addValue("NONE");
value = a<i>;
result.addValue(a<i>);
}
}
}
Hope this helps you out....
Regards,
Sainath Chutke
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
This problem is due to email id string, remove ; after end of last email id, this will work without fail.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
89 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.