POReceipt mapping on target side
File content conversion is working .But in target side geting first supplier
and poheader and porecipt details and not getting remaining data
Getting the data from source file as per below with file content conversion
Supplierid
POheaderdetails
POReceiptdetails
supplierid
POheaderdetails
POReceiptdetails
POheaderdetails
POReceiptdetails
POheaderdetails
POReceiptdetails
Supplierid
POheaderdetails
POReceiptdetails
.But in target side geting first supplier
and poheader and porecipt details and not getting remaining data supplier and PONumbers
Source
Batch 1:unbounded
supplier 1:Unbou
suppid 1:1
POHeader 1:Unboun
PONumber 1:1
POIssuedate 1:1
ReceiptDetails 1:unb
POLineItem 1:1
MaterialNumber 1:1
Qty 1:1
Target
control 1:1
Header 1:1
ItemDetails 0:1000
PONumner 0:1
ItemNo 0:1
POIssuedate 0:1
ReceiptDetails 0:1
materialNo 0:1
Qty 0:1
UOM 0:1
My input data coming from file and source payload is
Supplier no
POHeader
Receiptdetails
Supplierno
POHeader
ReceiptDetails
ReceiptDetails
ReceiptDetails
I mapped POHeader > removecontext >Itemdetails on target
RecieptDetails > RemoveContext>GoodsReceiptsDetails on target
Everything is working but on target side I am getting only first value of Receiptdetails from source if there is more than one receiptdetails on souce
Targetdata
Itemdetails
PONumber
GoodsReceiptDetails
MaterilaNumber
I am expecting like this if there is more than one Receiptdetails on souce . If single Receipt details it is working fine.
Itemdetails
PONumber
GoodsReceiptDetails
MaterilaNumber
GoodsReceiptDetails
MaterilaNumber
Thanks for your help
Similar Messages
-
Message Mapping on the Target side
Hi
I am working on Proxy to SOAP in PI 7.1, and have node which is defined on the target side as Unbounded (table)
Here is the structure of the table that has been defined on the target side,
CodeList - 0- Unbounded (Table)
Id XSD Id
CodeList Name String
CodeList Version String
CodeListOwnerCd String
Source System(ECC) is not sending any values and the values which needs to be assigned to the above structure are fixed on the target side,
how can I assign multiple values to the Code List table
Ex CodelistName Should contain ClaimsPartyRoleCdList, PolicyTypeCdLis , PaymentTypeCdList
Please let me know how can I assign Multiple values to the target side table
Thanks
PRHey
You can easily do this via advanced UDF.
Map the root node to the below UDF.Make sure that you have set the Cache as Queue for this.There will be no input values to this UDF
//write your code here
result.addValue(" ");
result.addValue(" ");
Map the underlying Nodes to the below UDF.Make sure that you have set the Cache as Context for this.There will be no input values to this UDF
//write your code here
result.addValue("3");
result.addContextChange();
result.addValue("4");
result.addContextChange();
I was able to acheieve the below XML by using the above two
<?xml version="1.0" encoding="UTF-8"?>
<ns0:MI_Multiple xmlns:ns0="http://fxp.com">
<Record>
<First>3</First>
<Second>3</Second>
</Record>
<Record>
<First>4</First>
<Second>4</Second>
</Record>
</ns0:MI_Multiple>
Hope this works for you.
Thanks
Aamir -
Hi People
I am doing one scenario that is multiple receiver mapping
i create 1DTsen 2DTrec, same 1MTsen 2MTrec, MI one for sender outbound and asyn, 2inbound and asyn total 3MI and MM in message tab i assigned 2 target message types with using unbound and IM target side 2MI's
design part is ok
problem is only configuration , i created business service sender side i assigned sender message interface receiver side receiver interface CC's are 2sen and rec on same Business service
In receiver determination ok, only i am getting problem in Interface determination i assigned inbound interfaces 2 what ever i created target side but thing is i am not getting interface mapping in interface determination what is the problem,
i am trying normal file to file scenario but multi mapping
can you send me to ASAP
Thanks & Regards
ShekarAre you using Business Service for this ? If so , you need to explicitly add your Sender and Reciever Interfaces to the Business Service.
Because Business Service is an Abstarct.
So for this go to Business Service and under Sender and Reciever Tab add specific interfaces(outbound/inbound).
Activate it
Goto Interface Determination, you are able to add interface mapping for that corresponding message interfaces. -
FCC's parameters for multiple occurence on target side
Hi Experts,
I have an issue in Fixed File content conversion(FCC).
The fixed format file is being read into XI and is being converted in XML via FCC.
I have changed the occurence of MT on target side,which resulted in adding Messages & Message1 tag on sender side as well.The structure has become like this:
Messages
-> Message1
--> FCI0002_MT
---> row
> Fields
Target str:
Messages
->Message1
-->FCI002_MT
--->row
>Fields
If I use FCI0002_MT in document name and row,* in Recordset structure then message mapping fails at MT node.
What should be the Document name and Recordset structure in the FCC adapter?
Thanks and Regards,
Indu Khurana
Edited by: Indu Khurana on Feb 6, 2009 9:29 AM
Edited by: Indu Khurana on Feb 6, 2009 9:34 AMHi Mugdha,
Yes Its has passed FCC and stuck in mapping.
But now if I change Recordset structure to :
Message1,1,FCI000012_Forecast_DATA2000_MT,1,row,*
then its gving error in communication channel : " Mandatory parameter 'xml.keyfieldName': no value found ".
And in my case I don't have any key field name.
Kindly suggest.
Thanks
Indu -
Want to disable a field (1..unbounded) at target side dynamically.
Hello,
I want to disable a field (1..unbounded) at target side dynamically in message mapping on the basis of a condition.
Please help me out. I serached in existing threads but culdnt find it.
regards,
RahulHello,
I want to disable a field (1..unbounded) at target side dynamically in message mapping on the basis of a condition
You can't really disable it using normal mapping because at least it will occur once. What you can do is to change the occurrence to 0..unbounded or use XSLT/Java Mapping.
Hope this helps,
Mark -
Counting the number of detail records at target side...
Hi
I have a requirement where i need to caluclate the number of detail records formed and add it in trailer section...both at target side...
The output will look like this :
<Detail>
<Field></Field>
</Detail>
<Detail>
<Field></Field>
</Detail>
<Detail>
<Field></Field>
</Detail>
<Trailer>
<Count> 3 </Count>
</Trailer>
Basically, In trailer the Count field will contain the number of Detail records.
Can this be achived by a UDF?? Please help!!!Actually teh detail node formation at target depends on a lot of nodes of source side...using Count I have already done it but due to lot of nodes @ source side it becomes kind of a mesh...
Hence I was trying to figure out a way in which if I can count the number of detail nodes at target side I can remove the present mapping...
Corect me if I am wrong but can't we declare this target detail node as global variable and then use 'Count' function to capture its occurence???
P.S : In XI 3.0 we used to have a tab to declare global variables but here in 7.1 we have Functions tab...could anybody tell me how to declare the variable in 7.1? -
Step by step procedure on how to duplicate subtree on the target side
I have a requirement where i have two types 'A' and 'B'. On the target side i have 6 fields out of which 2 have to repeat for type 'A' and remaining 4 for type 'B'. I have to sort my records such that all type 'A' records come above and all type 'B' come below that.
I had written a UDF for that initially and even used sort by key. I got to know that i can duplicate subtree on the target side thus i can have one subtree for type 'A' and one for type 'B'.
If i get 10 records which can either 'A' or 'B' randomly arranged, how should i go with Duplicate Subtree for that. Please explain with a scenario.Hi Jaya,
You just right click your node which you want to duplicate then you can choose the option Duplicate subtree. Now you mapped with you source element A twice and simlarly you just duplicate another type for 4 times and map with source element B.
Your problem will be solved.
Best Regards,
vijay -
Pick a particular file and keep on target side with the same file name
Hi Guys,
I have got couple of files in a folder. I need to pick only two files, I have setup BPM procedure 2 payloads merge. To keep these merged file with the same source filename.
Source side file Directory
abc_12345_20100408101029.xml (abc_seq number_timestamp.xml)
xxx12345.xml
test.xml
abc_12345_20100408101149.xml
Target Side, How do I keep with the same file name?
abc_12345_20100408111239.xml --- same file name with diffrent timestamp.
One more question: How to setup a file adapter to trigger between 2:00am to 5:00 am? in a particular time
Does anybody has got quick idea, any links etc.,
Your quick and positive response will be much appreciates.
Kind Regards
SanHi,
One more question: How to setup a file adapter to trigger between 2:00am to 5:00 am? in a particular time
For this you can Availability time planning (i.e you can schedule the file adapter to poll for the files with in the time interval i.e 2 -5)...
for generating the file name at target side you need to look for the Dynamic Configuration as you need to change the timestamp for the file..and i am not sure how this works in BPM..
in normal scenarios dynamic configuration will help....
HTH
Rajesh -
Mapping debug - target node not being created
Hi Gurus,
I have an issue in my mapping. Let's say I have a source structure:
><body>
> <maintag>
> <value>1</value>
> </maintag>
> <maintag>
> <value>2</value>
> </maintag>
><body>
I need to map maintag->target node but only in case if value eq 2. I used a Ifw/oElse function which creates target queue
SUPPRESS(grey)
SUPPRESS(cyan)
SUPPRESS(grey)
[] (dark grey)
which is fine, because only 2nd context matches the condition. But no target node is being created!
Why? How to resolve this?
Thnak you!
OlianHi Olian,
Changing the context to one level up is working for me.
Please refer to the following links:
http://farm4.static.flickr.com/3055/2828227942_e71da4a823_o.jpg
http://farm4.static.flickr.com/3134/2828228398_92f5ba41e0_o.jpg
Here the context of value was set to body in the sample DT i created.
regards,
venkat. -
hi all,
while mapping the target datasource column we just write the column name in the mapping area and the query will automatically be generated.
but i want to write my own query in the mapping area.
how can i do this?
means i am not able to write the 'from table_name' statement in the mapping area.
please give any solution.
regards,
prateek.hi,
thanks for rplying.
if i put the where condition at the source database using filter then all the data will be filtered.
but in my case the where condition is required only when i am inserting the data to target.
if i put the filter at the source then the whole answer will get filtered.
and one more thing, while inserting the data to the target datastore we can execute the query only on one of the source data store.
the value that i want to insert in the target column requires a query to get executed on two tables(source datastore).
is there any way to execute that query on more than one or two datastore?
can u please tell me that how to change the filter condition at the interface level?
thanks and regards,
prateek. -
How to pass multiple records to target side using xquery
Hi Everybody,
I am using xquery transformation.
Input: Source payload contains 5 variables.
Target payload contains 5 variables.
I have input with payload with multiple instance like:
<Input>
<payload1>
<a>1<a>
<b>2<b>
<c>3<c>
<d>4<d>
<e>5<e>
</payload1>
<payload1>
<a>6<a>
<b>7<b>
<c>8<c>
<d>9<d>
<e>10<e>
</payload1>
</Input>
So my requirement is to pass above records into target side,
So I am using xquery Transformation.
I have written code as follows.
(:: pragma bea:global-element-parameter parameter="$tHRecAdv1" element="ns0:THRecAdv" location="../XMLSchemas/THRecAdv.xsd" ::)
(:: pragma bea:global-element-return element="ns1:ShipmentReceiptEBO" location="../../AIAReferenceModelProject/EnterpriseObjectLibrary/Core/EBO/ShipmentReceipt/V1/ShipmentReceiptEBO.xsd" ::)
declare namespace ns2 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/EBO/ShipmentReceipt/V1";
declare namespace ns1 = "http://xmlns.oracle.com/EnterpriseObjects/Core/EBO/ShipmentReceipt/V1";
declare namespace ns4 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Common/V2";
declare namespace ns3 = "http://xmlns.oracle.com/EnterpriseObjects/Core/Custom/Common/V2";
declare namespace ns0 = "http://diversey.com/THRecAdv";
declare namespace xf = "http://tempuri.org/ShipmentReceiptServicesProject/XMLTransformations/THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery/";
declare function xf:THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery($tHRecAdv1 as element(ns0:THRecAdv))
as element(ns1:ShipmentReceiptEBO) {
for $THRecAdvFields in $tHRecAdv1/ns0:THRecAdvFields
return
<ns1:ShipmentReceiptEBO>
<ns4:Identification>
<ns4:BusinessComponentID>{ data($THRecAdvFields/ns0:JD_WHSE_Code) }</ns4:BusinessComponentID>
<ns4:ID schemeID = "{ (data($THRecAdvFields/ns0:JD_PO_Number)) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:JD_PO_Type) }">{ data($THRecAdvFields/ns0:WMS_InternalPONumber) }</ns4:ID>
<ns4:ApplicationObjectKey>
<ns4:ID>{ data($THRecAdvFields/ns0:JD_BranchPlant) }</ns4:ID>
</ns4:ApplicationObjectKey>
<ns4:Revision>
<ns4:Reason>{ data($THRecAdvFields/ns0:ReturnReceiptReasonCode) }</ns4:Reason>
</ns4:Revision>
</ns4:Identification>
<ns1:ExpectedReceiptDate>{ data($THRecAdvFields/ns0:WMS_ReceiptDate) }</ns1:ExpectedReceiptDate>
<ns4:InvoiceReference>
<ns4:InvoiceIdentification>
<ns4:ID>{ data($THRecAdvFields/ns0:JDE_SupplierInvoiceNumber) }</ns4:ID>
</ns4:InvoiceIdentification>
</ns4:InvoiceReference>
<ns1:ShipmentReceiptLine actionCode = "{ data($THRecAdvFields/ns0:ActionFlag) }">
<ns4:Identification>
<ns4:ID schemeID = "{ data($THRecAdvFields/ns0:JD_PO_LineNumber) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:ExternPONumber) }">{ data($THRecAdvFields/ns0:WMS_ReceiptNumber) }</ns4:ID>
<ns4:ContextID>{ data($THRecAdvFields/ns0:WMSReceivingClerk) }</ns4:ContextID>
<ns4:ApplicationObjectKey>
<ns4:ID schemeID = "{ data($THRecAdvFields/ns0:BatchNumber) }"
schemeVersionID = "{ data($THRecAdvFields/ns0:BatchLineNumber) }">{ data($THRecAdvFields/ns0:JD_LocationCode) }</ns4:ID>
</ns4:ApplicationObjectKey>
<ns4:AlternateObjectKey>
<ns4:ID>{ data($THRecAdvFields/ns0:SupplierCode) }</ns4:ID>
<ns4:ContextID>{ data($THRecAdvFields/ns0:LineNumber_Or_SequenceNumber) }</ns4:ContextID>
</ns4:AlternateObjectKey>
<ns4:Revision>
<ns4:Label>{ data($THRecAdvFields/ns0:Records) }</ns4:Label>
</ns4:Revision>
</ns4:Identification>
<ns1:ReceivedQuantity unitCode = "{ data($THRecAdvFields/ns0:ReceiptUOM) }">{ data($THRecAdvFields/ns0:UnitReceipt) }</ns1:ReceivedQuantity>
<ns1:SourceDocumentTypeCode>{ data($THRecAdvFields/ns0:SKU_Code) }</ns1:SourceDocumentTypeCode>
<ns1:DestinationTypeCode>{ data($THRecAdvFields/ns0:DestinationProcessFlag) }</ns1:DestinationTypeCode>
<ns1:Comment>{ data($THRecAdvFields/ns0:Remarks) }</ns1:Comment>
<ns4:Status>
<ns4:Code>{ data($THRecAdvFields/ns0:ProcessSourceFlag) }</ns4:Code>
<ns4:EffectiveDateTime>{ data($THRecAdvFields/ns0:ADDDATE) }</ns4:EffectiveDateTime>
</ns4:Status>
<ns1:ShipmentReceiptTransaction>
<ns1:ShipmentReceiptTransactionLot>
<ns1:ShipmentReceiptItemLotReference>
<ns1:ExpirationDate>{ data($THRecAdvFields/ns0:ExpiryDate) }</ns1:ExpirationDate>
<ns1:CreationDateTime>{ data($THRecAdvFields/ns0:ProductionDate) }</ns1:CreationDateTime>
</ns1:ShipmentReceiptItemLotReference>
</ns1:ShipmentReceiptTransactionLot>
</ns1:ShipmentReceiptTransaction>
</ns1:ShipmentReceiptLine>
</ns1:ShipmentReceiptEBO>
declare variable $tHRecAdv1 as element(ns0:THRecAdv) external;
xf:THRecAdvFile_ShipmentReceiptEBO_JDE_XQuery($tHRecAdv1)
But while importing this code to OSB,and tested it ,
With 1 payload it successfully shows the data in Target side,
But while testing with multiple line items,i am getting an error as follows.
*Error executing the XQuery transformation: line 14, column 17: {err}FORG0005: expected exactly one item, got 2+ items*
So please provide me the steps how to pass multiple records to target side using xquery.
Regards,
Jyoti NayakHi Jyoti Nayak,
You have to do something like the example bellow, you can not just repeat the inner element, you will need an outer "container" tag. So you will have to change the target element of your xq transformation.
declare function xf:setToList($set1 as element(ns0:set))
as element(ns0:list) {
<ns0:list>
for $pair in $set1/ns0:pair
return
<ns0:entry>
<ns0:key>{ data($pair/ns0:key) }</ns0:key>
<ns0:value>{ data($pair/ns0:value) }</ns0:value>
</ns0:entry>
</ns0:list>
Cheers,
Vlad
Give points - it is good etiquette to reward an answerer points (5 - helpful; 10 - correct) for their post if they answer your question. If you think this is helpful, please consider giving points -
Reg: IDOC Creation on target side
Hi guys,
In my file to IDOc scenario ,i have requirement as one field is coming feom file ,if this field input value comes three time with the same value then create one IDOc and three line item under that idoc ,
can any help me.
ThanksHi,
In your case multiple message mapping can be used.
In first mapping in target structure get the data from file as per your requirement.
In second mapping use a UDF for checking how many times the field is there. And populate it in target IDoc field -
Multiple message at target side
Hi frnds,
iam doing one Scenario file to file.my requirement is i have multiple records in a message at source side, i want split each record as different message at target side is it possible. if it possible please share the ideas on this.
Regards,
Rajendar KHi Rajendra,
Can you have a look,it may help you Re: Split a message into multiple instances
Thanks
Satish -
How to supress target side mandatory node
Hi Guys,
Can any throw some light on this plese, How to supress mandatory (1..Unbound) on Target side.
Great help to me!!
Regards
SanNeetesh Raj wrote:>
> San,
> >
> >
> > Refer Sarvesh's reply. In my previous reply, I had meant similar approach.
> >
> >
> > Regards,
> > NeeteshHi Guys,
Please have a look the both structures and give me your idea on this!!
Source
ROOT Complex Type
OUTPUT Element 0..unbounded
TRANS_HEADER Element 0..unbounded
SET_ID Element xsd:string 0..1
H01_XQ Element 0..unbounded
XQ01 Element xsd:string 0..1
XQ_Y2K_D Element xsd:date 0..1
Group_N1 Element 0..unbounded
H02_N1 Element 0..1
N101 Element xsd:string 0..1
Group_LIN Element 0..unbounded
D01_LIN Element 0..unbounded
LIN02 Element xsd:string 0..1
D01_PO4 Element 0..unbounded
P0401 Element xsd:integer 0..1
D01_N9 Element 0..unbounded
N901 Element xsd:string 0..1
Group_ZA Element 0..unbounded
D02_ZA Element 0..unbounded
ZA01 Element xsd:string 0..1
ZA_Y2K_D Element xsd:date 0..1
S01_CTT Element 0..unbounded
CTT01 Element xsd:integer 0..1
Target Structure:
p1:ProductActivityNotification Element
MessageHeader Element 1
ProductActivity Element 1
ValidityPeriod Element 0..1
SubcontractingIndicator Element 0..1
BuyerParty Element 0..1
VendorParty Element 0..1
ProductRecipientParty Element 0..1
InboundDeliveryReference Element 0..unbounded
Item Element 1..unbounded
Item Element 1..unbounded
PromotionSalesTimeSeries Element 0..1
Item Element 1..unbounded
ValidityPeriod Element 1
Quantity Element 1
If ZA01 = 'QS' we need to produce target node "PromotionSalesTimeSeries" else shouldn't. -
Soap parameters at target side
Hi...All,
i am doing rfc-soap(B2B) scenario for eBanking interfaces.
i am using the digital certificate at soap side. what are all the paramenters are required at soap target side for my requirement..in soap target side number of parameters are there i.e(Configure user authentication,Certificate Authentication,Configure proxy, Adapter specific msg attribute, security parameters, Conversion Parameters,etc...)..
what are all the parameters are required pls suggest me..
regards,
Pasi.Hi,
Check with this
http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/frameset.htm
REgards
Seshagiri
Maybe you are looking for
-
Frustrated-how do i reconnect my 4s phone to my new computer?
-
Ccalling the webservice in WSDL based on the incoming value from source
Hi Experts, i am doing the inteface like SAP -(Client proxy)SAPPI(SOAP)----thirdparty i got WSDL from the third party it provides the structure like this when i was impoted through external defination BLE Fault Exception code Exception message ADDPAR
-
I deleted my login application...
I accidentally deleted my log on application, then I restarted my computer. Now when I try to log on, it will not let me. Does anyone know if and how I can fix this problem??
-
Problem installing DSC 8.2.1 module
I am trying to install the DSC module for 8.2.1 on my home PC. I had no problems installing it on my development PC at work overtop of 8.2. But on my home PC I get the following dialog (in the .png file) after the machine spends a long time (~5 min
-
Lotta Issues after Macbook Pro 2.0 update
After applying Macbook Air and Macbook Pro 2.0 update, and its supplymental update, My Retina MBP ( SMC Version (system): 2.3f32 Boot ROM Version: MBP101.00EE.B02) has following problems: unable to set hibernatemode to 0: '# sudo pmset -a hibernatemo