XI Mapping - understanding contexts

Hello,
I have a PO idoc that I am trying to map from R/3 to a proxy in SUS (Supplier Self Services).  I need to allow each line item to have a "ship from location" address. 
The Idoc structure looks like this: ZORDERS1.IDOC.E1EDP01.Z1EDPA1.PARVW = "ZS",
E1EDP01 is repeated for each line item.  If PARVW within Z1EDPA1 = "ZS" then there is a "ship from location" assigned.
My test PO has 3 line items and line items 1 and 3 have "Ship From locations" assigned.  When I map the ship from locations the first line item has the ship from location data, the second shows "Ship From Location" but it shows no data, the third line item  doesn't even show the text "Ship From Location".
I believe this has to be a context issue but I don't understand how it should be set up.
Any ideas?
Thanks,
Matt

IDOC structure (simplified):
<ZORDERS1>
   <MANDT>050</MANDT>
   <DOCNUM>0000000057208371</DOCNUM>
   <E1EDK01>
        <CURCY>USD</CURCY>
        <WKURS>1.00000</WKURS>
   </E1EDK01>
   <E1EDP01>
        <POSEX>00001</POSEX>
        <ACTION>001</ACTION>
        <PSTYP>0</PSTYP>
        <MENGE>50.000</MENGE>
        <MENEE>PC</MENEE>
        <Z1EDPA1>
              <PARVW>ZS</PARVW>
              <LIFNR>0004000073</LIFNR>
              <NAME1>ZEICHMAN MANUFACTURING INC.</NAME1>
              <STRAS>5985 CLAY AVENUE SW</STRAS>
              <ORT01>Grand Rapids</ORT01>
              <PSTLZ>49548</PSTLZ>
              <LAND1>US</LAND1>
              <REGIO>MI</REGIO>
        </Z1EDPA1>
   </E1EDP01>
   <E1EDP01>
        <POSEX>00002</POSEX>
        <ACTION>001</ACTION>
        <PSTYP>0</PSTYP>
        <MENGE>40.000</MENGE>
        <MENEE>PC</MENEE>
        <Z1EDPA1></Z1EDPA1>
   </E1EDP01>
   <E1EDP01>
        <POSEX>00003</POSEX>
        <ACTION>001</ACTION>
        <PSTYP>0</PSTYP>
        <MENGE>90.000</MENGE>
        <MENEE>PC</MENEE>
        <Z1EDPA1>
              <PARVW>ZS</PARVW>
              <LIFNR>0004000073</LIFNR>
              <NAME1>ZEICHMAN MANUFACTURING INC.</NAME1>
              <STRAS>5985 CLAY AVENUE SW</STRAS>
              <ORT01>Grand Rapids</ORT01>
              <PSTLZ>49548</PSTLZ>
              <LAND1>US</LAND1>
              <REGIO>MI</REGIO>
        </Z1EDPA1>
   </E1EDP01>
</ZORDERS1>
XML Structure for SUS (simplified):
<PurchaseOrderRequest>
   <PurchaseOrder>
      <documentnumber></documentnumber>
      <item>
          <ShipFromLocation>
               <name></name>
               <street></street>
               <city></city>
               <state></state>
               <zip></zip>
           </ShipfromLocation>
        </item>
    </PurchaseOrder>
</PurchaseOrderRequest>
Does that help?
Thanks,
Matt

