Mapping problem in idoc

Hi
  I had a source segment E1EDP20 (0---99 occurences), i need to pass a constant value to target field poitem.
  the requirement is
on every occurence of  E1EDP20, the constant value should be incremented by 1 and that constant should be passed to target field poitem.
Ex- on first occurence of E1EDP20 the constant value should be 1.
      on second occurence of E1EDP20 the constant value should be 2.
     on third occurence of E1EDP20 the constant value should be 3.
like this as long as on  E1EDP20 occurs the constant value should be incremented by 1.
the constant should be passed to targetfield poitem.
pls suggest what is the logic should i write for the above requirement.
regards
raghu

If your requirement is to make the string length to 4 padding with 0's before, then try the below udf.
public static String Pad(String input, String padChar, int iLength, String sPadDir) {
          StringBuffer strBuf = new StringBuffer(input);
          String sTemp = "";
          int iInputLen = input.length();
          if (iInputLen >= iLength)
               return input;
          if (sPadDir.length() != 0) {
               if (sPadDir.equalsIgnoreCase("right")) {
                    for (int j = 0; j < iLength - iInputLen; j++) {
                         sTemp = strBuf.append(padChar).toString();
               } else if (sPadDir.equalsIgnoreCase("left")) {
                    for (int h = 0; h < iLength - iInputLen; h++) {
                         sTemp = strBuf.insert(h, padChar).toString();
               } else {
                    sTemp = "Pad Direction Incorrect";
          } else {
               sTemp = "Pad Direction Does not exist";
          return sTemp;
constant value->UDF->Target
If you use the above UDF, you would get the output as 0xxx if your input is xxx,00xx for xx input,000x for x input.
Regards,
Swetha.

Similar Messages

  • Mapping Problem ORDERS Idoc to Edifact

    Hi,
    I have a mapping problem with the IDOC ORDERS:
    I get the IDOC with several E1EDP01. Each E1EDP01 has several E1EDPT1, where i want only the first one (which I get over the TDID value). Each E1EDPT1 has min. 1 E1EDPT2.
    Now I have to map each field TDLINE from first two E1EDPT2 of the first E1EDPT1 to the Edifact fields /LIST/S_UNB/S_UNH/G_SSG25/S_LIN/S_IMD[1]/C_C273/D_7008 (from the first E1EDPT2) and, if a second E1EDPT2 exists in /LIST/S_UNB/S_UNH/G_SSG25/S_LIN/S_IMD[1]/C_C273/D_7008_2.
    I use following UDF:
    //a = TDLINE
    //b = Number of entry in the List
    int pos =Integer.parseInt(b[0]);
    if ( pos < a.length )
    result.addValue(a[pos]);
    else
    result.addValue(ResultList.SUPPRESS);
    Unfortunatly, I think becaus of the context problems (not every E1EDPT1 has two E1EDPT2), it's not working. Could somebody help me with this problem?
    Thanks in advance
    Dominic

    Dear Dominic ,
    I had same problem when I was trying to do the same thing for FTX segment.
    Your UDF is fine but you don't need else condition.
    //a = TDLINE
    //b = Number of entry in the List
    int pos =Integer.parseInt(b[0]);
    if ( pos < a.length )
    result.addValue(a[pos]);
    for C_C273 assigned contant value and
    D_7008 assigned TDLINE but change the context to E1EDPT1
    and for D_7008_2
    TDLINE(context to E1EDPT1 )
                                                      ====>UDF====>D_7008_2
    Contant(=1)
    It should work becasue my map is working fine. If not let me know error message.
    Thanks
    Shubhankar

  • Context Mapping Problem from IDoc to EDI

    Hi,
    I'm trying to map an IDoc to an EDI and I get this problem.
    In my IDoc, I have segment E1ADRM1 (1:N)
    My mapping condition is if E1ADRM-PARTNER_Q = OSP then copy E1ADRM-REGION into x (EDI field)
    So here is my problem:
    In my IDoc test, the segment E1ADRM1 is repeated 6 times and the field REGION is not populated in all iterations so the wrong
    REGION is being copied to my EDI field.
    If I do a display queue on E1ADRM-PARTNER_Q, the value OSP is at the 5th position
    AG
    SP
    VE
    WE
    OSP  ***
    OSO
    If I do a display queue on E1ADRM-REGION, since only 5 segment E1ADRM have the field REGION populated, I get
    KS
    VA
    KS
    ON
    VA
    **(E1ADRM-PARTNER_Q = SP do not have the RIGION populated so not showing in the IDoc)
    So now, since E1ADRM-PARTNER_Q = OSP is at the 5th position, it is copying the 5th E1ADRM-REGION from the list but it should be the 4th.
    How can I do that?
    Rgds,
    Yves

    Hi,
    For the mapping to work as you are expecting the queue should look like this(<b>CC</b> denotes context change)..
    KS
    <b>CC</b>
    <b>CC</b>
    VA
    <b>CC</b>
    KS
    <b>CC</b>
    ON
    <b>CC</b>
    VA
    If you are not having the context changes, check at what level is field REGION at, right click on REGION in graphical mapping and choose menu item context, the 1st entry should have the tick mark(same should be for the PARTNER_Q field also).
    Thanks,
    Renjith.

  • Mapping Problem in IDOC to XML scenario

    hi,
    In the target i have a tag which says:
    Extrinsic 0..unbounded
    name     required
    I have to map the above target to a source which comes from different IDOC segments.
    E.g.
    if E1EDP17.Qualf = '002' then map the E1EDP17.lktext to the "name"
    if E1EDP17.Qualf = '001' then map the E1EDP17.lktext to the Extrinisc.
    If data resides in other segments, how would i map those segments to the same output in xml.
    Example:
    <Extrinsic name="a">test</Extrinsic> -> this comes from E1EDP17 segment
    <Extrinsic name="a">test</Extrinsic> -> comes from segment A
    <Extrinsic name="a">test</Extrinsic> -> comes from segment B
    How can i use a single Target to map from different sources if they are in different segments?
    Any tips?
    Thanks,
    KP
    Message was edited by: Tirumal Kumar Pappu

    Tirumal,
    U will have to use comination of node functions like <b>exists</b> and <b>mapWithDefault</b>.
    Are you sure that, E1EDP17.Qualf will have the value '002' or '001'.
    There are some very good blogs on mapping by Sravya. Go through them and also go through the following link.
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm">sap help for Mapping</a>
    Please reward if helpful

  • Mapping Problem with IDOC HRMD_A05

    Hi All,
    When i am mapping source structure with IDOC HRMD_A05 i am getting Mapping not sufficiently defined...
    The idoc is used to change the address of employee(infotype 0006)..
    my source structure is
    EMPADDR_MT
       EmpAddr1
         Trans_INFTY *
        Address1
          AddressType *
          PERNR       *
          EFdate      *
          Addr1       *
          Addr2       *
          ADDR4       *
          City        *
          Country     *
          state       *
          Postalcode  *
    the fields to be mapped
    So can any one help me out what r fields to be maintained for <b>HRMD_A05</b>...
    Regards,
    Sridhar
    Message was edited by: sridhar reddy kondam

    All the required fields & segments(shown red in mapping editor or min occurence:1) of idoc need to be mapped.If any of the fields are not available in your source for mapping..map those fields with empty constants using constant option of the mapping editor.

  • Mapping Problem. Idoc to file senerio...

    Hi XI Gurus
                             I need a help.
    I have an idoc.The output is papped to a file , this being a IDOC to File senerio. The Idoc  contains segmnent1,2,3,4,5,6,7.The occurance of segment 7 is optional.It may come, it may not come. If segment 7 comes then there is  a field callled mwskz which would contain 2 digits,  say 'D1',  or  'D2' or D3' or 'D4' or  D5' or 'D6'  or D7'or 'F8' or D9'. The file has a mapping, where there are 9 fields [ say F1, f2, f3, f4, f5, f6, f7, f8, and f9 ]  in the ROOT. If at any instance, for a given segment 1, there is  a segment7, then the contents of the fields MWSKZ is mapped based on it's content , say if the content ofnwskz is D6 then all fields from F1 - F9 would be populated by the constant term 'N' except for the field 'F6' which would contain 'Y'.
    I have done a mapping, but it is failing...
    I have used, remove contexts for the field as well as segment . I have use the function exists...but, after putting PAYLOASD, what I can see is, the mapping of the occurance of SEGMENT7 is not synchronised with field mwskz.
    Experts Pls help.
    Pls send me ur email address so that I can show u the screen-shots of the mapping !!!!
    Many Thanks in Advance
    Arnab
    Please read the Forum's Rules of Engagement,
    i.e.,
    [/thread/117188 [original link is broken];
    and refrain from using email correspondence as the main objective of the Forums is to share knowledge.
    SDN PI/XI Forum Moderator

    Hi Arnab,
    If i have understood your requirement correctly, you need to duplicate your ROOT node which has fields f1.. f9 for 9 times and map it to a constant. Now you can provide the condition like this:
    mwskz = D6-> createIf -> ROOT
    and so on....
    In the ROOT segment now you can directly map the fields f1 to f9 as per the requirement, i.e., f1 to f5 and f7 to f9 can be mapped to N directly and f6 can be mapped to Y.
    Correct me if i have misunderstood your requirement.
    Regards,
    Sanjeev.

  • Mapping problem for IDOC Type DESADV

    Dear all
    I need to change Segment E1EDP07 in the message type DESADV.
    I should concatenate VBELN and VGPOS into BSTNK.
    I tried to do this with BD79 (Rules for Data Converting). This seems not to work as I can get only 1 sender Field.
    So I tried to use the userexit EXIT_SAPLBD11_001, but it seems that this is not used. I have set a break-point for debugging and treated the IDOC with RSNAT00 without any stop.
    Do you have any ideas how I can do this?
    Herbert

    >
    Herbert Schlup wrote:
    > I have 2 entries for my DWSADV01
    >
    > 1 with FM IDOC_INPUT_DESADV and the other with IDOC_INPUT_DESADV1
    With the first one, you cannot do much, as there is no user exit in it. But in the second one, there is a user exit when the idoc data is parsed the exit name is EXIT_SAPLV55K_004 and is called in the subroutine  DESADV_IDOC_PARSE in the function.
    But please note that the function IDOC_INPUT_DESADV1 is used with process code DELS for message type DESADV and Idoc type DELVRY01 and IDOC_INPUT_DESADV  is used with process code DESA and message type DESADV with IDoc type DESADV01.  So you might be using IDOC_INPUT_DESADV  function and unfortunately there are no user exits to handle your requirement.
    My advice would be to check with the source system or the middleware to define the mapping of these fields according to your requirement. But if that is not possible, then you need to first check which message type and IDoc type you are receiving and proceed accordingly
    KR,
    Advait

  • JDBC to IDoc Mapping Problem

    Hello,
    I have a connection going from a SQL (via a JDBC connection), mapping into an IDOC.  Connections all work, but for some reason when I turn on the communication channel to pull from the database through a SELECT statement, I only get the header of the Idoc (below).  I have tried many different things and cannot see why the mapping does not seem to be working.  When I load the test data as a test instance in the mapping, it works.  Any help would be appreciated.
    Thank you.
      <?xml version="1.0" encoding="UTF-8" ?>
      <CRMXIF_PRODUCT_MATERIAL_SAVE01 />

    Hi,
    Document Name
    The document name is inserted in the message as the main XML tag. The default value is resultset.
    Document Namespace
    The namespace is added to the document name.
    See the example below
    The system converts the table resulting from the query SQL statement into a valid XML document and sends it to the Integration Engine. The document looks like this:
    <resultset>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    <row>
    <column-name1>column-value</ column-name1>
    <column-name2>column-value</ column-name2>
    <column-name3>column-value</ column-name3>
    </row>
    </resultset>
    Regards
    Chilla..

  • Mapping to an IDOC using an externally created XSL file

    I want to map a message to an IDoc using an ABAP XSLT transform. I am creating the XSLT in an external tool.
    I need to use an XSD definition of the IDOC as the target document of the mapping. I can get that in two ways:
    1) Get the XSD definition of the IDOC from transaction WE60 and use the menu command 'Documentation -> XML Schema'
    2) In the Integration Repository, export the XSD of the imported IDOC.
    The problem is, there are significant syntax differences between these versions, and I don't know which is the correct version. For instance, the XSD exported from the Integration Repository has a mandatory attribute 'SEGMENT' for each segment that must be filled to create a valid XML message; this is not the case when the XSD definition is created in WE60.
    Can somebody advise which is the correct version to use?

    Hi Anthony,
    This is really strange...
    In both case XSD should be same...can you please tell for which idoc you are generating xsd?
    Eventhough if you generate XML Schema using WE60,  mandatory attribute 'SEGMENT' for each segment has to be there....this validation would be done while posting idoc. It will check for all mandatory fields.
    I have some different thoughts that what wojciech has suggested...
    "If were your shoes I would use xsd from integration repository because that's the expected result...."
    But final goal is not to achieve mapping but posting idoc with proper data in R/3 system successfully.
    Your second question..
    "Do I assume then that placing a constant value of 1 in the SEGMENT attribute is just to satisfy the validation of the XML message against the XSD:..?
    ummm...I think if you assign constant "1" to segment it will generate that segment while creating idoc. Its mandatory to assign constant value to segment which you want to generate...
    "Can I assume that the IDoc adapter will fill the SEGMENT attribute with the correct value?.."
    I dont think so Idoc adapter will fill this attribute automatically...you need to assign constant to field segment.
    Nilesh

  • Mapping problem:from E1EDK14-ORGID to PORDCR102-PUR_GROUP

    Mapping problem:from E1EDK14-ORGID to PORDCR102-PUR_GROUP
    E1EDK14 occurs 4 times in the source sys:
    1   E1EDK14-QUALF = '014'
         E1EDK14-ORGID = 'YP01'      <=  purchase organization
    2   E1EDK14-QUALF = '009'
         E1EDK14-ORGID = '001'      <=  purchase group
    3   E1EDK14-QUALF = '013'
         E1EDK14-ORGID = 'NB'      <=  document type
    4   E1EDK14-QUALF = '011'
         E1EDK14-ORGID = 'C999'      <=  company code
    I always want to copy "E1EDK14-ORGID = '001'" to PORDCR102-PUR_GROUP.
    I have a solution which works but not perfect:
    E1EDK14-ORGID=>copyvalue[1]=>PORDCR102-PUR_GROUP
    I want to have the perfect mapping as follow:
    IF E1EDK14-QUALF = '009'.
      E1EDK14-ORGID = '001' => PORDCR102-PUR_GROUP
    ENDIF.
    I did it in the data flow editor as follow:
    /PORDCR102/IDOC/E1PORDCR1/E1BPMEPOHEADER/PUR_GROUP=
    ifWithoutElse([keepss=false]stringEquals
    (removeContexts(/ORDERS05/IDOC/E1EDK14/QUALF=),
    const([value=009])), /ORDERS05/IDOC/E1EDK14/ORGID=)
    But the result in the target sys is always 'YP0'(The first E1EDK14-ORGID)
    How to solve this problem?
    Thanks
    ming yu

    Hi,
    Try like this.
    E1EDK14-QUALF   --------
    Constant(009) ----------------   EqualsS --------------- 
                                                                 And(Boolean Function)     ------ IfWithoutElse -- PORDCR102-PUR_GROUP
    E1EDK14-ORGID -------                                                      E1EDK14-ORGID  ----------------
    Constant(001)  --------------   EqualsS ------------------
    Regards,
    P.Venkat

  • Message mapping challenge in IDOC to EDI scenario

    Dear PI message mapping experts,
    I'm a newbie in PI and facing a mapping problem using graphical message mapping.
    I'm in an IDOC (INVOIC.INVOICE02) to FILE (EDI) scenario.
    Here after is the mapping i need to perform :
    Source structure IDOC :
    <E1EDKA1> (0..99)
       <NAME1> A </NAME1>  (0..1)
       <NAME2> B </NAME2>  (0..1)
       <NAME3> C </NAME3>  (0..1)
       <NAME4> D </NAME4>  (0..1)
    </E1EDKA1>
    Target structure :
    <AccountingCustomerParty>  (1..1)
       <Party> (0..1)
          <PartyName> (0..unbounded)
              <Name>A</Name> (1..1)
          </PartyName>
          <PartyName>
              <Name>B</Name>
          </PartyName>
          <PartyName>
              <Name>C</Name>
          </PartyName>
          <PartyName>
              <Name>D</Name>
          </PartyName>
       </Party>
    </AccountingCustomerParty>
    I know i have to play with context and queues with stanard function or UDF but cannot succeed to do it.
    Could you please help me ?
    Thanks in advance,
    Alysee

    One approach out of available few ways to implement this:
    NAME1 - Exists - CreateIf - PartyName[0]
    NAME2 - Exists - CreateIf - PartyName[1] (Create deuplicate segment)
    NAME3 - Exists - CreateIf - PartyName[2] (Create deuplicate segment)
    NAME4 - Exists - CreateIf - PartyName[3] (Create deuplicate segment)
    Srikanth Srinivasan

  • N:1 mapping problem with incoming NULL value

    Dear experts,
    i have a problem mapping an incoming Idoc to XML file. Here's the situation:
    1) Structure of inbound Idoc
        ZTST00
        ZTST01 Structure: FIELDNAME, FIELDVALUE. Values: FIELDNAME = "Z1", FIELDVALUE = "4";
        ZTST01 Structure: FIELDNAME, FIELDVALUE. Values: FIELDNAME = "Z2", FIELDVALUE = null;
        ZTST01 Structure: FIELDNAME, FIELDVALUE, Values: FIELDNAME = "ZABC", FIELDVALUE = "5";
        ZTST01 Structure: FIELDNAME, FIELDVALUE. Values: FIELDNAME = "Z4", FIELDVALUE = "6";
        ZTST02
    2) Resulting XML:
        LINEHEADER (1 line)
        LINEDETAIL (1 line, Structure: VALUE)
        LINEFOOTER (1 line)
    3) I need to map ZTST01-FIELDVALUE to LINEDETAIL-VALUE, but only if the FIELDNAME equals "ZABC".
    In my message mapping, i put an IF FIELDNAME = 'ZABC' THEN FIELDVALUE->VALUE, on context ZTST00. But because of the null value in line 2 of the Idoc, the value that is returned to the XML is "6", as the null value is disregarded and not in the queue of FIELDVALUE.
    How can I put the correct value ("5") to LINEDETAIL-VALUE?
    Regards
    William

    Hi William,
    Simply go back to the default context ZTST01 (for both: FIELDNAME and FIELDVALUE fields) and it should be fine.
    Hope this helps,
    Greg

  • Message Mapping - JDBC to IDoc

    Hi,
    I trying to map the resultset from a JDBC adapter (sender) to Inbound IDoc into SAP. I have problems with message mapping and after reading through a number of threads, I followed the following steps:
    1. Download the IDoc definition as XSD.
    2. Change occurrence of node IDOC to 1..unbounded.
    3. Upload changed XSD as external definition and
    4. use the external definition in the mapping.
    After importing the external XSD definition the IDOC node turned red. How do I map this node, now that it is  unbounded?
    Example from Message mapping:
    MT_ETA_RMX................ZSDETA01
    ..EtaNode........................IDOC     (unbounded =  RED)
    ....CARID.................................BEGIN
    ...............................................EDI_DC40
    ...............................................Z1RETA
    .................................................SEGMENT
    .................................................CARID
    Thanks,
    Henk

    Hendrik,
    whichever data record is occuring multiple on your sender JDBC message should be mapped to IDoc segment. It really depends on your JDBC message structure.
    If EtaNode is occuring multiple times, and if based on EtaNode an IDoc has to be created, map that to IDOC and if per every CARID one idoc needs to be created, then use CreateIf and exists node functions to IDoc.
    regards
    SKM

  • PI Mapping problem - Repeating target nodes

    Hello PI buddies!
    My PI mapping problem is as follows:
    I have a source IDoc which I wish to map to a JDBC Message Type.
    In the Idoc I have 2 repeating sections that I wish to combine to create a new node in the target for each combination of the 2 repeating sections.  The source and desired target message structures are pasted below.  In summary for every combination of "sales_org" and "relationship" I want to create an "Access" node.  In my example there are 2 "sales_org" and 5 "relationship".  I would therefore like to generate 10 "Access" nodes.
    I want to achieve this if possible using PI mapping and its standard functions.  Please help!
    SOURCE MESSAGE TYPE:
    <?xml version="1.0" encoding="UTF-8" ?>
    <Z_CRMXIF_PARTNER_SAVE_M01>
    <IDOC BEGIN="1">
      <EDI_DC40 SEGMENT="1">
       <TABNAM>EDI_DC40</TABNAM>
      </EDI_DC40>
      <E101CRMXIF_PARTNER_COMPLEX SEGMENT="1">
       <APPL_SNAME>CRMXIF_PARTNER_COMPLEX</APPL_SNAME>
       <E101CRMXIF_PARTNER_HEADER SEGMENT="1">
       </E101CRMXIF_PARTNER_HEADER>
       <E101BUS_EI_CENTRAL_DATA SEGMENT="1">
        <E101BUS_EI_ROLES SEGMENT="1">
         <APPL_SNAME>BUS_EI_ROLES</APPL_SNAME>
         <CURRENT_STATE>X</CURRENT_STATE>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZBUP02</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM01</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM02</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM03</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
         <E101BUS_EI_BUPA_ROLES SEGMENT="1">
          <APPL_SNAME>BUS_EI_BUPA_ROLES</APPL_SNAME>
          <DATA_KEY>ZCRM04</DATA_KEY>
         </E101BUS_EI_BUPA_ROLES>
        </E101BUS_EI_ROLES>
       </E101BUS_EI_CENTRAL_DATA>
       <E101CRMT_BUS_EI_DATA SEGMENT="1">
        <Z101RMT_BUS_EI_R3_SALESAREA SEGMENT="1">
         <APPL_SNAME>ZCRMT_BUS_EI_R3_SALESAREA</APPL_SNAME>
         <Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1">
          <APPL_SNAME>ZCRMT_BUS_R3_SALES_AREA</APPL_SNAME>
          <ZZSALES_ORG>1000</ZZSALES_ORG>
          <ZZCHANNEL>01</ZZCHANNEL>
          <ZZDIVISION>00</ZZDIVISION>
         </Z101ZCRMT_BUS_R3_SALES_AREA>
         <Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1">
          <APPL_SNAME>ZCRMT_BUS_R3_SALES_AREA</APPL_SNAME>
          <ZZSALES_ORG>2000</ZZSALES_ORG>
          <ZZCHANNEL>01</ZZCHANNEL>
          <ZZDIVISION>00</ZZDIVISION>
         </Z101ZCRMT_BUS_R3_SALES_AREA>
        </Z101RMT_BUS_EI_R3_SALESAREA>
       </E101CRMT_BUS_EI_DATA>
      </E101CRMXIF_PARTNER_COMPLEX>
    </IDOC>
    </Z_CRMXIF_PARTNER_SAVE_M01>
    DESIRED TARGET MESSAGE TYPE:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_CTX001_JDBC_In xmlns:ns0="http://mycompany.co.uk/pi/CTXIN001">
    <SQLStatement1>
      <dbTable Action="INSERT">
       <Table>customer_relationship</Table>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZBUP02</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZBUP02</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM01</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM01</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM02</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM02</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM03</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM03</relationship>
       </Access>
       <Access>
        <sales_org>1000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM04</relationship>
       </Access>
       <Access>
        <sales_org>2000</sales_org>
        <dist_channel>01</dist_channel>
        <division>00</division>
        <relationship>ZCRM04</relationship>
       </Access>
      </dbTable>
    </SQLStatement1>
    </ns0:MT_CTX001_JDBC_In>
    Edited by: Jim Kendall on Apr 22, 2010 12:48 PM
    Edited by: Jim Kendall on Apr 22, 2010 12:50 PM

    SOURCE MESSAGE TYPE:
    &lt;?xml version="1.0" encoding="UTF-8" ?&gt;
    &lt;Z_CRMXIF_PARTNER_SAVE_M01&gt;
    &lt;IDOC BEGIN="1"&gt;
      &lt;EDI_DC40 SEGMENT="1"&gt;
       &lt;TABNAM&gt;EDI_DC40&lt;/TABNAM&gt;
      &lt;/EDI_DC40&gt;
      &lt;E101CRMXIF_PARTNER_COMPLEX SEGMENT="1"&gt;
       &lt;APPL_SNAME&gt;CRMXIF_PARTNER_COMPLEX&lt;/APPL_SNAME&gt;
       &lt;E101CRMXIF_PARTNER_HEADER SEGMENT="1"&gt;
       &lt;/E101CRMXIF_PARTNER_HEADER&gt;
       &lt;E101BUS_EI_CENTRAL_DATA SEGMENT="1"&gt;
        &lt;E101BUS_EI_ROLES SEGMENT="1"&gt;
         &lt;APPL_SNAME&gt;BUS_EI_ROLES&lt;/APPL_SNAME&gt;
         &lt;CURRENT_STATE&gt;X&lt;/CURRENT_STATE&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZBUP02&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM01&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM02&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM03&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
         &lt;E101BUS_EI_BUPA_ROLES SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;BUS_EI_BUPA_ROLES&lt;/APPL_SNAME&gt;
          &lt;DATA_KEY&gt;ZCRM04&lt;/DATA_KEY&gt;
         &lt;/E101BUS_EI_BUPA_ROLES&gt;
        &lt;/E101BUS_EI_ROLES&gt;
       &lt;/E101BUS_EI_CENTRAL_DATA&gt;
       &lt;E101CRMT_BUS_EI_DATA SEGMENT="1"&gt;
        &lt;Z101RMT_BUS_EI_R3_SALESAREA SEGMENT="1"&gt;
         &lt;APPL_SNAME&gt;ZCRMT_BUS_EI_R3_SALESAREA&lt;/APPL_SNAME&gt;
         &lt;Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;ZCRMT_BUS_R3_SALES_AREA&lt;/APPL_SNAME&gt;
          &lt;ZZSALES_ORG&gt;1000&lt;/ZZSALES_ORG&gt;
          &lt;ZZCHANNEL&gt;01&lt;/ZZCHANNEL&gt;
          &lt;ZZDIVISION&gt;00&lt;/ZZDIVISION&gt;
         &lt;/Z101ZCRMT_BUS_R3_SALES_AREA&gt;
         &lt;Z101ZCRMT_BUS_R3_SALES_AREA SEGMENT="1"&gt;
          &lt;APPL_SNAME&gt;ZCRMT_BUS_R3_SALES_AREA&lt;/APPL_SNAME&gt;
          &lt;ZZSALES_ORG&gt;2000&lt;/ZZSALES_ORG&gt;
          &lt;ZZCHANNEL&gt;01&lt;/ZZCHANNEL&gt;
          &lt;ZZDIVISION&gt;00&lt;/ZZDIVISION&gt;
         &lt;/Z101ZCRMT_BUS_R3_SALES_AREA&gt;
        &lt;/Z101RMT_BUS_EI_R3_SALESAREA&gt;
       &lt;/E101CRMT_BUS_EI_DATA&gt;
      &lt;/E101CRMXIF_PARTNER_COMPLEX&gt;
    &lt;/IDOC&gt;
    &lt;/Z_CRMXIF_PARTNER_SAVE_M01&gt;
    DESIRED TARGET MESSAGE TYPE:
    &lt;?xml version="1.0" encoding="UTF-8"?&gt;
    &lt;ns0:MT_CTX001_JDBC_In xmlns:ns0="http://mycompany.co.uk/pi/CTXIN001"&gt;
    &lt;SQLStatement1&gt;
      &lt;dbTable Action="INSERT"&gt;
       &lt;Table&gt;customer_relationship&lt;/Table&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZBUP02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZBUP02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM01&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM01&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM02&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM03&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM03&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;1000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM04&lt;/relationship&gt;
       &lt;/Access&gt;
       &lt;Access&gt;
        &lt;sales_org&gt;2000&lt;/sales_org&gt;
        &lt;dist_channel&gt;01&lt;/dist_channel&gt;
        &lt;division&gt;00&lt;/division&gt;
        &lt;relationship&gt;ZCRM04&lt;/relationship&gt;
       &lt;/Access&gt;
      &lt;/dbTable&gt;
    &lt;/SQLStatement1&gt;
    &lt;/ns0:MT_CTX001_JDBC_In&gt;

  • Mapping problem with Wireless Keyboard and Japanese iPhone

    Hi everyone:
    This seems to be a slightly obscure question -- at least, I can't find a ready answer for it with the search terms I've tried, possibly because most people don't use this particular accessory with the iPhone.
    I have an iPhone 4 that I bought from and use on Softbank, the carrier in Japan, where I live.  While visiting the United States recently, I bought an Apple Wireless Keyboard from an Apple retailer.   I wanted to carry it with me for use with my iPhone, so I would reliably have a convenient way to access the Internet without being confined to the touchscreen keyboard.  (I live in a rural area where WiFi spots are uncommon, but my iPhone's access to Softbank's data network is fairly good and consistent.)
    However, to my frustration, I can't use the keyboard due to a mapping problem.  The Bluetooth connection is fine -- the iPhone can discover the keyboard.  However, the mapping is off: typing "Q" gets me "A," typing "Z" gets me "W", numbers and punctuation are off, etc.  The key point: This is NOT a problem with the International Keyboard settings (under the Settings -> General -> Keyboard -> International Keyboards menu).  I have the Keyboard setting set to QWERTY, which is the layout of the Apple keyboard; I have tried all the other possibilities, just in case.  None of them work.  Setting the Keyboard setting to QWERTY does not make the external QWERTY keyboard map correctly.
    The rather ironic addendum is this: While on a recent trip to Tokyo, I visited the Apple store in Shibuya and, after concluding the main business of my visit (discussing my MacBook's battery problems with an English-speaking staffer), I took out my iPhone and keyboard and asked him about my mapping problem.  He started with the Keyboard menu, tried the same things I had tried, realized they weren't working, and puzzled over the problem for a while.  Then he did this: He hit a key combination (I believe) that brought up a menu on the iPhone's screen.  "Ah, there's your problem," he said, and selected a new setting.  The problem was instantly fixed.
    To my chagrin, however, I neglected to write down what "Ken" had done to fix the problem.  Argh... I was looking at the iPhone upside-down; I'd already taken up more than half an hour; people were waiting, and I guess, being used to living in the countryside now, that I'm not used to Shibuya crowds any more.  Anyway, I didn't take careful notes or ask him to walk me through it, and now I cannot recall or repeat what he did.  And I still can't use my keyboard!
    Any ideas or advice, anyone?  How did "Ken" fix my problem, and how can I repeat it?  Much, much appreciated, in advance.

    THAT'S IT.  Sir, you have solved my problem.  Thank you!!
    And I feel a little silly; this will doubtless seem to an expert as if it should have been obvious all along.  But isn't that always the way in hindsight?
    Here's what happened: The key combination I was trying to remember was "Apple/command + space on the hardware keyboard," as you just said above.  The "menu" it brings up is, apparently, a list of keyboards.  I take it that this list is the same as the list of the "virtual" keyboards on the iPhone?  I have never had more than one external keyboard -- the Apple Wireless -- but I do have several keyboards active virtually, as the iPhone in Japan seems to come with both the "Nihongo Ten-key" and the "Nihongo Romaji" keyboards active, and I added several other languages as well.
    When I hit "Apple/command + space," this list comes up on the iPhone's touchscreen.  Highlighted and checked at the top is "English," just as if it had been selected all along.  But nonetheless, when I first turn on and pair my keyboard with the iPhone, I need to perform this key-combination action, as if to "reselect" English, and then the keyboard promptly starts working properly as QWERTY.  I can only assume that one of the others had been default-selected before -- presumably one of the Nihongo ones? -- and that this was causing the interference.
    Thank you again!  You have made me and my wireless keyboard very happy.

Maybe you are looking for

  • How to share an array among members of a package

    I need to share the value of h among members of a package. The values for Byte h are generated by button events in the other program in the package [ sample below ]. That is transformed into ASCII code, h, which ideally should go through SerialWriter

  • How to open RAW files in 16 bit mode?

    In Photoshop CS3 all my RAW files opened in 16 bit mode. In CS5 they all open in 8-bit mode. I've looked all over for where this setting might be made but I can't find it. How do I tell Photoshop or Camera Raw to open images in 16 bit mode?

  • Error on Parked Logical Invoices

    Hello everyone, I have a problem with posting logical invoices in a new fiscal year. Parked logical invoices are getting a hard error when users attempt to process the invoice in the new fiscal year. Do you have any idea how to make it work? The last

  • I was trying to update to iOS 6 then I thought it was done so i left the wifi but now my screen turns blue and i cant use it.

    I was trying to update to iOS 6 then I thought it was done so i left the wifi but now my screen turns blue and i cant use it.

  • Errors installing update for Reader

    I tried to install an update on my PC for Reader and received an error msg 1321 or 1301 about authority to access a file location. I uninstalled and reinstalled (tried) and now I have a blue screen and windows will not open.  I've tried several troub