Grouping segments based on a value

Hi,
I have a scenario like: Idoc to file(s)
Input format:
<Idoc>
  <seg1>
    <header1>
       <doc_num>10</doc_num>
        <name>xyz</name>
     </header1>
     <header2>
       <doc_num>20</doc_num>
        <name>xyz</name>
     </header2>
     <header3>
       <doc_num>30</doc_num>
        <name>xyz</name>
     </header3>
  </seg1>
   <seg2>
       <Line1>
         <doc_num>10</doc_num>
          <text>xxxx</text>
        </Line1>
         <Line1>
         <doc_num>10</doc_num>
          <text>zzzz</text>
        </Line1>
        <Line1>
         <doc_num>20</doc_num>
          <text>xxxx</text>
        </Line1>
         <Line1>
         <doc_num>20</doc_num>
          <text>www</text>
        </Line1>
         <Line1>
         <doc_num>30</doc_num>
          <text>aaaa</text>
        </Line1>
   </seg2>
    <seg3>
       <Line2>
         <doc_num>10</doc_num>
          <text>xxxx</text>
        </Line2>
         <Line2>
         <doc_num>10</doc_num>
          <text>zzzz</text>
        </Line2>
        <Line2>
         <doc_num>20</doc_num>
          <text>xxxx</text>
        </Line2>
         <Line2>
         <doc_num>30</doc_num>
          <text>www</text>
        </Line2>
         <Line2>
         <doc_num>30</doc_num>
          <text>aaaa</text>
        </Line2>
   </seg3>
</Idoc>
Required output format:
File1.xml
<Target>
   <Header>
       <doc_num>10</doc_num>
        <name>xyz</name>
    </Header>
    <Line1>
         <doc_num>10</doc_num>
          <text>xxxx</text>
        </Line1>
         <Line1>
         <doc_num>10</doc_num>
          <text>zzzz</text>
        </Line1>
        <Line2>
         <doc_num>10</doc_num>
          <text>xxxx</text>
        </Line2>
         <Line2>
         <doc_num>10</doc_num>
          <text>zzzz</text>
        </Line2>
<./Target>
File2.xml
<Target>
   <Header>
       <doc_num>20</doc_num>
        <name>xyz</name>
    </Header>
       <Line1>
         <doc_num>20</doc_num>
          <text>xxxx</text>
        </Line1>
         <Line1>
         <doc_num>20</doc_num>
          <text>www</text>
        </Line1>
        <Line2>
         <doc_num>20</doc_num>
          <text>xxxx</text>
        </Line2>
<./Target>
File3.xml
<Target>
   <Header>
       <doc_num>30</doc_num>
        <name>xyz</name>
    </Header>
        <Line1>
         <doc_num>30</doc_num>
          <text>aaaa</text>
        </Line1>
        <Line2>
         <doc_num>30</doc_num>
          <text>www</text>
        </Line2>
         <Line2>
         <doc_num>30</doc_num>
          <text>aaaa</text>
        </Line2>
<./Target>
In this way I need to create one xml file for each header type(10,20,30,...) and collect need to collect the line items corresponding to the respective header as shown in the above example.
Please any one suggest how to achieve this. Helpfull answers are definetly rewarded with points.
Regards,
shiva.

hi
you are creating the idoc to file scenarios in that you want to xml file for each header
so you create seprate mapping for each header to the target system.
because the mapping is done with number of source system with the one target sys
so you need to do seprate mapping
thanks
Regards
vijay