Similar Messages

  • SAP XI - Mapping with Contexts

    Hi Guys,
    We have a problem when mapping with contexts. Couldyou please help.
    What we are trying to achieve is if PARVW = X then map name2 to name2. We have done this all the way down the DT_Address. The context on both input values are set to IDOC.
    The problem is that when all the fields are in a particular segment occurence then it maps perfectly. But on numerous occurrences of E1EDKA1 various fields are missing i.e.name2 or pstl2 etc. What we want to happen is if the field doesn’t exist in that particular occurrence then just leave blank and don’t map. What is happening instead is XI keeps looking for this field and maps the first occurrence it can find of it. So we end up with like 6 occurrences of the same thing.
    Is their a way to specify that only map the fields if it is within the same occurrence as the qualifier. So basically Name2 follows PARVW to the same occurrence.
    Also is their a way of making it so we don’t get
    Name
    Name
    Name
    Id
    Id
    Id
    Address
    Address
    Address
    And instead get
    Name
    Id
    Address
    Name
    Id
    Address
    Name
    Id
    Address
    Thanks people

    Hi Thanks for your input.
    It was a little to do with the context but in the end I had to put another element in the target structure. So it went
    Customer 0-unbounded
            customerAddress 1-1
                       Details 0-1
                       ETC 0-1
                       ETC 0-1
    I mapped the customer to E1EDKA1
    I mapped customer address to a constant
    and the details I ampped as before but with no context.
    This seemed to work.... I have no idea why but it did work. If anybody could explain the why, I would appreciate it.

  • Trying to understand context indexes and contains-help

    Hi
    i am using
    Achieving functionality of many preferences using one context index
    to understand context indexes and contains
    and i get the following
    Error starting at line 1 in command:
    begin
    ctx_ddl.create_preference ('nd_mcds', 'multi_column_datastore');
    ctx_ddl.set_attribute ('nd_mcds', 'columns', 'text nd, text text');
    ctx_ddl.create_section_group ('nd_sg', 'basic_section_group');
    ctx_ddl.add_ndata_section ('nd_sg', 'nd', 'nd');
    ctx_ddl.create_preference ('test_lex', 'basic_lexer');
    ctx_ddl.set_attribute ('test_lex', 'whitespace', '/\|-_+');
    end;
    Error report:
    ORA-06550: line 5, column 15:
    PLS-00302: component 'ADD_NDATA_SECTION' must be declared
    ORA-06550: line 5, column 7:
    PL/SQL: Statement ignored
    06550. 00000 - "line %s, column %s:\n%s"
    *Cause:    Usually a PL/SQL compilation error.
    *Action:
    so i am using the following to check for the error
    http://docs.oracle.com/cd/E18283_01/text.112/e16593/cddlpkg.htm#BABCBFCB
    plus
    oracle text application developer's guide
    plus
    oracle text reference
    but these have not listed that error (i have even googled this in vain)
    background::we were actually using catsearch but because of its downsides i want to implement this
    Is Achieving functionality of many preferences using one context index a good place to start when one does not know about
    context and contains??
    please post any other useful link for contains and context index that even explains
    1) fuzzy
    2) stem
    3) synonym
    4) near
    5) soundex
    6)ndata
    7)lexer
    thanks in advance

    Ndata is new to Oracle 11g. Your other posts indicate that you are using Oracle 10g, so you don't have ndata, so you get an error when you try to use it. If you want to use the 11g features that enable context indexes with contains to do all of the things that ctxcat indexes with catsearch do, then you need to upgrade to 11g.
    The online documentation is searchable. Most things regarding Oracle Text are contained in either the Oracle Text Reference or the Oracle Text Application Developer's guide.
    I suggest that you start with something very simple, then build from there.
    The following is similar to your other post that used catsearch:
    SCOTT@orcl_11gR2> CREATE TABLE mv_cat_seg_reg_prod
      2    (cat_ids       VARCHAR2 ( 7),
      3       act_status    VARCHAR2 (10),
      4       name           VARCHAR2 ( 1),
      5       email           VARCHAR2 ( 1),
      6       address1      VARCHAR2 ( 1),
      7       address2      VARCHAR2 ( 1),
      8       contact_name  VARCHAR2 ( 1),
      9       mobile           VARCHAR2 ( 1),
    10       telephone     VARCHAR2 ( 1))
    11  /
    Table created.
    SCOTT@orcl_11gR2> INSERT ALL
      2  INTO mv_cat_seg_reg_prod VALUES
      3    ('1', 'Y', 'A', 'B', 'C', 'D', 'E', 'F', 'G')
      4  INTO mv_cat_seg_reg_prod VALUES
      5    ('2', 'N', 'H', 'I', 'J', 'K', 'L', 'M', 'N')
      6  SELECT * FROM DUAL
      7  /
    2 rows created.
    SCOTT@orcl_11gR2> CREATE INDEX mv_cat_seg_reg_prod_idx
      2  ON mv_cat_seg_reg_prod (cat_ids)
      3  INDEXTYPE IS CTXSYS.CONTEXT
      4  /
    Index created.
    SCOTT@orcl_11gR2> SELECT token_text FROM dr$mv_cat_seg_reg_prod_idx$i
      2  /
    TOKEN_TEXT
    1
    2
    2 rows selected.
    SCOTT@orcl_11gR2> SELECT *
      2  FROM   (SELECT SCORE (1), name, email, address1, address2, contact_name, mobile, telephone
      3            FROM   mv_cat_seg_reg_prod
      4            WHERE  CONTAINS (cat_ids, '1', 1) > 0
      5            AND    act_status = 'Y'
      6            ORDER  BY DBMS_RANDOM.VALUE)
      7  WHERE  ROWNUM < 8
      8  /
      SCORE(1) N E A A C M T
             4 A B C D E F G
    1 row selected.

  • Mapping and context problem

    Hi i am not being able to perform this mapping, the scenario is like this:
    i need to create one LINE in the output for each E1PLOGI in the input when FLAG3 = 'S' 
    also as i don't understand  completely the context theory i cant figure out in witch context to set the fields
    My context is set like this
    FLAG3 -> context = E1PLOGI
    My logic is createif( FLAG3 = 'S' ) -> LINE
    My xml test file have:
    one E1PLOGI node without E1P0000
    one E1PLOGI  with E1P0000 node where FLAG3 = 'N'
    one E1PLOGI completely OK
    The result is that not even one LINE its created.
    If only put one line ok it works ok, but if one line doesnt have an  E1P0000 node or if FLAG3='S' then the next OK input lines it wont come out.
    plase heeelp!
    IN STRUCTURE
    <Z_HRMD_A>
         <IDOC BEGIN="1">
                  <EDI_DC40 SEGMENT="1">
                           <CREDAT>20080731</CREDAT>
                   </EDI_DC40>
                   <E1PLOGI SEGMENT="1">
                             <E1PITYP SEGMENT="1">
                                     <E1P0000 SEGMENT="1">
                                            <FLAG3>S</FLAG3>
                                     </E1P0000>
                              </E1PITYP>
                    </E1PLOGI>
         </IDOC>
    </Z_HRMD_A>
    Z_HRMD_A      1..1
    IDOC           1..1
    EDI_DC40     1..1
    CREDAT          0..1
    E1PLOGI          1..UNBOUNDED
    E1PITYP          0..UNBOUNDED
    E1P0000          0..UNBOUNDED
    FLAG3          0..1
    OUT STRUCTURE
    <FILE_X>
         <LINE>
              <FIELD_1>
              <FIELD_2>
              <FIELD_3>
              <FIELD_4>
         </LINE>
    </FILE_X>
    FILE_X          1..1
    LINE          0..UNBOUNDED
    FIELD_X          0..1
    Edited by: Mariano Billinghurst on Aug 4, 2008 6:05 PM
    Edited by: Mariano Billinghurst on Aug 4, 2008 6:12 PM

    Here it is the mapping and the display of the queues in each step.
    Mi test xml has
    1-one E1EPILOGI without EP0000
    2-one E1EPILOGI OK
    3-one E1EPILOGI with FLAG3 = N
    4-one E1EPILOGI OK
    http://img297.imageshack.us/img297/3615/mappingandqueueswi0.jpg
    beena with your solution it was creating two lines , one with 1 and one with 3.
    Kumar i think with your solution i am much closer, but still doesnt work ok. Could you explain me why at the end of the queres everything says "supress"?
    Regards.
    Mariano.

  • How to map a context attribute to an input field

    Hi,
    I am new to CRM 2007 UI.I have a table control view on my screen and records are filled in this table when an user enters a value in an input field and presses enter.My bsp page looks something like this.
    <%@page language="abap" %>
    <%@extension name="chtmlb" prefix="chtmlb" %>
    <%@extension name="thtmlb" prefix="thtmlb" %>
    <%@extension name="uhtmlb" prefix="uhtmlb" %>
    <%@extension name="htmlb" prefix="htmlb" %>
    <%@extension name="xhtmlb" prefix="xhtmlb" %>
    <%@extension name="crm_bsp_ic" prefix="crmic" %>
    <%@extension name="bsp" prefix="bsp" %>
    <%
      DATA lv_xml TYPE string.
      lv_xml = controller->configuration_descr->get_config_data( ).
    %>
    <thtmlb:grid cellSpacing = "1"
                 columnSize  = "1"
                 height      = "100%"
                 rowSize     = "2"
                 width       = "100%" >
      <thtmlb:gridCell colSpan     = "1"
                       columnIndex = "1"
                       rowIndex    = "1"
                       rowSpan     = "1" >
        <thtmlb:label id   = "NAMELABEL"
                      for  = "NAMEINF"
                      text = "Enter a name" />
        <thtmlb:inputField          id                = "NAMEINF"
                                disabled          = "FALSE"
                                tooltip           = "Enter a name to see all records"
                                submitOnEnter     = "X"/>  </thtmlb:gridCell>
      <thtmlb:gridCell colSpan     = "1"
                       columnIndex = "1"
                       rowIndex    = "2"
                       rowSpan     = "1" >
        <chtmlb:configTable id              = "PaymentTable"
                            table           = "//HeaderData/Table"
                            xml             = "<%= lv_xml %>"
                            selectedRowIndex      = "<%= HeaderData->SELECTED_INDEX %>"
                            fillUpEmptyRows = "FALSE" />
      </thtmlb:gridCell>
    </thtmlb:grid>
    The problem is that I want to map this input field to my context attribute.I am from Webdynpro background and ther its pretty easy :)....
    Any suggestions will be helpful.
    Thanks
    Sourav

    Hi,
    you should add the context attribute to the html page itself, or another way of doing it is to implement the set_model method of the view controller.
    On the view controller you can find a lot of usefull attributes like the view manager which can help you understand the bsp framework
    Best regards,
    Erika

  • Pb of Mapping and Context

    Hy everybody
    I'm lost in one of my mapping.
    Inbound :
    <a>
      <b></b>
      ... n times
      <b></b>
    </a>
    I want it in outbound :
    <a>
      <c>
        <b></b>
      </c>
      ... n times
      <c>
        <b></b>
      </c>
    </a>
    I don't manage to reach it.
    Thanks in advance

    Hi,
    Are you able to get atleast one element under
    <C>
       <b></b>
    </C>
    If so ,make use of Remove context and SplitByValue functions here to achieve this.
    Check this -
    /people/sravya.talanki2/blog/2005/12/08/message-mapping-simplified-150-part-ii
    Also you can see the runtime values thru Display Queue in the message Mapping(Repository)
    Hope this helps,
    Regards,
    Moorthy

  • Mapping from context to VC

    Hi everybody, I´m working in a mapping excercise where I want to map a data object in my context that has three header fields and one table to a Visual Composer view, I have no problems with the header fields because they are typed as xsd:string, the problem comes with the complex field (table) called Positions, for sure the 'Positions' type is not the same for the VC model and it never be, so my question is how do you make an input mapping from a complex field in the context to a VC,...
    As you can see here is my mapping :
    If I delete the 'Positions' mapping the build is ok, but when I map the 'Positions' field the build failed with the following message :
    Ant build finished with ERRORS
    com.sap.glx.paradigmInterface.bpmn.compiler.BPMNCompilerException: Mapping compilation failed!
    [ERROR] Incompatible expression type.
    Expected:Form.WS_Data_Object.Positions
    Found:PositionType
    Build stopped due to an error: com.sap.glx.paradigmInterface.bpmn.compiler.BPMNCompilerException: Mapping compilation failed!
    [ERROR] Incompatible expression type.
    Expected:Form.WS_Data_Object.Positions
    Found:PositionType
    MOIN forced shutdown initiated.
    It says clairly that expect a Form.WS_DATA_Object.Positions (VC) and found a 'PositionType' from my context.
    Do I need to cast every mapping !? How do you achieve that both types are the same !?
    Any help will be appreciated.

    I already change my WSDL (start message) to the Visual Composer start node type, and with that change I´m able to map:
    start message -> process context -> VC,
    all these objects have the VC types, so the question is....
    do I really need to create the VC data and then set my wsdl and process context DO with those types !?
    I was thinking in create a wsdl in my trigger then store the input values to a DO object of the same type and then mapping only the required displayed fields to the VC... but If I can´t modify the VC types to meet the context types all this is pointless and I need to recreate all my context into the VC isn´t !?
    Any comment will be appreciated. !
    thanks !

  • How to map single context value attribute to multiple value attributes?

    Hello,
    is there any way to map a single value attribute
    from view's context into several value attributes
    in controller's context?
    The business context of what I want to achieve
    is the following: I have a view which can be called
    in two modes: read only (RO) and read-write (RW).
    The input parameters to the view are the same for
    both modes, however when in RO mode, the view calls
    a different set of web services than when called
    in RW mode. Before calling each of the web services
    I need to populate their context value attributes
    with appropriate input values.
    I know I can do it in Java code, but is it possible
    to do it without any programming (doing it in the
    source code is prone to errors)?
    Any help highly appreciated.
    Greetings,
    Tomek.

    Hi Kishore,
    than you very much for your kind help.
    I have already created a value attribute of type
    boolean and mapped it into the read-only property
    of the UI elements. This however does not solve all
    of the problems... I will describe it with an
    example:
    Let's say the form I want to implement will be
    used to: create (read-write mode), update (read-
    write mode) or show (read-only mode) customer's
    data. The customer's data is complex (lots of
    data, including tree structures).
    The problem is that:
    - when the form is called in read-only mode,
      it should populate its fields with values
      provided by the getCustomerData web service,
    - when the form is called to create a new
      customer (in read-write) mode, it should
      not use the getCustomerData web service.
      Instead it should map the input values
      entered by the user into input parameters
      of the createNewCustomer web service,
    - when the form is called to update customer's
      data, it should first display values returned
      by the getCustomerData web service, and then
      it should map the modified values entered by
      the user into input parameters of the
      updateCustomer web service,
    In all the above cases I must map my view's
    context data to different controller's context
    elements. Doing it directly in the source code
    is not a nice solution. Is there any other
    way to achieve this? 
    Calling a form in different modes in not an
    unusual thing, so I was hoping that maybe
    there are any built-in mechanisms that would
    solve the obove problem...
    Greetings,
    Tomek.

  • Mapping Problem Context Change

    Hi all
    I use Sap ABABusinessPartner to replicate Data.
    Here I have to map only TelephoneNumber where StandardSenderIndicator = X
              partner
              partner
                Telephone
                    StandardSenderIndicator
                    TelephoneNumber
                Telephone
                    TelephoneNumber
              partner
    if context is set to partner Queue of StandardSenderIndicator is <null>;X;<null>
                                           Queue of TelephoneNumber is <null>;Number1 Number2;<null>
    ; means ContextChange
    any Ideas??
    <?xml version="1.0"; encoding="UTF-8"?>
    <ABABusinessPartner >
        <Partner>
            <PartnerRecord>
                <PartnerInformation>
                </PartnerInformation>
            </PartnerRecord>
        </Partner>
    <Partner>
        <PartnerRecord>
            <PartnerInformation>
                <AddressInformation>
                    <Address>
                  <AddressData>
                            <CommunicationInformation>
                                <TelephoneInformation>
                                    <CompleteDataIndicator>X</CompleteDataIndicator>
                                    <Telephone>
                                        <Contact>
                                            <ContactData>
                                                <StandardSenderIndicator>X</StandardSenderIndicator>
                                                <TelephoneNumber>123456</TelephoneNumber>
                                            </ContactData>
                                        </Contact>
                                    </Telephone>
                                    <Telephone>
                                        <Contact>
                                            <ContactData>
                                                <TelephoneNumber>5556666</TelephoneNumber>
                                            </ContactData>
                                        </Contact>
                                    </Telephone>
                                </TelephoneInformation>
                            </CommunicationInformation>
                        </AddressData>
                    </Address>
                </AddressInformation>
            </PartnerInformation>
        </PartnerRecord>
    </Partner>
        <Partner>
            <PartnerRecord>
                <PartnerInformation>
                    <AddressInformation>
                        <Address>
                            <AddressData>
                                <CommunicationInformation>
                                    <TelephoneInformation>
                                        <CompleteDataIndicator>X</CompleteDataIndicator>
                                        <Telephone>
                                            <Contact>
                                                <ContactData>
                                                    <StandardSenderIndicator>X</StandardSenderIndicator>
                                                    <TelephoneNumber>333333</TelephoneNumber>
                                                </ContactData>
                                            </Contact>
                                        </Telephone>
                                    </TelephoneInformation>
                                </CommunicationInformation>
                            </AddressData>
                        </Address>
                    </AddressInformation>
                </PartnerInformation>
            </PartnerRecord>
        </Partner>
    </ABABusinessPartner>

    Hi,
    Telephone
                    StandardSenderIndicator
                    TelephoneNumber
                Telephone
                    TelephoneNumber
    First check if there is a StandardSenderIndicator tag in the source field (exists) and check if it has value X .....now if both conditions are satisfied map the required source element to target.....hopefully your issue will be solved......
    Regards,
    Abhishek.

  • Can anyone help me about mapping Faces Context please?

    Hello buddies!!
    Well, my application does'nt even load when i run it and i map the Faces Servlet like below:
    <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>*.jsp</url-pattern>
        </servlet-mapping>On the other side, it run perfectly when i put the mapping below :
    <servlet-mapping>
            <servlet-name>Faces Servlet</servlet-name>
            <url-pattern>/faces/*</url-pattern>
        </servlet-mapping>but all my links must have the "faces" befores its real url for instance:
    <c:url value="faces/Logout" var="url"/>
            <a href="${url}" >Link</a> and it keeps adding the "faces" everytime i click a link on the adress bar like that:
    http://myhost/myapp/faces/faces/faces/faces/home.jsp
    Thanks very much for any advice!!
    All the best!
    Message was edited by:
    Soneca

    Don't use *.jsp as the mapping for the FacesServlet. This will override the implicit container mapping for JSPs. Instead, use *.jsf, or *.faces.

  • Complex Mapping - Reset context

    Hi everybody,
    I have to transform one scenary RFC to FILE, but I had many problems becouse the contexts level of each structures is very different.
    In my RFC I have two tables, T_HEADER and T_ITEM like:
    1- RFC
       1.1- T_HEADER
       1.2-T_ITEM
    and in my FILE I have:
    1-FILE
       1.1-Recordset (occor 1 to many)
          1.1.1-T_HEADER (occor 1 to 1)
          1.1.2-T_ITEM (occor 1 to many)
    For each T_HEADER (on RFC) I need one other Recordset (on FILE). And for each T_ITEM (on RFC) I need one other T_ITEM (on FILE) comparing the key field on T_HEADER. In other words I need to group the recordsets by the key founded in both structures, using the header structure as the main structure.
    I need samething like this:
    RFC-T_HEADER
         Key = 1, 2 and 3.
    RFC-T_ITEM
         Key = 1, 2, 1, 3, 3
    Result:
    FILE-Recordset
    FILE-Recordset-T_HEADER
       Key = 1
    FILE-Recordset-T_ITEM
      Key = 1, 1
    FILE-Recordset
    FILE-Recordset-T_HEADER
       Key = 3
    FILE-Recordset-T_ITEM
      Key = 3, 3
    FILE-Recordset
    FILE-Recordset-T_HEADER
       Key = 2
    FILE-Recordset-T_ITEM
      Key = 2
    Do you have many ideas to help me?

    Hi everybody, I found the solution.
    I need use an UDF that I call "changeQueue".
    If anyone will have the same problem, you can use this UDF:
    ->Vnode - String (Context item with the values to check the key and add in diferent queue)
    ->Knode - String (Context header with the key values used to define the queue where the item will be add)
    ->Nnode - String (Context item with the key values to check and add into queue of context header)
    <-result - ResultList (Vnode context into the diferent queue)
    for(int i=0; i < Knode.length; i++){
         if(Knode<i>.equals(ResultList.CC))
              result.addContextChange();
         else{
              for(int j=0; j < Nnode.length; j++){
                   if(Nnode[j] == Knode<i>){
                        result.addValue(Vnode[j]);

  • Graph mapping with context not in pair

    Hi,
    In an IDOC ORDERS05 to whatever scenario I found the following situation. I have to evaluate the value of the field NAME4 when the partner function (PARVW) is WE. The issue comes with the fact that the NAME4 tag only appears when is not empty, so the XML should look like this.
    <E1EDKA1 SEGMENT="1">
       <PARVW>AG</PARVW>
       <PARTN>0000103905</PARTN>
    </E1EDKA1>
    <E1EDKA1 SEGMENT="1">
       <PARVW>RE</PARVW>
       <PARTN>0000103905</PARTN>
    </E1EDKA1>
    <E1EDKA1 SEGMENT="1">
       <PARVW>RG</PARVW>
       <PARTN>0000103905</PARTN>
    </E1EDKA1>
    <E1EDKA1 SEGMENT="1">
       <PARVW>WE</PARVW>
       <PARTN>0000103905</PARTN>
       <NAME4>S</NAME4>
    </E1EDKA1>
    The issue is that the NAME queue will have only one value (or even 0) while the PARVW queue will have 4.
    The question: How can I pair both queues again (i.e: inserting blanks to the NAME4 queue wherever is empty)?
    thanks in advance for help,
    David R.

    Hi,
    You can use standard function 'exists' to chek ehther the field exist and 'createIf' to creat the node if it does not exisit
    <i>If there are structuring elements in your target structure that do not exist in the source structure, insert them using this function. Using condition I you can control whether the element is inserted or not. You connect the element in the target structure using O.</i>
    Regards
    Vijaya

  • Difference Between Normal and External Context Mapping

    Hi,
    I wonder the Difference Between Normal and External Context Mapping.
    I1ve already read the docs and articles but I didnt understand.
    Thanks,
    Jorge Luiz
    Edited by: Jorge Castro on Oct 9, 2008 4:23 PM

    Jorge,
    With this type of Mapping (also called Reverse Mapping) you can map the context of an using component, to that of the used component.
    You can find an example of this concept in WDA ALV: If you look at component SALV_WD_TABLE (which you declare as used when you intend to use ALV), you'll see that it has a node DATA declared as external. In your using component, you map your actual data node to this node.
    This allows the ALV to leave the DATA node type open and so to be reused, adjusting it's structure depending on the using component's data.
    Edited by: Alejandro Bindi on Oct 9, 2008 4:42 PM
    Made a mistake! Have not used this in a while...Ext. mapping is the OTHER way...Using -map-> Used Fixed.

  • Mapping of Web App context root and the physical directory of the web app

    I'm running Weblogic 7.0 on Windows2000.The physical directory of my web application
    is D:\WL8\weblogic81\TestDeploy\build\TestWebApp and under these directory I have
    my JSPS, static HTML and WEB-INF. I define the context path of this web app in
    the weblogic.xml ;-
    <weblogic-web-app>
         <context-root>/testapp</context-root>
    </weblogic-web-app>
    As a result of deploying this web app in the server (or it may be created manually
    also), the following entry gets inserted in the server's config.xml ,-
    <Application Deployed="true" Name="TestWebApp"
    Path="D:\WL8\weblogic81\TestDeploy\build" TwoPhase="true">
    <WebAppComponent Name="TestWebApp" Targets="myserver" URI="TestWebApp"/>
    </Application>
    Now, whenever I make a request of the form "http://localhost:7001/testapp/..",
    it's properly executing my web app. My question is, how does the container knows
    that for any request for the web app with context path as 'testapp', it has to
    server files from D:\WL8\weblogic81\TestDeploy\build\TestWebApp. In the above
    process, nowhere such mapping is specified. I expected something like Tomcat's
    server.xml, where in docbase we clearly specify this mapping between the context
    path and the physical directory. Please help.

    Let me give some more details and hopefully this will make things clearer.
    Say you deploy /foo/bar/myweb.war and in myweb.war you configure a
    context-root of /rob
    During deployment, the server creates an ApplicationMBean with a path of
    /foo/bar/. It then creates a WebAppComponent with a uri of myweb.war.
    Next, deployment calls back on the web container and tells it to deploy
    the WebAppComponent. The web container reads the myweb.war, parses
    descriptors etc. The web container then updates its data structures to
    register that myweb.war has a context path of /rob. (It has to figure
    out all the other servlet mappings as well.)
    When a request for /rob/foo comes in, the web container consults its
    data structures to determine which webapp and servlet receives the
    request. This is not a linear search of all webapps and servlets.
    There's much better ways to do pattern matching.
    Hope this clears things up. Let me know if you still have questions.
    -- Rob
    Arindam Chandra wrote:
    Thanks for the answer. Still one thing is not clear. Whatever context path I declare
    for my web app as the value of <context-root> element in the weblogic.xml (in
    my example it's "/testapp"), it is no where mapped with the "URI" attribute (or
    any other attribute, sub-element whatsoever in the <Application> element).
    Application Deployed="true" Name="TestWebApp"
    Path="D:\WL8\weblogic81\TestDeploy\build" TwoPhase="true">
    <WebAppComponent Name="TestWebApp" Targets="myserver" URI="TestWebApp"/>
    </Application>
    So when a request of the form http://myweblogic.com:7001/testapp/... arrives at
    the server, how does the server knows that it has to serve this request with files
    from D:\WL8\weblogic81\TestDeploy\build\TestWebApp ? It should not be like the
    web container iterates thru all the web application entries in config.xml and
    tries to match with one context-root declaration. I repeat, I expected some mapping
    similar to Tomcat's server.xml, where in the <docbase> element u clearly specify
    the mapping between the context path and the physical directory
    Rob Woollen <[email protected]> wrote:
    Arindam Chandra wrote:
    I'm running Weblogic 7.0 on Windows2000.The physical directory of myweb application
    is D:\WL8\weblogic81\TestDeploy\build\TestWebApp and under these directoryI have
    my JSPS, static HTML and WEB-INF. I define the context path of thisweb app in
    the weblogic.xml ;-
    <weblogic-web-app>
         <context-root>/testapp</context-root>
    </weblogic-web-app>
    As a result of deploying this web app in the server (or it may be createdmanually
    also), the following entry gets inserted in the server's config.xml,-
    <>So the server will look for your web application at the Application Path
    (D:\WL8\weblogic81\TestDeploy\build|) + the web uri (TestWebApp). So
    it
    maps the context-root you've specified /testapp to that path.
    It's a little clearer in the case where you had a full-fledged EAR.
    Then you'r application path would map to the "root" of the EAR, and the
    uris would point to the various modules (eg webapps.)
    -- Rob
    Now, whenever I make a request of the form "http://localhost:7001/testapp/..",
    it's properly executing my web app. My question is, how does the containerknows
    that for any request for the web app with context path as 'testapp',it has to
    server files from D:\WL8\weblogic81\TestDeploy\build\TestWebApp. Inthe above
    process, nowhere such mapping is specified. I expected something likeTomcat's
    server.xml, where in docbase we clearly specify this mapping betweenthe context
    path and the physical directory. Please help.

  • Context Mapping and data binding

    Hi,
    Please explain about the context mapping and data dinding
    and also differences
    Thank's & Regard's.
    Sri

    Hi Sridevi Sudunaguntla ,
    context mapping-> means mapping between different contexts
    ie suppose if we are creating a node in the component controllet and if we want to use that node in view a and view b, then  we have to map this node from component controller to the required view.. this mapping of context nodes is called context mapping..for context mapping, create nodes in compcontroller.. tehn go to view-> context-> tehn drag and drop required node from component controller to the view ..
    data binding-> means binding the data from nopde to the ui elements or viceversa... after the nodes are created in indudual views or after context mapping.. we have to bind these nodes to the ui elements... suppose we have an input field and we want to read that,, so we have to bind the input field to an attribute in the node.. this binding is called.. data binding.
    Regards
    Sarath

Maybe you are looking for