Map one source elements to two different target elements
Hi Gurus,
In our scenario, we have single source. and we are mapping this single source to two different structures, based on condition in the source records on one field, we are mapping to either X structure or Y structure. in my case i have to generate only one file at a time based on condition.
If condition is true, i have to mapp it for X structure, if its false i have to mapp it for Y structure. but in my case i getting a blank file for another mapping. i should stop this blank file.
any suggestions and solutions will be rewarded. this is an urgent issue, please help me.
Thanks in advance....
Thanks & Regards,
Anuj..
I have already used an if-then construct and an enhanced ID.Thanks anyway.
Let me explain using a source interface (s1) and target interfaces t1 and t2.
Based on the condition, only one interface(lets say t1) will be selected, target mapping is done for this.
But the problem is that the other interface (t2) also executes(having only the root node) and the end result is i have two files - one with the mapped payload and another empty one with only the root node.
My requirement is to remove this empty file at the mapping stage itself , as -
1) i only need a single file at the receiver.
2) i do not want an extra payload for every record i send, creating unnecessary load on my IE.
Also due to performance issues i do not want to move this to a BPM.
I have attached the o/p screenshot at http://www.flickr.com/photos/14210232@N03/1550768802/
In window 1 i have the correct output .i.e of the interface t1 which was mapped.
In window 2 i have the unwanted output. i.e the interface t2 which is creating another file at the receiver.
<b><b>Ques</b></b>: When using enhanced ID/multi-mapping, under Messages tab, if i set my target message type to 0..1, should it not work? I have tried this but it doesn't.
Do let me know a way out! Thanks.
Anuj.
Similar Messages
-
PI Message Mapping One Source to create two of the same Target Nodes.
Hi,
I have a source node that contacts the following.
"1234-5678".
When there is a "-" in the source node then I need to create two target nodes.
When there is no "-" in the source node then only create one node.
Since the source structure is a flat structure by on the target side as you can see I am trying to achieve a diep structure.
Please can you assist in how to do this with PI message mapping.
Regards
Willie HugoHi,
"1234-5678" only occurs once in the source. There is no source xml node that will occur more that once. The whole structure only occurs once. But on the target side I need one of the node to occur more than once if a hyphen is found in the source field.
Source Message - Always only one data node.
==============
<root>
<OnceOnlyNode>1234-5678</OnceOnlyNode> [1..1]
</root>
Target Message - Only two text node when "-" in source, else only one text node.
=============
<msg>
<text>1234</text>
<text>6789</text>
</msg>
How can this be done using standard PI message mapping functions. Can it be done?
Regards
Willie Hugo -
SLT - Splitting one source table into two tables in the destination
Hi,
I am wondering if we can split content of one source table into two different tables in the destination (HANA DB in my case) with SLT based on the codified mapping rules?
We have the VBAK table in ERP which has the header information about various business objects (quote, sales order, invoice, outbound delivery to name a few). I want this to be replicated into tables specific to business object (like VBAK_QUOT, VBAK_SO, VBAK_INV, etc) based on document type column.
There is one way to do it as far as i know - have multiple configurations and replicate to different schema. But we might have to be content with 4 different config at the max.
Any help here will be highly appreciated
Regards,
SeshPlease take a look at these links related to your query.
http://stackoverflow.com/questions/5145637/querying-data-by-joining-two-tables-in-two-database-on-different-servers
http://stackoverflow.com/questions/7037228/joining-two-tables-together-in-one-database -
How do we map one R3 field to two bw objects in BW 35?
How do we map one R3 field to two infoobjects in an infosource at transfer structure level.
For example: KUNNR field from R3 needs to be mapped to two different bw objects in transfer structure level.Nop you got it wrong :
KUNNR --> 0CUSTOMER
0SOLD_TO <--- 0CUSTOMER
0CUSTOMER <-- 0CUSTOMER
or
KUNNR --> 0SOLD_TO
0SOLD_TO <-- 0SOLD_TO
0CUSTOMER <-- 0SOLD_TO
This is the way.
Hope this helps.
Edited by: Praveen G on Sep 30, 2008 1:51 AM
Edited by: Praveen G on Sep 30, 2008 1:52 AM -
Mapping Identical Source GL Account to Idential Target Essbase Account
Is there a way to use a rules to map a source GL account to a target essbase account that are both identical? If so, can someone please provide some guildence. I tried looking at the fdm admin guide, but have not come up to a solution.
Thanks,
TrungYou can use a wildcard map of * to *
-
Input in one formfield go to two different fields in a MySQL tablerow?
Hi, I hope you can help me with this.
How can I have input in one formfield go to two different fields in a MySQL tablerow without having the visitor to type out his input out twice?
With the second one I would like to use md5.
Any help is greatly appreciated.How can I have input in one formfield go to two different fields in a
MySQL tablerow without having the visitor to type out his input out
twice?
You would need to write your query with the WHERE clause when you update to say "WHERE user=$userid". That's the most basic way. The $userid variable would need to come from either a session or a cookie if the user is logged in and you don't want them to enter the information again. Or if this is from a previous page, the $userid could just be equal to the $_POST variable after sanitization.
With the second one I would like to use md5.
That's even simpler. Before submitting the form, just do $md5_pass = md5($pass);
http://us.php.net/manual/en/function.md5.php -
Mapping 2 source structures to a single target database
Hi Experts, My scenario is a Proxy to JDBC in which I need to send data from 2 source structures to 1 target table.
Source structures : Target:
ABC XYZ
row1 InsertStatement
Item1 DBTable
Action
(Fields) Table
acess
DEF -
row2 -
item2 -
(Fields)
(Fields)
Please let me know how to map the 2 source nodes to the target access node to transfer data from the source tables to target database.
Regards,
KrishnaYou should make use of BPM to collect the two source structures.
One of the BPM examples mentioned in IR --> SAP BASIS ---> SystemPatterns can be referred for this purpose.
Once the messages are collected, perform a 2:1 mapping (two Proxies as source message and one JDBC message as target).
If you want the mapping logic then please provide a proper format of both your Source and Target messages and the expected mapping, so that someone from SDN can help you out.
The target structure provided is a bit confusing.
Are you going to receive two different proxy messages (i.e. two different calls) or just one Proxy call and there you will have two different nodes within the same message??? ...... me confused
Regards,
Abhishek.
Edited by: abhishek salvi on Sep 25, 2009 11:51 AM -
Hi Experts,
I have on stored procedure which returns mote than one resultset i want that to store in two different temp table how can achieve this in SQL server.
following is the stored procedure and table that i need to create.
create procedure GetData as begin select * from Empselect * from Deptend
create table #tmp1 (Ddeptid int, deptname varchar(500),Location varchar(100))
Insert into #tmp1 (Ddeptid , deptname ,Location )
exec GetData
create table #tmp (empid int , ename varchar(500),DeptId int , salary int)
Insert into #tmp (empId,ename,deptId,salary)
exec GetData
Niraj SevalkarYou cant get two resultsets out of SP like this. The workaround is to merge and bring the resultsets.
For this number of columns as well as corresponding datatypes have to be compatible. Also you will need one additional column which indicates resultset value. Then use this as filter to get your desired resultset out
create procedure GetData as
begin
select 'resultset1' as Cat,*,.. N columns from Emp
union all
select 'resultset2' as Cat,*,.. N columns from Dept
end
create table #tmp1 (Ddeptid int, deptname varchar(500),Location varchar(100))
Insert into #tmp1 (Ddeptid , deptname ,Location )
Select column1,column2,column3
from OPENROWSET('SQLOLEDB','Data Source=Server_name;Trusted_Connection=yes;
Integrated Security=SSPI','Execute yourdb..GetData')
WHERE Cat = 'resultset1'
create table #tmp (empid int , ename varchar(500),DeptId int , salary int)
Insert into #tmp (empId,ename,deptId,salary)
Select column1,column2,column3, column4
from OPENROWSET('SQLOLEDB','Data Source=Server_name;Trusted_Connection=yes;
Integrated Security=SSPI','Execute yourdb..GetData')
WHERE Cat = 'resultset2'
also see
http://sqlblogcasts.com/blogs/madhivanan/archive/2007/11/26/select-columns-from-exec-procedure-name-is-this-possible.aspx
Another method is to populate table with relevant resultset within procedure itself and then select from the table directly outside.
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My Wiki User Page
My MSDN Page
My Personal Blog
My Facebook Page -
Message-Mapping: Use same RFC lookup for different target fields
Hello,
I need to apply an RFC Lookup which delivers a boolean flag back (true or false). This RFC lookup should be used for different target fields.
Is there a way to execute the RFC lookup just once and then store the result in an internediate variable that I can use for all futher checks for different target fields?
If this is not possible and I have to apply the RFC lookup for all necessary target fields is it then executed for each target field ? This is exactly what I want to avoid in order not to slow down performance.
The input parameter (=source field value) would be the same.
Thank you for your advice!Exactly.
Here is a UDF example I have that you could adapt to your needs.
Set
public String setCounter(String a,String b,Container container){
/* Store values in global datacontainer
a: mapping value and return valueparameter
b: name for stored value parameter
GlobalContainer myGlobalContainer;
myGlobalContainer = container.getGlobalContainer();
myGlobalContainer.setParameter(b.toUpperCase(), a);
return a;
Get
public String getCounter(String a,Container container){
//write your code here
GlobalContainer gc = container.getGlobalContainer();
if (gc.getParameter(a) != null) {
return String.valueOf(gc.getParameter(a));
} else {
return "1"; -
How do I map the source file name to a target table?
I am mapping a source fixed length flat file to oracle target tables. One of the tables is a parent transaction table that stores the date, record number, status, etc. and the file name of the source flat file. The file name will change daily because the date is part of the naming convention. Is there an easy way to determine the source file name and map it?
One option a co-worker is working on is writing a pre-mapping stored procedure. It would insert the file name into a table prior to the mapping. But I was hoping for a cleaner solution.
Thanks!Hi
Use extarnel table to load the data from the file into the table.
Create a procedure which changes the external table definition as the filename chnages.
Use this proceudre in the mapping as a premapping process.
Ott Karesz
http://www.trendo-kft.hu -
How can I use one gmail address on two different macbooks in 'mail'?
I'm using one business gmail address. Me and my girlfriend both have a macbook. Now the gmail address is linked to my macbook. But she wants to use it as well. Unfortunately the 'mail' system won't allow her to sync with the gmail address. And I get messages from gmail saying that someone tried to log in to my account. Which is something I certainly want, but can't change. Does anyone now how I can use 1 gmail address on two different mac's? Thanks
You may be able to change the suspicious account activity message alerts
in your Gmail settings, and check that side of it, since I can use several
means of accessing my Gmail and Google Accounts; and in the past had
shared an account (not google) with another party half a world away when
her email server went down for a month.
The Mail software should not know the difference, unless the setup in there
is not correct; if this is so, then more than what she says would be wrong.
The Google mail Support help site pages should cover this adequately.
Gmail Help - Google Help
https://support.google.com/mail/?hl=en -
One MIRO document with two different vendors for two different line items
Can it possible to make MIRO for a PO which is having two conditions(Basic price+Freight) with two different vendors.
MIRO document needs:
GR/IR Clearing Dr.
Freight Clearing Dr.
Vendor RM(X) Cr.
Vendor Freight(Y) Cr.
Is it possible to post the above document at a time not individually for each condition.Hi,
Yes, It is possible to post Material and delivery cost in one document.where in material supplier is different than the Frieght vendor.
Itm PK BusA Acct no. Description Tx Amount in USD
001 89 130001 Stock-Ingredients 244 0 880.00
002 96 320001 GR/IR Account - Ing. 244 0 1,200.00-
003 86 520002 Ingredients - PPV 244 0 3,297.87
004 50 320008 GR/IR Account - Duty 244 0 797.87-
005 50 320009 GR/IR Account - Fre. 244 0 2,180.00-
Thanks
Dinabandhu -
How to define namespace with one XSD using in two different DB-Locations ?
I'm not clear,How to define namespace, targetnamespace, schemaLocation or NoNamespaceSchemaLocation
when using one common schema.xsd-definition
in two different database-locations for exchange xml-documents?
when insert xml-document I've got an error ORA-30937
do you have an good exsample ?
thanks
Norbert
schema :
<xs:schema
xmlns="http://sourcehost.com/namespace"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:oraxdb="http://xmlns.oracle.com/xdb"
targetNamespace="http://sourcehost.com/namespace"
xml-document :
xmlns="http://Sourcehost.com/namespace"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="http://sourcehost.com/namespace http://desthost:8080/sys/schemas/PUBLIC/ADRESSEN.XSD">
SQL> insert into ADRESSEN values
(XMLType
(bfilename ( 'XMLIMPORT_DIR', 'adressen.xml')
, 0 )
--> error :
ORA-30937: No Schemadefinition for "SchemaLocation" (Namespace "http://www.w3.org/2001/XMLSchema-instance") in übergeordnetem Knoten "/ADRESSEN"Norbert
The schema location used to register the XML schema with XML DB does not need to be a valid URL for accessing the XML Schema
I can use the same URL , for instance
http://xmlns.example.scom/xsd/myXMLSchema.xsd
on machines dbserver1, and dbserver2. The only reason some people choose to use the hostname / portnumber convention is that this makes it possible to validate the XML Instance documents against the copy of the XML schema stored in the XML DB repository using an external tool like XMLSpy without have to add entries to XMLSpy's OASIS catalog files.
I am concerned about the message you are getting. That's not correct AFAICT but I'd need to see the complete XML Schema and Instance to be sure. -
XML mapped to IDoc routed to two different receivers
Hello gurus,
I have an XML document coming into XI which needs to be mapped into an IDOC, then sent to two different systems (not to both of them) based on a value in the XML (the value is actually the SAP partner ID).
Can this be done in BPM? Perhaps using Enhanced Receivers would be a viable solution for this?
Thank you!have u looked into XPaths ?
Ref:
/people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination
/people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers
Here based on a field in your message you can route the message to a receiver.
Also ref: /people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16 for enhanced recv. det. -
How can I get one link to open two different PDFs?
Even though I'm only the hardware support guy where I work, I've been asked to maintain the web site. The latest request is that they want to get one link to open two PDFs. I know you can do something like that with web pages, but I'm not sure if you can do the same with PDFs. I only know the basics of Dreamweaver, so, if it can be done, please explain it to me like I'm a 5-year-old. However, I'm not afraid of code. Thanks, in advance, for any assistance.
Hi
You can do this by using the javascript onClick event to load the 2 pdf's, but if I was to see such action when clicking a link I would suspect that it was trying to open multiple pages, (as per spam sites) and immediately close the tabs/windows and never visit the site again.
If you do require two pdf's then merge both pdf files into one, and link to the single file as normal.
PZ
Maybe you are looking for
-
Problem about getting report!
Hi,all: I am trying to get Report which is the query result from the previous canvas, but I don't know how to do it. For example, I put a button called "get transcript" on one canvas, and I set this button's trigger to next block. However, I have no
-
Hi All: Is it possible to override the queue name of the receiver JMS adapter from the Payload? I checked Adapter Specific Message Attributes of JMS receiver adapter, but could not find queue name attribute. I need to assign receiver JMS queue name f
-
Conversion of idoc into edifact/xml
Hi everyone is it possible for us to convert our idoc into xml/edifact without using any adapter like seaburger. reply me when you feel free. Thanks & Regards Vimarsh
-
Canon DPP Can't Read CR2 Files
I'm considering getting CS3 but before that, wanted to try out using Canon DPP for my raw files taken with G9. I downloaded the latest DPP but it just won't display the CR2 files. Jpeg & Tif show up fine though. Is DPP only for EOS only? I thought it
-
Alternate solution for Refurbishment Process without split valuation
Hi Experts, We are implementing SAP PM module. We want any alternate method for Refurbishment process ( Internally processed inside the plant) without activating the split valuation . Is it possible ? If possible, please suggest the process . Thanks