Similar Messages

  • Updating people group segments

    Hi,
    I'm very new to PL/SQL and want to run a sql script to update people group segments based on grade step and ceiling points
    I've searched around on metalink and have the beginnings of something but maybe I need to use an extra cursor at the beginning or something? Could anyone help?
    Thanks
    declare l_people_group_id NUMBER;
    select paf.assignment_id, paf.object_version_number, paf.special_ceiling_step_id
    into p_assignment_id, l_out_object_version_number, l_special_ceiling_step_id
    from per_assignments_f paf,
    pay_people_groups ppg
    where p_person_id = paf.person_id
    and paf.people_group_id = ppg.people_group_id
    and p_effective_date between paf.effective_start_date and paf.effective_end_date;
    cursor get_current_ceiling_assignment is
    select asg.*, ast.per_system_status
    from per_assignment_status_types ast,
    per_assignments_f asg,
    per_grade_spines_f pgsf,
    per_spinal_point_steps_f pspsf
    where assignment_id = p_assignment_id
    and ast.assignment_status_type_id = asg.assignment_status_type_id
    and pgsf.grade_spine_id = pspsf.grade_spine_id
    and pspsf.step_id = pgsf.ceiling_step_id
    and asg.grade_id = pgsf.grade_id
    -- and p_effective_date between effective_start_date and effective_end_date;
    and asg.effective_start_date = (select max(effective_start_date)
    from per_all_assignments_f
    where assignment_id = asg.assignment_id);
    begin
    for v1 in get_current_ceiling_assignment loop
    l_out_object_version_number := v1.object_version_number;
    l_special_ceiling_step_id := v1.special_ceiling_step_id;
    l_datetrack_update_mode := 'UPDATE';
    hr_assignment_api.update_emp_asg_criteria
    p_validate => false,
    p_effective_date => p_effective_date,
    p_datetrack_update_mode => l_datetrack_update_mode,
    p_assignment_id => p_assignment_id,
    p_object_version_number => l_out_object_version_number,
    p_special_ceiling_step_id => l_special_ceiling_step_id,
    p_segment5 => NULL,
    p_segment6 => NULL,
    p_group_name => l_group_name,
    p_effective_start_date => l_out_effective_start_date,
    p_effective_end_date => l_out_effective_end_date,
    p_people_group_id => l_people_group_id,
    p_org_now_no_manager_warning => l_org_now_no_manager_warning,
    p_other_manager_warning => l_other_manager_warning,
    p_spp_delete_warning => l_spp_delete_warning,
    p_entries_changed_warning => l_entries_changed_warning,
    p_tax_district_changed_warning => l_tax_district_changed_warning
    end loop;
    end;

    I'm trying to update two people segments when the grade step reaches the ceiling point.
    I'm not expecting anything to be returned in the query but want the api to update the relevant assignment records.
    I'm using 11.5.10 apps, 10g database. I just think I'm missing something fundamental with the constrcution of my script here

  • Mapping target based on a value and grouping

    I’m having a problem with mapping a source IDOC to a target XML.
    The main problem is with mapping the output based on a value in the each segment and then grouping them properly.
    Here is the format of the source and target (There are more fields used, I am only showing these to explain my problem.)
    The Source IDOC is PPCC2RECORDER01
    We are using the E1BP_PP_PDC_OPERA2 segment which can repeat basically unbounded.
    example
    PPCC2RECORDER01
         EDI_DC40
         E1PPCC2RECORDER
              E1BP_PP_PDC_OPERA2
                   OrderID
                   OperationID
              E1BP_PP_PDC_OPERA2
                   OrderID
                   OperationID
    The Target XML looks like the folowing
    <Workorders>
         <WorkOrder> <!-- Occurs 0 - unbounded -->
              <WorkOrderHeader> <!-- Occurs 1 per Workorder -->
                   <WorkOrderID></WorkOrderID>
              </WorkOrderHeader>
              <WorkOrderOperation> <!-- Occurs 0 - unbounded -->
                   <OperationID></OperationID>
              </WorkOrderOperation>
         </WorkOrder>
    </WorkOrders>
    WorkOrder in the target repeats for each unique OrderID
    and WorkOrderOperation should repeat for each Operation ID contained within a WorkOrder
    Here is sample input
    PPCC2RECORDER01
         EDI_DC40
         E1PPCC2RECORDER
              E1BP_PP_PDC_OPERA2
                   OrderID          0000111
                   OperationID     0010
              E1BP_PP_PDC_OPERA2
                   OrderID          0000111
                   OperationID     0020
              E1BP_PP_PDC_OPERA2
                   OrderID          0000111
                   OperationID     0030
              E1BP_PP_PDC_OPERA2
                   OrderID          0000222
                   OperationID     0015
              E1BP_PP_PDC_OPERA2
                   OrderID          0000222
                   OperationID     0025
              E1BP_PP_PDC_OPERA2
                   OrderID          0000333
                   OperationID     0100
    This is the output I am getting
    <Workorders>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000111</WorkOrderID>
              </WorkOrderHeader>
              <WorkOrderOperation>
                   <OperationID>0010</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0020</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0030</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0015</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0025</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0100</OperationID>
              </WorkOrderOperation>
         </WorkOrder>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000222</WorkOrderID>
              </WorkOrderHeader>
         </WorkOrder>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000333</WorkOrderID>
              </WorkOrderHeader>
         </WorkOrder>
    </WorkOrders>
    This is the desired output
    <Workorders>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000111</WorkOrderID>
              </WorkOrderHeader>
              <WorkOrderOperation>
                   <OperationID>0010</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0020</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0030</OperationID>
              </WorkOrderOperation>
         </WorkOrder>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000222</WorkOrderID>
              </WorkOrderHeader>
              <WorkOrderOperation>
                   <OperationID>0015</OperationID>
              </WorkOrderOperation>
              <WorkOrderOperation>
                   <OperationID>0025</OperationID>
              </WorkOrderOperation>
         </WorkOrder>
         <WorkOrder>
              <WorkOrderHeader>
                   <WorkOrderID>0000333</WorkOrderID>
              </WorkOrderHeader>
              <WorkOrderOperation>
                   <OperationID>0100</OperationID>
              </WorkOrderOperation>
         </WorkOrder>
    </WorkOrders>
    How can I get this to map the way I want?  I have tried many different mappings some result in the error message "Cannot produce target element WorkOrders/WorkOrder/WorkOrderOperation[4]/OperationID. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd"
    Thanks,
    Tim

    OK,,, So I'm a little closer.  I have the first OperationID for each Workorder comming out, but the other OperationIDs are being dropped.  Here is a sample of what is coming out now
    <Workorders>
    <WorkOrder>
    <WorkOrderHeader>
    <WorkOrderID>0000111</WorkOrderID>
    </WorkOrderHeader>
    <WorkOrderOperation>
    <OperationID>0010</OperationID>
    </WorkOrderOperation>
    </WorkOrder>
    <WorkOrder>
    <WorkOrderHeader>
    <WorkOrderID>0000222</WorkOrderID>
    </WorkOrderHeader>
    <WorkOrderOperation>
    <OperationID>0015</OperationID>
    </WorkOrderOperation>
    </WorkOrder>
    </WorkOrders>
    Looks like it needs to be a change in the mapping for WorkOrderOperation, any Ideas on what this mapping needs to be?  Right now I have
    OperationID -> RemoveContext -> SplitByValue(each value) -> WorkOrderOperation
    I've trie to use the FormatByExample as shown above only going to WorkOrderOperation instead of OperationID, but get the Error message I mentioned above.
    Thanks,
    Tim

  • Unable to default DFF segment based on selection of other field value.

    Hi Gurus,
    *I have a requirement on 'Create Work Request' page (Oracle EAM), where during creating complaint, when user selects Asset Number, based on this selection, a DFF enabled to capture Tenant Info must be populated. [For testing now, I'm writing my code in PR and not in PFR to populate some thing while page loads.]*
    I have extended my CO and tried many ways (from simple to little complex) but to no success.
    Simpler way:
    *=======*
    OAApplicationModule am = oapagecontext.getApplicationModule(oawebbean);
    OAViewObject vo = (OAViewObject)am.findViewObject("RequestDetailsVO");
    Row row = vo.first();
    row.setAttribute("Attribute1","Attribute1"); //Attribute1 is the View attribute in above VO. But this doesn't work.
    row.setAttribute("DepartmentCode","CRC MAINT"); //DepartmentCode is a view attribute as well. And this works.
    This code doesn't work.
    Understanding that, DFF segments can't be set as simple bean, I have done below:
    *===================================================*
    OADescriptiveFlexBean oadescriptiveflexbean = (OADescriptiveFlexBean)oawebbean.findIndexedChildRecursive("WorkRequestDesc");//("WorkRequestDFF_p13n");
    oadescriptiveflexbean.processFlex(oapagecontext);
    if (oadescriptiveflexbean != null){
    ContextMap contextmap = oadescriptiveflexbean.getNamedChildMap();
    if(contextmap != null){
    Enumeration enumeration = contextmap.keys(oapagecontext.getRenderingContext());
    if(enumeration != null){
    do
    if(!enumeration.hasMoreElements())
    break;
    Object obj = enumeration.nextElement();
    OAWebBean oawebbean1 = (OAWebBean)contextmap.get(oapagecontext.getRenderingContext(), obj);
    oapagecontext.getParameter("WorkRequestDesc1")
    //String str = (String)oapagecontext.getNamedDataObject("WorkRequestDesc1")
    if(oawebbean1 != null)
    if(oawebbean1 instanceof OAMessageTextInputBean)
    OAMessageTextInputBean oamessagetextinputbean = (OAMessageTextInputBean)oawebbean1;//.findIndexedChildRecursive("WorkRequestDesc1__xc_");
    //oamessagetextinputbean.setReadOnly(true);
    oamessagetextinputbean.setText("Jawad");
    } while(true);
    Now the issue with above code is, during the page load, all the segments are populated with value 'Jawad'. I want to populate only the first segment.
    More info:
    *======*
    VO: RequestDetailsVO
    DFF Regions ID: WorkRequestDesc
    Attribute1 (DFF segment1) ID: WorkRequestDesc1
    Appreciate your responses,
    Jawad

    Dear Guys,
    I found out a workaround for this case (If this helps others): :)
    *1. Create a Message Text Input type field (representing each DFF segment) and map them to View Attribute (over which DFF was created) and VO instance.*
    *2. In the extended CO, in PFR, get the handle of these created fields.*
    *3. Set the values as required.*
    Since these fields are mapped onto the same view attributes as DFF was, the data goes in fine.
    But I still am hunting for the possibility of setting a single segment.
    Thanks and Regards,
    Jawad
    Edited by: Jawad on Apr 19, 2012 3:36 AM
    Edited by: Jawad on Apr 19, 2012 3:38 AM

  • Setting the Link Group Name in  Deep Link based on the value of a column

    Using Jdeveloper 11g, Jheadstart 11g
    Is it possible to override the link group name in deep linking. For example can I conditionally set that field based on the value of the item.
    Regards
    Edited by: aliegeh on Jul 25, 2010 8:35 AM
    Edited by: aliegeh on Jul 25, 2010 8:43 AM

    Thanks for the suggestion.
    Here is what I am trying to do:
    I have a table with one visible column that has the following entries:
    1. Create
    2. Modify
    3. Verify
    4. Approve
    5. View
    If the user clicks on row 1 (Create) then the link group name should be "CreateEmployees" to create new employees
    If the user clicks on row 3 (Verify) then the link group name should be "MaintainEmployees" for verification and so on.
    (This is role based and each role will have access to one or more of the rows in the tabler)
    It basically mimics a work-flow type of scenario.
    I tried to modify the template and looked at the line:
    action="$JHS.facesConfigGenerator.addItemGroupLinkTaskFlowCall((${JHS.Current.item})}" but got stuck there.
    Is there a way to change "JSH.current.item" in the template to read the group link name from another column say by using #if statements.
    One way I also tried was to introduce a column for each action such as CreateAction, VerifyAction etc which kind of agrees with your suggestion but the drawback is the need to modify the table if another task is required.
    Regards
    Edited by: aliegeh on Jul 25, 2010 8:36 AM
    Edited by: aliegeh on Jul 25, 2010 8:42 AM

  • Update age group picklist based on value entered in date of birth

    Hi Gurus,
    Have a requirement where in user would enter the date of birth on a contact record and would like to populate another custom field called age group at the time of creating a new record.
    The condition is some what like
    Age
    1 – 20 Teens
    21-40 Young Adults
    41-60 Adults
    60 – 100 Seniors
    I have tried using the age field but problem is that age is populated only when the record is saved.
    Update the age group via workflow works fine but the saved record has to be modified before triggering the workflow. we would like to avoid the additional step of modifying the record
    Is there any option to calculate age based on the value entered for date of birth - something like DOB Year - current year before saving a record or via post default without using workflows.
    Thanks in advance,
    Arun

    Hi
    The answer is yes, using the post default functionlaity.
    take a look in the folowign example:
    IIf(ToChar(Timestamp(),'DD/MM/YYYY')- [<DateofBirth>] < 20,'20','30')
    You will need to make something like that, but replace the '30' with another IIf expression, and so on for the next interval.
    note that date of birth should be between suqare brackets [  ] (it is shown here with underline for some reason...)
    Good luck
    Guy
    Edited by: Shinshan on 08:45 30/12/2009
    Edited by: Shinshan on 08:46 30/12/2009
    Edited by: Shinshan on 08:47 30/12/2009
    Edited by: Shinshan on 08:47 30/12/2009

  • Can I have different "details" formatting based on a value in the Group?

    Post Author: pcdelozi2
    CA Forum: General
    Greetings!  I'm using Crystal Reports 11.0 and have the need to generate 3 different "formats" in the DETAILS section, based on what I am grouping on.  Can this be done?  For example, If what I am grouping on has 3 different values (AREA, LINE, POINT), then for each of those, I would like to branch to a different formating section.  Any advice would be appreciated!
    Thanks!

    Post Author: V361
    CA Forum: General
    I have CR XI:   go to section expert, look for the x/2 button to the right of Suppress (No-Drill Down)  click on the button, create a formula for example 
    {Customer.Contact First Name} = "Alejandra"
    In this case, this section will suppress every time the {Customer.Contact First Name} = "Alejandra"

  • Grouping records based on and ID

    I am trying to build a report that will segment based on a free text field which is used as an identifier between multple records.
    For example I might have three records which each contrain the same id number however the record might have varying values in other fields. I want to build a report that will group all those 3 reports together under the heading of the ID and list the 3 reports. If I have other records that are linked by the ID to other records then I want them to group as well. This can be seen below
    ID 001
    Name     Country     ID
    xyz     USA     001
    ID 002
    abc     Canada     002
    Abc2     USA     002
    ID 003
    Efg1     USA     003
    Efg2     Mexico     
    Thanks

    Hi,
    Try using a pivot table and put the id column under sections. I think that should help.
    All the best.
    Garima

  • Plot a chart dynamically based on the values selected

    Hi All,
    I have some requirement like this i want to plot a chart . The chart should change dynamically based on target_name and date. What type of UI should I use ? I tried using multiselect or shuttle for choosing the target_name and date picker tool for date once i choose all this the chart should appear. Can I have a custom button called submit so once all the values are entered it plots chart ? Please help me out with our ideas.
    Thanks in Advance

    Hi,
    Using the dependent value sets you can govern the values which can be selected based on a specific value selected in a particular segment. Example if Country name is selected in segment 1 then specific states names as per the country selected can be displayed in segment 2.
    As per the requirement described you want to enable different fields based on the value selected in segment1, currently there is no standard mechanism available to enable/disable fields based on a value and you will have to do an extension/customization to meet this requirement.
    Thanks,
    Sanjay

  • EDI: Syntax error in IDoc (mandatory group/segment missing)

    hi EDI/IDoc experts,
    Need you help urgently. According to the requirement, i need populate a segement  E1IDT01 of basic type PEXR2002 . I added the code , then run and generate an idoc , the new segment
    E1IDT01  was populated,  but Syntax error 26 happend. Error message as below.   It also strange that i can see E1IDKU5 populate out as usual, but some others segment disappeared , i am sure that in my code ,i didn't changed any variable related to other segement . how can i fix this problem?
    EDI: Syntax error in IDoc (mandatory group missing)
    Message no. E0079
    Diagnosis
    The segment group E1IDKU5 has the attribute 'Mandatory' in the syntax description of the basic type PEXR2002 (customer enhancement ). However, the segment group is missing in the IDoc. The segment number logged in the status record identifies the item before which the segment group is missing.
    Procedure
    Please check the IDoc or the syntax description of the basic type PEXR2002 (customer enhancement ).

    Hi all,
    Thanks so much for your concern!
    Finally ,this problem has been figured out  .
    Requirement is user want to use segment E1IDT01 in idoc to populate the long text they maintained in accounting document vendor item line (use FB01 to create accounting doc).
    Why I made out " EDI: Syntax error in IDoc (mandatory group/segment missing)" this message out ,because  I didn't fill data correctly. I missed to keep SY-TABIX in momory .
    when we use Function module ,or do..enddo...or read table it_table. we should be careful that SY-TABIX  is changed .So we can't just use MODIFY EDIDD_TABLE INDEX  SY-TABIX  in the last . we should define a local variable to keep  SY-TABIX  in memory and then use it to modify EDIDD_TABLE. 
    Follow is the final code.
    IF SEGMENT_NAME = 'E1IDT01'.
    TABLES :STXL.
    * Define for long text getting
      DATA: LIT_TLINE  LIKE TLINE   OCCURS 0 WITH HEADER LINE.
      DATA: LV_STRING(2000)  TYPE C.                          
      DATA: LV_TDNAME TYPE THEAD-TDNAME,
            LV_ID     TYPE THEAD-TDID     VALUE '0001',
            LV_LANG   TYPE THEAD-TDSPRAS  VALUE 'E' ,
            LV_OBJ    TYPE THEAD-TDOBJECT VALUE 'DOC_ITEM'.
    data:   LV_LINE   TYPE I,                " long Text lines
            LV_LEN    TYPE I,                " long Text length   
            LV_TABIX  LIKE SY-TABIX.                              
    * Clear memory
      CLEAR:LV_TDNAME,
            LV_STRING,                                        
            LV_LINE,                                           
            LIT_TLINE, LIT_TLINE[],                          
            LV_LEN,                                            
            LV_TABIX.                                        
    * Keep sy-tabix memory using a variable--This is the key point
      LV_TABIX = SY-TABIX.
    * Combine TDNAME with company code + accounting doc + fiscal year + item number.
        CONCATENATE  REGUP_DATA-BUKRS REGUP_DATA-BELNR
                     REGUP_DATA-GJAHR REGUP_DATA-BUZEI INTO  LV_TDNAME.
    * When vendor item has long text , read long text into lv_string
        SELECT SINGLE *
          FROM STXL
          WHERE TDOBJECT = LV_OBJ
            AND TDNAME   = LV_TDNAME
            AND TDID     = LV_ID
            AND TDSPRAS  = 'E'.
        IF SY-SUBRC = 0.
          CALL FUNCTION 'READ_TEXT'
            EXPORTING
              CLIENT   = SY-MANDT
              ID       = LV_ID
              LANGUAGE = LV_LANG
              NAME     = LV_TDNAME
              OBJECT   = LV_OBJ
            TABLES
              LINES    = LIT_TLINE.
          IF NOT LIT_TLINE[] IS INITIAL.
            DESCRIBE  TABLE LIT_TLINE LINES LV_LINE.
            DO LV_LINE TIMES.
              READ TABLE LIT_TLINE INDEX SY-INDEX.
              CONCATENATE LV_STRING LIT_TLINE-TDLINE INTO LV_STRING.
            ENDDO.
            LV_LEN = STRLEN( LV_STRING ).
    * Make sure we only need  less than 840 charicters
            IF LV_LEN > 840.
              LV_STRING = LV_STRING+0(840).
              LV_LEN    = 840.
            ENDIF.
    * Populate Vendor item long text with segment E1IDT01 start from
    * Fields TXT03 to TXT14.
             EDIDD_TABLE-SDATA+147(LV_LEN) = LV_STRING.
            MODIFY EDIDD_TABLE INDEX LV_TABIX.
          ENDIF.
        ENDIF.
      ENDIF.

  • IM - Appropriation Request approval authorization based on Budget Value

    Hi all,
    Can someone help me confirm the following?
    I'm implementing Investment Management module and use appropriation request (AR) to approve budgets where AR statuses can be approved only by certain authorization groups, and we do not use Workflow. The problem is that we want the status change not only based on authorization but combined with the budget value. For example, for budget <50,000 then Superintendants can approve the AR but if it's >50,000 then only Managers can approve the AR.
    As far as I've looked, IM module does not provide this functionality where authorization can be restricted based on budget value. Can someone confirm this?
    Thx very much in advance!
    cheers,
    -Ri-

    The standard AR workflow sends a notification (document once approved) to the applicant and workflow to the approver (for approval). For details refer the link below:
    http://help.sap.com/saphelp_erp60_sp/helpdata/en/2a/f9f542493111d182b70000e829fbfe/content.htm
    Standard reports under Investment Management>Appropriation Requests>Reports on Appropriation Requests>Master Data Lists ex.,T Code IMR5 - Appropriation Request Without Distribution Without Variants with changed layout to include system status would show you the required information.
    Regards
    Sreenivas

  • Select value based on a value in a 2nd column (similar to vlookup)

    Hello all,
    Is there an alternative to VLOOKUP function in BI 11g?
    Or what else I can use to return value of 3rd column based on the value in 2nd column?
    Dept Min_Expense Description of Expense
    Acct 1000 'COGS'
    Thank you.

    Hi,
    Yes this is possible by dynamic user assignment.
    Define an output parameter for CO1 and CO2 and an input parameter for the CO under action F of type string. In design time select the processor of action F as "Filled from Context Parameter" in the Roles tab and select the input parameter you have defined as mentioned in the previous step. Now group the output parameter of the CO1 and CO2 and the input parameter of action F together.
    Now at runtime fill the context parameter from CO1 and CO2 with the actual user name. The action F will get automatically assigned to that user.
    Thanks,
    Dipankar

  • Dedeplication method in Target group/segmentation

    Hi Gurus,
    I am having two question to ask,
    1) How to create Master group ? and using tagret group ?
    2) How to use Deduplication method in Target group/segmentation ???
    Please give step by step suggesion.
    Suggesion will be appricited by good points.
    Thanks in advance.
    Dipesh

    Hi Dipesh,
    With respect to your questions
    1. Master group
    Master group is a subset of all BP in which you would like to create a target group.
    Like you have BP across world in your system and you would like to create a master group for country like India and US.
    So these will form as the master group and when you would like to run a campaign you can restrict it to run only in India or US by selecting your master group in the segment builder screen and creating a target group
    There are few standard master group creation programs and you can infact build your own master groups also based on a Z program and assigning this master group to your segment category. You can make it as a mandatory for the user to select the master group.
    You can create a target group from a master group.
    2.Target group is nothing but bringing all the BP to whom you would like to target or run a campaign against. These are created from the attributes assigned to a attribute set which is again assigned to an attribute list. This attribute list is called in the segment builder screen and select the attributes in the profiling area to form a traget group and when you right click you will find the list of all BP that satisfy your criteria.
    For more details you can also folow this link
    Master group
    http://help.sap.com/saphelp_crm50/helpdata/en/2e/0f050769001a4eb8ceaa87dc7dba1a/frameset.htm
    target group
    http://help.sap.com/saphelp_crm50/helpdata/en/2e/0f050769001a4eb8ceaa87dc7dba1a/frameset.htm
    De duplication of segment
    http://help.sap.com/saphelp_crm50/helpdata/en/2e/0f050769001a4eb8ceaa87dc7dba1a/frameset.htm
    hope this clarifies and reward points if useful
    Thanks
    Srini

  • Change value of another field based on the value of selectOneRadio

    Hello
    I need to display one of two city fields based on the value of a radio group. If the value of the radio group is "Yes", then display the non mandatory city field, if the value is "No", then display mandatory city field. Please can someone help me? The code is below
    <af:subform id="contactForm3" default="true">
                <af:panelForm binding="#{processScope.backing_regDetails.contactPanel3}">
                  <af:selectOneRadio binding="#{processScope.backing_regDetails.radio1}"
                                     labelAndAccessKey="#{MatrixResource['ContactDetails.inBoroughQuestion']}"
                                     layout="horizontal"
                                     valuePassThru="true"
                                     required="true"
                                     onchange="javascript.refresh;" >
                      <f:selectItems value="#{processScope.backing_regDetails.items}" />
                  </af:selectOneRadio>
                  <af:inputText onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value='0';"
                                labelAndAccessKey="#{MatrixCommon['Label.SAO']}"
                                binding="#{processScope.backing_regDetails.houseNameText}"                           
                                maximumLength="240"/>
                  <af:inputText required="true"
                                onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value=0;"
                                maximumLength="240"
                                label="#{MatrixCommon['Label.PAO']}"
                                binding="#{processScope.backing_regDetails.numberStreetText}"/>
                  <af:inputText onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value='0';"
                                maximumLength="240"
                                labelAndAccessKey="#{MatrixCommon['Label.District']}"
                                binding="#{processScope.backing_regDetails.districtText}"/>
                  <af:inputText maximumLength="60"
                                rendered="#{!backing_regDetails.radio1}"
                                onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value='0';"
                                labelAndAccessKey="#{MatrixCommon['Label.TownCity']}"
                                required="true"
                                binding="#{processScope.backing_regDetails.cityText}"/>
                 <af:inputText maximumLength="60"
                                rendered="#{backing_regDetails.radio1}"
                                onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value='0';"
                                labelAndAccessKey="#{MatrixCommon['Label.TownCity']}"
                                required="false"
                                binding="#{processScope.backing_regDetails.cityText}"/>
                  <af:inputText maximumLength="60"
                                onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value='0';"
                                labelAndAccessKey="#{MatrixCommon['Label.County']}"
                                binding="#{processScope.backing_regDetails.countyText}"/>
                  <af:inputText columns="7"
                                onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value=0;"
                                labelAndAccessKey="#{MatrixCommon['Label.Postcode']}"
                                binding="#{processScope.backing_regDetails.postcodeText}"/>
                  <af:selectOneChoice onchange="javascript:document.forms[0].elements['contactForm3:locationId'].value=0;"
                                      binding="#{processScope.backing_regDetails.countrySelect}"
                                      value="#{processScope.backing_regDetails.enteredAddress.countryId}"
                                      labelAndAccessKey="#{MatrixCommon['Label.Country']}">
                      <f:selectItems value="#{backing_regComponents.countryChoiceList}"/>
                  </af:selectOneChoice>
                  <af:inputHidden value="#{processScope.backing_regDetails.enteredAddress.locationId}"
                                binding="#{processScope.backing_regDetails.locationIdHidden}"
                                id="locationId"/>
                  </af:panelForm>
                  </af:subform>Edited by: aademola on Nov 13, 2008 7:35 AM
    Edited by: aademola on Nov 13, 2008 7:42 AM

    Hi,
    you should be able to apply this example to your 10.1.3 project
    see 4.3.2 of http://download.oracle.com/docs/cd/E12839_01/web.1111/b31973/af_lifecycle.htm#CIAHCFJF
    Frank

  • Color APEX charts based on query value returned?

    Hi,
    I appreciate any information regarding this topic. Do you know if there is a way to change the color of a column chart based on the value that is returned in SQL query? This specific type of query and chart only has one bar...so we don;t have to worry about multiple series of bars here.. For example,
    select null link, FTE_NAME label, (SUM(INVOICeABLE_ALLOCATION) + SUM(SECOND_BILL_ALLOC)) value1
    from FTE_VIEW
    WHERE FTE_ID = :P9_ID
    group by FTE_NAME
    This might return an allocation of 2.5 for a specific person, where we only want people allocated to 1.0 so anything > 1.0 the chart color would turn red.
    PS: There is a reason we are allowing them to enter values >1.0 by the way ;) if you are wondering..haha
    Any ideas? I also looked up in the AnyChart knowledge base, but could not find any help there..
    Kind Regards,

    Hi,
    Thanks for your help. I am not clear on whether I need to create the :P1_Colors item or not. If I choose Custom colors and then have my colors as #099E4A,#F00E19 can I reference :P1_COLORS in my SQL or do I have to create the item :P1_COLORS and use a statics list? Also I've playing with the SQL, I was able to get a return value using a CASE statement, but I had no lukc with the Decode...Here is what I tried IN SQLdeveloper but could not get it to work.
    SELECT FTE_NAME, DECODE(SUM(ALLOCATION),SUM(ALLOCATION)<=1,'GREEN','RED') AS COLOR
    FROM FTE_PRJK_VIEW
    where id = :P9_ID AND FTE_PROJECT_STATUS = 'YES'
    group by FTE_NAME
    (Where i have Green and Red I would have the item :P1_COLORS = #099E4A,#F00E19, ETC..)
    Was able to get this case statement to return a value in SQL Developer..but cannot get it to work in the chart...
    select null link, FTE_NAME label,
    CASE WHEN SUM(ALLOCATION)<1
    THEN :P1_COLORS = '#099E4A'
    else :P1_COLORS = '#F00E19'
    END CASE value1
    from FTE_PRJK_VIEW
    where id = :P9_ID AND FTE_PROJECT_STATUS = 'YES'
    group by FTE_NAME
    Really Appreciate the help with this :)
    Kind Regards,

Maybe you are looking for

  • Java Deployment Toolkit and Japanese

    I can't figure out how to enable Japanese in Firefox. Since following existing tutorials yielded no positive results, I tried installing the latest Java, but that only made things worse. Now I have two problems: I still can't view Japanese characters

  • Daily Health Check MESSAGE

    I'm a simple user.  Here is what I get.  ---   Daily Health Check "Could not read the language folder for the Installation Monitor"  1) Is this serious?  2) How do I fix it?  Thanks.

  • Change to how "Open all in tabs" operates?

    There used to be an option for "open all in tabs" to open the first tab in the group into the current (open) tab. Now the current tab stays open and the group I am opening opens in additional tabs. The first tab in the group in question is my home pa

  • My wireless keyboard suddenly won't connect to my iPad anymore. I changes the batteries....

    Suddenly my wireless keyboard does not connect to my iPad anymore ? It is about one year old, and I renewed the batteries. How do I get it started again?

  • Zen Asset Manager consulting

    Hi everyone, Is there a company anyone can recommend (other than Novell) for ZAM consulting? We were dealing with ITAM Services, who were two guys who were formerly with Tally, but they seem to have gone under. I'm looking to get some help with a 7.5