cancel
Showing results for 
Search instead for 
Did you mean: 

Weird Issue in XI... Need Help

Former Member
0 Kudos

Hi All,

We have a Legacy to BI interface. here BI generates a wsdl to call there function modules and so we import the wsdl structre as external definations in XI and use it in our mapping.

Everytime BI generates the Data Source for XI, in diff env (exp Dev and then QA) the functional module gets a new name which is system generated. So this thing is causing us an issue. because this means we have to import external definations each time and create the IR again.

pls find below the wsdl: and the functional module name that gets system generated is BIC_-CQZPPCLAU00001000.

<?xml version="1.0" encoding="ISO-8859-1"?>

<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:sap-com:document:sap:rfc:functions">

<wsdl:types>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">

<xsd:element name="_-BIC_-CQZPPCLAU00001000">

<xsd:complexType>

<xsd:all>

<xsd:element name="DATA">

<xsd:complexType>

<xsd:sequence>

<xsd:element name="item" type="_-BIC_-CQZPPCLAU00001000" minOccurs="0" maxOccurs="unbounded" />

</xsd:sequence>

</xsd:complexType>

</xsd:element>

</xsd:all>

</xsd:complexType>

</xsd:element>

<xsd:element name="_-BIC_-CQZPPCLAU00001000.Response">

<xsd:complexType>

<xsd:all />

</xsd:complexType>

</xsd:element>

<xsd:simpleType name="date">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="10" />

<xsd:pattern value="....-..-.." />

</xsd:restriction>

</xsd:simpleType>

<xsd:simpleType name="time">

<xsd:restriction base="xsd:string">

<xsd:maxLength value="8" />

<xsd:pattern value="..:..:.." />

</xsd:restriction>

</xsd:simpleType>

<xsd:complexType name="_-BIC_-CQZPPCLAU00001000">

<xsd:sequence>

<xsd:element name="PM_ORDER" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="12" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="_-BIC_-ZARCOVRD" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="2" />

<xsd:pattern value="d*" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="_-BIC_-ZARCPSFL" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="2" />

<xsd:pattern value="d*" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="_-BIC_-ZARCRULE" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="6" />

<xsd:pattern value="d*" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="DATE0" type="date" minOccurs="0" />

<xsd:element name="TIME" type="time" minOccurs="0" />

<xsd:element name="COMP_CODE" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="4" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="_-BIC_-ZPOSTPRD" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="6" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

<xsd:element name="_-BIC_-ZARCRLDS" minOccurs="0">

<xsd:simpleType>

<xsd:restriction base="xsd:string">

<xsd:maxLength value="35" />

</xsd:restriction>

</xsd:simpleType>

</xsd:element>

</xsd:sequence>

</xsd:complexType>

</xsd:schema>

</wsdl:types>

<wsdl:message name="_-BIC_-CQZPPCLAU00001000Input">

<wsdl:part xmlns:generateduniqueprefix0="urn:sap-com:document:sap:rfc:functions" name="parameters" element="generateduniqueprefix0:_-BIC_-CQZPPCLAU00001000" />

</wsdl:message>

<wsdl:message name="_-BIC_-CQZPPCLAU00001000Output">

<wsdl:part xmlns:generateduniqueprefix1="urn:sap-com:document:sap:rfc:functions" name="parameters" element="generateduniqueprefix1:_-BIC_-CQZPPCLAU00001000.Response" />

</wsdl:message>

</wsdl:definitions>

So the meaning of transports doesn't make sense at all if we have to do devlopment again in each env.

Can this be avoided anyway.. As far as i think this can't be handled in XI. But would love to know yours thoughts.

Regards,

XIer

Edited by: XIer on May 10, 2008 8:31 AM

Edited by: XIer on May 10, 2008 8:33 AM

Accepted Solutions (1)

Accepted Solutions (1)

sunil_singh13
Active Contributor
0 Kudos

Hi XIER ,

Even i had same prob. but that was in MApping UDF UDF were repeating with system generated number and this was due to two different UDF with the same name .

Please check if you have crated two BI Intrfaces with same name .

I dont know abt your case but in mapping system allows to create two UDF with same name.

Thanks

Sunil Singh

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

Those are dynamically generated BI objects that are created by means of nr ranges (or equivalent) in each instances ... As I dunno whether it is possible to provided static names, you could proceed this way :

1 - if you do not know (in advance) generated names, create a mapping table containing (depending on its evolutivity) either one single col (the generated name of your func) or 2 cols (functionality and generated name)

2 - create a wrapper RFC module (unique name) that will be spread across all BI systems, this wrapper will be used to process your data with XI for a desired functionality ! When calling it, it will retrieve the corresponding dynamic RFC name and pass values accordingly.

3 - import the wrapper RFC definition in XI and use it for the scenario

I'm not sure it will work, but unless there are better solution, I'd give a try

Rgds

Chris

Former Member
0 Kudos

Thanks Chris, for your suggestion. We will surely give it a try.

I would appreciate any other suggestions too..

XIer

Former Member
0 Kudos

Any other suggestion please.

Thanks,

XIer