Dynamically assigning Catalogs (or customer based catalogs)

Hi,
If we want every Business One customer (business partners records of type 'C') his own set of Items to purchase, what are the options if we want to avoid having to maintain multiple themes?
In other words, catalogs are assigned to themes, which are assigned to customers.
However themes are much more than a simple catalog. They may involve more maintenance as well (e.g. modifying the content of an html slot).
What are the workarounds to this limitation?
Thanks
Charles

Hi Stephen,
The reason why I was asking this is that this need seems to be kind of recurring from one client to another.
We work with you guys on some of our cases (in which I believe you are personally involved) so for at least one of them (2000 members requiring their own custom part list), I believe you (at V33) will custom code.
As to the datasource to use to get the part list per client, my colleague here (which you already know) came up with the idea of simply using the past invoice history as a source.
Could therefore be a simple DTS that populates a custom table on the B1Webtools database based on a Query ran over the SBO database.
Thanks Stephen for your input. Appreciated.
Charles

Similar Messages

  • Dynamically assign email submission target based on form content

    We need to be able to assign the email target on a given form dynamically based on user selection out of a pre-defined set - drop-down.  Currently, you can only target the submissions to an email manually entered into the email field or have a separate form for each unique email submission target.
    We have a branch-office model company and each office interacting with a given form is going to need some things on that form to change based on which office the person filling out the form is with.
    Thanks.

    Thanks Randy.
    Say we had an Agent Sales Information Form online in our intranet/portal - embeded, and it was visable by 20 branch offices.  When a user fills out the form it needs to go to a single central office person as well as the administrative assistant and manager in the specific branch office that the user (form filler) is based out of.
    Example:
    Agent Sales Information Form
    --> user selects 'I'm with Office A' from the drop-down menu --> form needs to go to: Central Office, Admin Assistant in Office A, Manager in Office A
    --> user selects 'I'm with Office B' from the drop-down menu --> form needs to go to: Central Office, Admin Assistant in Office B, Manager in Office B
    In FormsCentral I can put an email field on the form and direct the form submission to that email address or I can share a given form with a pre-defined set of people.  What I can't do is have a single form with a drop-down menu for which branch office that user (form filler) is from and change the people the form submits to based on that choice.  Having the users manually enter the email addresses of the people the form needs to be submitted to is a deal breaker.
    While we're at it, other things on my list for an embeddable paperless forms solution:
    - user can print the form -- automatically on submission or by 'print button' on the form
    - user can download pdf copy of the form
    - user can save a form for later completion (across browser sessions)
    - upload pictures and have them display on the form (not just as attachments)
    - API functionality to allow fields to be auto-populated with data from another system (eliminating the office selection drop-down menu in this example -- our portal knows what office the logged-in user is from and can tell the form if it would listen )
    Thanks Randy.  I appreciate your taking a look at this for me. 

  • Reg: Dynamic Field catalog in ALV

    Hi ,
    Can any one guide me to build a dynamic field catalog in ALV report?
    Below is the format which i expect..........
    Material    |     Plant1    |    Plant2    |    Plant3    | ....................|    Plant 20      |
    Qty
    Val
    Qty
    Val
    Qty
    Val
    Qty
    Val
    The plant 1 to 20 has to be brought dynamically as headings from T001W table. (Horizontally populate)
    Below each plant i need sub-headings "QTY" and "VAL".                                  (Horizontally populate)
    List of Materials should be brought vertically from MARA table.                          (Vertically populate)
    Can anyone suggest how to bring out this format for populating data accordingly into the o/p format?
    Ur help will be appreciated.
    Thanks,
    K.S.Kannan

    your part of the code is present in routine
    perform dynamic_table.
    *& Report ZCS_NAC_MAT_CHARACTERISTICS
    2/ Description ...: Business requirement is to get all materials
    without any characteristic values maintained in SAP
    which are given in the selection screen.
    REPORT znac_material_char.
    TYPE-POOLS : abap,
    slis.
    TABLES : kssk,
    klah,
    mara,
    makt,
    cabn,
    t134,
    t023.
    DATA : i_fieldcat TYPE slis_t_fieldcat_alv ,
    wa_fieldcat TYPE slis_fieldcat_alv.
    DATA : w_layout TYPE slis_layout_alv.
    DATA : st_layout TYPE slis_layout_alv.
    DATA : t_header TYPE slis_t_listheader,
    w_header TYPE slis_listheader.
    TYPES : BEGIN OF ty_cabn,
    atinn TYPE cabn-atinn,
    atnam TYPE cabn-atnam,
    END OF ty_cabn.
    DATA : i_cabn TYPE STANDARD TABLE OF ty_cabn WITH HEADER LINE.
    DATA : w_cabn LIKE i_cabn.
    TYPES : BEGIN OF ty_ausp,
    objek TYPE ausp-objek,
    atinn TYPE ausp-atinn,
    klart TYPE ausp-klart,
    END OF ty_ausp.
    DATA : i_ausp TYPE STANDARD TABLE OF ty_ausp WITH HEADER LINE.
    DATA : w_ausp LIKE i_ausp.
    TYPES : BEGIN OF ty_mara,
    matnr TYPE mara-matnr,
    mtart TYPE mara-mtart,
    matkl TYPE mara-matkl,
    prdha TYPE mara-prdha,
    mstae TYPE mara-mstae,
    mstde TYPE mara-mstde,
    END OF ty_mara.
    DATA : i_mara TYPE STANDARD TABLE OF ty_mara WITH HEADER LINE.
    DATA : w_mara LIKE i_mara.
    DATA : i_mara_temp TYPE STANDARD TABLE OF ty_mara WITH HEADER LINE.
    DATA : w_mara_temp LIKE i_mara_temp.
    TYPES :BEGIN OF ty_data,
    atnam TYPE cabn-atnam,
    atinn TYPE cabn-atinn,
    objek TYPE ausp-objek,
    klart TYPE ausp-klart,
    matnr TYPE mara-matnr,
    maktx TYPE makt-maktx,
    mtart TYPE mara-mtart,
    matkl TYPE mara-matkl,
    prdha TYPE mara-prdha,
    mstae TYPE mara-mstae,
    mstde TYPE mara-mstde,
    END OF ty_data.
    DATA : i_data TYPE STANDARD TABLE OF ty_data WITH HEADER LINE.
    DATA : w_data LIKE i_data.
    DATA : i_class TYPE STANDARD TABLE OF sclass WITH HEADER LINE.
    DATA : w_class LIKE i_class.
    DATA : i_class_temp TYPE STANDARD TABLE OF sclass WITH HEADER LINE.
    DATA : w_class_temp LIKE i_class_temp.
    DATA : i_objdata TYPE STANDARD TABLE OF clobjdat WITH HEADER LINE.
    DATA : w_objdata LIKE i_objdata.
    TYPES : BEGIN OF ty_objdata_temp.
    TYPES: matnr TYPE mara-matnr.
    TYPES: maktx TYPE makt-maktx.
    INCLUDE STRUCTURE clobjdat.
    TYPES : prdha TYPE mara-prdha.
    TYPES : mstde TYPE mara-mstde.
    TYPES : END OF ty_objdata_temp.
    DATA : i_objdata_temp TYPE STANDARD TABLE OF ty_objdata_temp WITH HEADER LINE.
    DATA : w_objdata_temp LIKE i_objdata_temp.
    FIELD-SYMBOLS: <t_dyntable> TYPE STANDARD TABLE,
    <fs_dyntable>,
    <fs_fldval> TYPE ANY.
    DATA: t_newtable TYPE REF TO data,
    t_newline TYPE REF TO data,
    fs_fldcat TYPE slis_t_fieldcat_alv,
    t_fldcat1 TYPE lvc_t_fcat,
    wa_it_fldcat TYPE lvc_s_fcat,
    wa_colno(2) TYPE n,
    wa_flname(30) TYPE c.
    DATA: fieldname(20) TYPE c.
    DATA: fieldvalue(40) TYPE c.
    DATA: index(3) TYPE c,
    v_time(60) TYPE c.
    DATA: wa_cat LIKE LINE OF fs_fldcat.
    CONSTANTS : c_nac TYPE klah-class VALUE 'NAC',
    c_klart TYPE ausp-klart VALUE '001',
    c_check TYPE c VALUE 'X' .
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-000.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT (28) text-001 .
    SELECT-OPTIONS: s_atnam FOR cabn-atnam NO INTERVALS OBLIGATORY. " Characteristic name
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK b1 .
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    SELECT-OPTIONS: s_matnr FOR mara-matnr. " material Number
    SELECT-OPTIONS: s_mtart FOR mara-mtart. " material type
    SELECT-OPTIONS: s_matkl FOR mara-matkl. " material type
    SELECT-OPTIONS: s_mstae FOR mara-mstae. " X-Plant material status
    PARAMETERS : s_date LIKE sy-datum OBLIGATORY DEFAULT sy-datum . " date
    SELECTION-SCREEN END OF BLOCK b2 .
    AT SELECTION-SCREEN ON s_atnam.
    SELECT SINGLE * FROM cabn WHERE atnam IN s_atnam.
    IF sy-subrc 0.
    MESSAGE text-003 TYPE 'E'.
    ENDIF.
    AT SELECTION-SCREEN ON s_matnr.
    SELECT SINGLE * FROM mara WHERE matnr IN s_matnr.
    IF sy-subrc 0.
    MESSAGE text-004 TYPE 'E'.
    ENDIF.
    AT SELECTION-SCREEN ON s_mtart.
    SELECT SINGLE * FROM t134 WHERE mtart IN s_mtart.
    IF sy-subrc 0.
    MESSAGE text-005 TYPE 'E'.
    ENDIF.
    AT SELECTION-SCREEN ON s_matkl.
    SELECT SINGLE * FROM t023 WHERE matkl IN s_matkl.
    IF sy-subrc 0.
    MESSAGE text-006 TYPE 'E'.
    ENDIF.
    START-OF-SELECTION.
    PERFORM get_data.
    PERFORM get_data_keydate.
    PERFORM material_all_charname.
    PERFORM get_classification.
    PERFORM dynamic_table.
    *& Form dynamic_table
    text
    --> p1 text
    <-- p2 text
    FORM dynamic_table.
    PERFORM fieldcatalog.
    PERFORM dynamic_table_create.
    PERFORM final_data.
    PERFORM final_fieldcatalog.
    PERFORM layout_build.
    PERFORM grid_display.
    ENDFORM. " fieldcat
    *& Form layout_build
    text
    FORM layout_build .
    st_layout-zebra = c_check.
    st_layout-no_vline = ''.
    st_layout-colwidth_optimize = c_check.
    st_layout-detail_popup = c_check.
    st_layout-detail_initial_lines = c_check.
    st_layout-detail_titlebar = text-021.
    ENDFORM. " layout_build
    *& Form alv_top_of_page
    text
    FORM alv_top_of_page.
    REFRESH t_header.
    CLEAR t_header.
    w_header-typ = 'H'. "H=Header, S=Selection, A=Action
    w_header-key = ' '.
    w_header-info = text-019.
    APPEND w_header TO t_header.
    CONCATENATE sy-datum4(2) '-' sy-datum6(2) '-' sy-datum0(4) ' / ' sy-uzeit0(2) ':' sy-uzeit2(2) ':' sy-uzeit4(2) INTO v_time.
    w_header-typ = 'S'. "H=Header, S=Selection, A=Action
    w_header-key = text-020.
    w_header-info = v_time.
    APPEND w_header TO t_header.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
    it_list_commentary = t_header.
    ENDFORM. "alv_top_of_page
    *& Form grid_display
    text
    --> p1 text
    <-- p2 text
    FORM grid_display .
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    i_callback_top_of_page = 'ALV_TOP_OF_PAGE'
    it_fieldcat = fs_fldcat
    is_layout = st_layout
    i_default = c_check
    i_save = 'A'
    it_events = v_events[]
    TABLES
    t_outtab = <t_dyntable>.
    ENDFORM. " grid_display
    *& Form FINAL_FIELDCATALOG
    text
    --> p1 text
    <-- p2 text
    FORM final_fieldcatalog .
    wa_cat-fieldname = text-009.
    wa_cat-seltext_m = text-015.
    wa_cat-outputlen = 18.
    APPEND wa_cat TO fs_fldcat.
    wa_cat-fieldname = text-011.
    wa_cat-seltext_m = text-016.
    wa_cat-outputlen = 40.
    APPEND wa_cat TO fs_fldcat.
    LOOP AT s_atnam.
    CLEAR wa_cat.
    wa_cat-fieldname = s_atnam-low.
    wa_cat-seltext_m = s_atnam-low.
    wa_cat-outputlen = '15'.
    APPEND wa_cat TO fs_fldcat.
    ENDLOOP.
    wa_cat-fieldname = text-012.
    wa_cat-seltext_m = text-017.
    wa_cat-outputlen = 18.
    APPEND wa_cat TO fs_fldcat.
    wa_cat-fieldname = text-013.
    wa_cat-seltext_m = text-018.
    wa_cat-outputlen = 8.
    APPEND wa_cat TO fs_fldcat.
    ENDFORM. " FINAL_FIELDCATALOG
    *& Form FIELDCATALOG
    text
    --> p1 text
    <-- p2 text
    FORM fieldcatalog .
    wa_it_fldcat-fieldname = text-009.
    wa_it_fldcat-datatype = text-010.
    wa_it_fldcat-intlen = 18.
    APPEND wa_it_fldcat TO t_fldcat1.
    wa_it_fldcat-fieldname = text-011.
    wa_it_fldcat-datatype = text-010.
    wa_it_fldcat-intlen = 40.
    APPEND wa_it_fldcat TO t_fldcat1.
    LOOP AT s_atnam.
    CLEAR wa_it_fldcat.
    wa_it_fldcat-fieldname = s_atnam-low.
    wa_it_fldcat-datatype = text-010.
    wa_it_fldcat-intlen = 30.
    APPEND wa_it_fldcat TO t_fldcat1.
    ENDLOOP.
    wa_it_fldcat-fieldname = text-012.
    wa_it_fldcat-datatype = text-010.
    wa_it_fldcat-intlen = 18.
    APPEND wa_it_fldcat TO t_fldcat1.
    wa_it_fldcat-fieldname = text-013.
    wa_it_fldcat-datatype = text-014.
    wa_it_fldcat-intlen = 8.
    APPEND wa_it_fldcat TO t_fldcat1.
    ENDFORM. " FIELDCATALOG
    *& Form DYNAMIC_TABLE_CREATE
    text
    --> p1 text
    <-- p2 text
    FORM dynamic_table_create .
    Create dynamic internal table and assign to FS
    CALL METHOD cl_alv_table_create=>create_dynamic_table
    EXPORTING
    it_fieldcatalog = t_fldcat1
    IMPORTING
    ep_table = t_newtable.
    ASSIGN t_newtable->* TO <t_dyntable>.
    Create dynamic work area and assign to FS
    CREATE DATA t_newline LIKE LINE OF <t_dyntable>.
    ASSIGN t_newline->* TO <fs_dyntable>.
    ENDFORM. " DYNAMIC_TABLE_CREATE
    *& Form FINAL_DATA
    text
    --> p1 text
    <-- p2 text
    FORM final_data .
    LOOP AT i_objdata_temp INTO w_objdata_temp.
    *assign w_objdata_temp-matnr to <fs_dyntable>.
    AT NEW matnr.
    wa_flname = text-009.
    fieldvalue = w_objdata_temp-matnr.
    CONDENSE fieldvalue NO-GAPS.
    ASSIGN COMPONENT wa_flname
    OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
    <fs_fldval> = fieldvalue.
    ENDAT.
    wa_flname = text-011.
    fieldvalue = w_objdata_temp-maktx.
    CONDENSE fieldvalue NO-GAPS.
    ASSIGN COMPONENT wa_flname
    OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
    <fs_fldval> = fieldvalue.
    wa_flname = w_objdata_temp-atnam.
    fieldvalue = w_objdata_temp-ausp1.
    CONDENSE fieldvalue NO-GAPS.
    ASSIGN COMPONENT wa_flname
    OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
    <fs_fldval> = fieldvalue.
    wa_flname = text-012.
    fieldvalue = w_objdata_temp-prdha.
    CONDENSE fieldvalue NO-GAPS.
    ASSIGN COMPONENT wa_flname
    OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
    <fs_fldval> = fieldvalue.
    wa_flname = text-013.
    fieldvalue = w_objdata_temp-mstde.
    CONDENSE fieldvalue NO-GAPS.
    ASSIGN COMPONENT wa_flname
    OF STRUCTURE <fs_dyntable> TO <fs_fldval>.
    <fs_fldval> = fieldvalue.
    AT END OF matnr.
    APPEND <fs_dyntable> TO <t_dyntable>.
    ENDAT.
    ENDLOOP.
    ENDFORM. " FINAL_DATA
    *& Form GET_CLASSIFICATION
    text
    --> p1 text
    <-- p2 text
    FORM get_classification .
    LOOP AT i_data INTO w_data.
    SELECT SINGLE * FROM klah WHERE class = c_nac.
    IF sy-subrc = 0.
    IF w_data-mstde >= klah-vondt.
    CALL FUNCTION 'CLAF_CLASSIFICATION_OF_OBJECTS'
    EXPORTING
    class = c_nac
    classtext = c_check
    classtype = c_klart
    clint = 0
    features = c_check
    language = sy-langu
    object = w_data-objek
    TABLES
    t_class = i_class
    t_objectdata = i_objdata
    EXCEPTIONS
    no_classification = 1
    no_classtypes = 2
    invalid_class_type = 3
    OTHERS = 4.
    LOOP AT i_class INTO w_class.
    MOVE w_class TO w_class_temp.
    APPEND w_class_temp TO i_class_temp.
    ENDLOOP .
    LOOP AT s_atnam.
    READ TABLE i_objdata INTO w_objdata WITH KEY atnam = s_atnam-low.
    IF sy-subrc = 0.
    MOVE w_data-matnr TO w_objdata_temp-matnr.
    MOVE w_data-maktx TO w_objdata_temp-maktx.
    MOVE-CORRESPONDING w_objdata TO w_objdata_temp.
    MOVE w_data-prdha TO w_objdata_temp-prdha.
    MOVE w_data-mstde TO w_objdata_temp-mstde.
    APPEND w_objdata_temp TO i_objdata_temp.
    ENDIF.
    ENDLOOP.
    ENDIF.
    ENDIF.
    ENDLOOP.
    ENDFORM. " GET_CLASSIFICATION

  • ALV display using dynamic field catalog and dynamic internal table

    hi ,
    please guide me for ALV display using dynamic field catalog and dynamic internal table.
    Thank you.

    Hi Rahul,
    maybe thread dynamic program for alv is helpful for you. More information about the [SAP List Viewer (ALV)|http://help.sap.com/saphelp_nw70/helpdata/EN/5e/88d440e14f8431e10000000a1550b0/frameset.htm]. Also have a look into the example programs SALV_DEMO_TABLE*.
    Regards Rudi

  • Dynamically assign a send pipeline to a dynamic send port in orchestration

    Hi
    I have an orchestration that is using a dynamic send port. I need to somehow assign the send pipeline to the dynamic send port programmatically.
    for example, I will have a decide shape in the orchestration. Based on the condition in the decide shape I need to assign the corresponding send pipeline for that condition. let's say in Branch A, I want to select xml assembler , in Branch B I will want
    to select a flat file assembler...
    how can this be achieved. I have seen some links recommending using the ESB tool kit, but I do not want to go down that route.
    any help is appreciated
    Regards, Mazin - MCTS BizTalk Server 2006

    Ashwin
    Thanks again for your reply.
    If I do it using role links I will loose the flexibility I have "having a dynamic file name" lots of our partners would like to receive their files with specific file naming convention based on the content of the file.
    If I use a decide shape / another dynamic send port, this means that everytime I have a new custom pipeline I would need to modify the orchestration and add another decide branch with another dynamic send port.
    both of the above suggestions will break the flexibility of the solution since we now can configure new partners in seconds in the configuration database without the need to modify the orchestration or add any new send ports
    Regards, Mazin - MCTS BizTalk Server 2006
    So in your requirement, the “dynamic” nature you want from send port are
     following:
    To set the send file names dynamically depends on the message received.
    To send the message to different send locations depending on the message received. You want to retrieve this destination URL location from database.
    And send ports may have different pipeline component like flat-file and XML ones.
    As I have commented in my earlier reply, Role-Link could fit your bill perfectly and this can be achieved by using following:
    1) Receive a message into an Orchestration.
    2) In Orchestration set the file name dynamically based on the received file and following code shall help you to set the name of the file to dynamic. 
    msgToBeSend(FILE.ReceivedFileName)="YourDynamicFileNameUWantToAssign";
    Use the above while constructing the outgoing message.
    3) Create a “Provider” Role-Link with send port type following the wizard.
    4) In Orchestration’s expression shape may be before sending the message out,
    performs the party resolution using a code similar to the following:  
    YourRoleLinkName(Microsoft.XLANGs.BaseTypes.DestinationParty) = new Microsoft.XLANGs.BaseTypes.Party(msgToBeSend.YourDistingushedPropertyToIdentifyParty, "OrganizationName");
    5) In the above sample code “YourDistingushedPropertyToIdentifyParty” refer for the code which could identify the partyname where the send port is configured.
    6) Create Parties representing different type of message to be send like flat-file or XML messages.
    7) Create a static send port and populate the outbound URL dynamically by using a custom pipeline component. In the custom pipeline component URL can be dynamically bound by calling the database as per your reqirement i.e based on the received message by
    accessing its content in custom pipeline access the database, find the destination URL and assign the “OutboundTransportLocation” context property of the outbound message something like this 
    msgToBeSend.Context.Promote("OutboundTransportLocation", "http://schemas.microsoft.com/BizTalk/2003/system-properties", YourOutboundURLFromDatabase);
    Refer this article on this topic:
    http://www.codit.eu/blog/2013/03/06/adding-dynamic-behavior-to-static-send-ports-a-caveat/
    8) In the Parties you have created assign the send ports.
    9) GoTo your “Role-Links” folder within the deployed BizTalk application and enlist the parties.
    These steps enable you to achieve the dynamic requirement you want to implement with the mentioned Role-Link.
    Regards,
    M.R.Ashwin Prabhu
    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

  • Dynamically creating a Record Group based on Previously entered Record Grou

    Forms [32 Bit] Version 10.1.2.3.0 (Production)
    Hi,
    I know how to dynamically create a record group based on a query and putting the code in When new form instance.
    My query is. I have a form which has multiple Record Groups and the user wants to dynamically create subsequent groups based on previous groups.
    For example
    I have a record group with selects a Location,
    when the user selects the Location from a list of values
    the 2nd record group called 'Cost Centres' will have to filter out only those with the locations selected above.
    How can I populate the 2nd record group at run-time when I do not know what site the user will select?
    If I simply populate in when new form instance as in location and just select everything, the list of values populates.
    CC field is a LIST ITEM and the list style is a POP LIST, it is not required.
    I have put the code in the Location field in the when-list-changed trigger.
    I am getting this error:
    frm-41337: cannot populate the list from the record group
    here is the code:
    DECLARE
    v_recsql Varchar2(1000); -- The SQL for creating the Record Group.
    v_recgrp RecordGroup; -- Record Group
    v_status Number; -- Return Value of Populate_Group function.
    c_where VARCHAR2(1000);
    BEGIN
         IF :location = '1' THEN
              c_where := ' substr(cost_centre,1,2) in (''01'',''02'')';
         ELSIF :location  = '2' THEN
              c_where := ' substr(cost_centre,1,2) in (''02'',''03'')';
         ELSIF :location   = '3' THEN
              c_where := ' substr(cost_centre,1,2) in (''01'',''11'',''07'')';
                   ELSE
              c_where :=  ' 1=1'; --EVERYTHING
         END IF;
    v_recsql := 'SELECT cost_centre, description  FROM   cost_centres  where '||c_where;
    -- Create the Record Group
    v_recgrp := CREATE_GROUP_FROM_QUERY('v_recgrp', v_recsql);
    IF NOT ID_NULL(v_recgrp)
    THEN -- No Error, record group has been successfully created.
    -- Populate Record Group
    v_status := POPULATE_GROUP('v_recgrp');
    IF v_status = 0
    THEN -- No Error. Record Group has been Populated.
    POPULATE_LIST('block.CC', 'v_recgrp');
    END IF; -- IF v_status = 0
    -- Delete the Record Group as it is no longer needed.
    DELETE_GROUP('v_recgrp');
    END IF; -- IF NOT ID_NULL(v_recgrp)
    END;thanks for your assistance.

    Hi,
    Once record status gets change for block you can not populate/repopulate the list item. Keep those list items as non-database item with different names and create different items as database orignal items. Than assign the values in WHEN-LIST-CHANGE trigger to the actual database items.
    -Ammad

  • Dynamically assigning digital signature strategy

    Hi Experts,
      I have a requirement where I need to dynamically assign different signature strategy to document approval based on the number of approvers.
    In our case for the same document based on the level of changes number of approvers might be different ( 3 - 12). We are planning to achive this by allowing document owners to select the approver using a approval workflow
    I also know that there is a limition of 8 approver slots on the default signature strategy.
    Please advise what is the best strategy in this case.
    Thank You
    Regi

    Hi,
    You can refer Note 700495 for digital signatures.
    Thank You,
    Manoj

  • Dynamically Assigning Users

    Hi,
    I am trying to dynamically assign users within my process and need some guidance with it. The following two steps briefly describe what I am trying to achieve
    1. A user starts the process by filling in data into the PDF and completes the task.
    2. Based on the information filled in by the first user, I have to determine who the user for the next task is going to be and then assign the task to the user accordingly.
    I do not have the option of using multiple assign task operations and then setting the logic within the route evaluation, as there are way too many users that can be assigned for the second task ( there are more the 50 possible users from which the second user has to be selected )
    I am fairly new to Livecycle and from the options that I have seen so far, here are few questions that I need some help with
    1. The only option within the Assign Task operation that lets you assign the user dynamically is by using an XPath expression. If I were to use this, should I be embedding the logic within the form itself and then use the XPath expression to find the user by dynamically updating the form after the first user completes the task?
    2. Is there another approach to achieve this other than having the logic for selecting the user defined in the form itself? I believe embedding the logic in the form might not be a good idea as it can have performance implications and also having user information in the form itself doesnt seem right.
    3. Is there an operation that I could use, which would contain the logic that I would need to determine the next user and then assign the task to the user based on the result of the operation?
    I am hoping someone would have definitely run into this situation before so any suggestions/thoughts will be appreciated.
    Thanks,
    Varma

    "1. The only option within the Assign Task operation that lets you assign the user dynamically is by using an XPath expression."
    Yes
    "If I were to use this, should I be embedding the logic within the form itself and then use the XPath expression to find the user by dynamically updating the form after the first user completes the task?"
    I depends. If you can get to it server side, it woulb probably better. If you need to make a change to something, you don't want to change the form.
    "Is there another approach to achieve this other than having the logic for selecting the user defined in the form itself?"
    I'm not sure where the logic for the next user is located, but you could make a database or web service call from the process to get the next user instead.
    "I believe embedding the logic in the form might not be a good idea as it can have performance implications and also having user information in the form itself doesn't seem right."
    I agree.
    "Is there an operation that I could use, which would contain the logic that I would need to determine the next user and then assign the task to the user based on the result of the operation?"
    Again, I need a bit more info as to where the info (logic) is located.
    Jasmin

  • Questions on Custom based queuing

    Hi everybody
    I have a question on custom based queuing.
    Please consider the following example
    q1   400 bytes
    q2   300 bytes
    then  a default queue.
    This is what i understand ( based on this following link)
    http://www.cisco.com/en/US/docs/ios/12_2/qos/configuration/guide/qcfcq_ps1835_TSD_Products_Configuration_Guide_Chapter.html
    q1 will be emptied until the byte counters reaches zero,
    q2 2ill be emptied until the byte counter reaches zero
    Then deafult queue. How long default queue will be served before scheduler goes back to q1 since we are not defining any byte count for default queue. For example in case q1, we know the scheduler will empty the queues until byte counter reaches zero, we do not have any byte counter associated with default queue so how does scheduler know it is time to stop serving default queue and goes back to queue 1 and so on.
    Thanks and have a great weekend.

    Hi Dinesh,
    To try to provide some answers to your questions:
    1. A regular role determines what a user can do in Studio as a whole. An application role determines what a user can do within the context of a specific application.
    For example, a user with the Power User role for Studio can create applications, and automatically has an Application Administrator role for the applications they create. They can also grant Application Member or Application Administrator roles for those applications to other users. They cannot automatically view or edit applications created by other users, unless granted an application role by an Application Administrator for those applications.
    Users with only the User role for Studio cannot create applications (as of 3.1), but may be granted an Application Member or Administrator role for specific applications.
    Neither a Power User nor a User has access to the Control Panel.
    Users with the Administrator role for Studio have access to the Control Panel, and unrestricted access to applications.
    For information on user roles in Studio, see About user roles.
    For information on assigning application roles, see Managing memebership in an application.
    2. We don't really support component-specific permissions - the options are deprecated and shouldn't be used, which is why they are not documented. The Configuration option is the only option available for a component.
    3. Add Discussion is also a deprecated function that is not supported.

  • Assign Scenarios and Customer Fields to Ledgers ?

    Hello Sir,
    We r using ECC 6.0
    Which is right to assign to Scenario  ?
    IMG: Financial Accounting (New) => Financial Accounting Global Setting (New) => Ledger => Ledger => Assign Scenarios and Customer Fields to Ledgers
    Select 0L (Leading Ledger) => Double click on Scenario
    New Entries:   1) FIN_CCA                 Cost Center Update
                          2) FIN_GSBER          Business Area
                          3) FIN_PCA                 Profit Center Update
    Why we assign?
    What the purpose?
    It is related to Document Splitting?     
    Thanks
    J

    Hi,
    SAP provides totally 6 Scenarios and you cant increase these scenarios. Generally all the 6 scenarios will be assigned to the leading ledger, for non leading ledgers it depends on your business requirement for attaching the scenario. And coming to the functionality of the scenarios, as you asked yes it is regarding document splitting.
    See when you post any document with additional account assignment like profit center, segment or business area. Based on the scenario you assigned to your leading ledger, these fields will be displayed in the general ledger view. If you did not assign the scenarios then that scenario wont be displayed in your general ledger view.
    HOpe u understood.
    regards
    srikanth

  • Dynamically assign value to a column in ALV LIST Display

    Hi all,
    How can I dynamically assign value to a column in ALV LIST Display without using classes and methods?
    Thanks,
    Ridhima

    Hi Vikranth,
    I am displaying one ALV list say with columns A and B.
    I have value in A but not in B. Now at runtime user selects one row, clicks on push button in application toolbar, then i have to display value in column B in the already displayed list.
    I searched and came to know it can be done with oops concept. but i am not using classes and methods.
    so how can i do this?
    Thanks,
    Ridhima.

  • Automatic assignment of Support Team based on processor

    We have a help desk team creating Service Desk messages directly into SOLMAN (not from satellite system) using transaction NOTIF_CREATE and assigning processor. After they save the message, they open the message again in transaction CRM_DNO_MONITOR and change the Support Team manually based on the processor's Support Team. They are requesting if
    the assignment of Support Team can be done automatically based on the processor assigned during creation of message and
    when processor is changed/re-assigned after message has already been created.
    I've read some suggestions in the blogs and forums that partner determination can be done by creating your own BADI. 
    So I've created a new BADI "Z_FIND_TEAM" (copied from BADI CRM_DNO_PARTNER_1) and commented the logic which derives the support team based on the rule in transaction PFAC, and replace this with my own logic of getting the processor's Support Team. Then I assign this to the action. When I tested the action during creation of message (NOTIFCREATE), the action failed to get the support team because the CRM documents (where I'm getting the processor) is not created yet at the time that the BADI is executed.
    I  also tested the same action (but I didn't schedule it to run automatically) during changing of message (in CRM_DNO_MONITOR). The action successfully assign the correct Support Team when I already saved the new processor before choosing the action.
    But if I change the processor and do not save first before choosing the action, the support team of the old processor is assigned.
    In both cases, I need to get the value of the processor in the screen and pass this to the BADI.
    Can anyone help me how to pass the screen value of processor to the BADI.
    Or do you have other suggestions on how I can automatically assign the Suport Team based on processor.
    Thanks in Advance.
    Regards,
    Tess

    Hi Ragu.
    Thanks for your quick response.
    I've already tried assigning some standard access sequence in the support team's partner determination although the assignment of the support team always returns with the BP of the top organization unit in our org chart that's why I tried using the BADI afterwards.
    Our org chart is defined something like :
      IMS Support Team  org unit
          Help Desk  org unit
               Person 1
          Functional Team org unit
               Person 2
          Technical Team org unit 
               Person 3
    I've tried access sequence like "Organizational Data: Employee for an Org. Unit" and "Organizational Data: Organizational Unit for a User", but when I test this the support team is always defaulted with the "IMS Support Team's" BP Number (the top org unit).
    I'm not sure which access sequence I can use to assign the support team, for example, processor = "person3", the support team should be "Technical Team".
    Or do I need to create my own access sequence?
    I'm not familiar with these access sequence and not really sure how it works.
    Thanks.
    Tess

  • In human task, dynamically assign group doesn't work

    Oracle SOA 11.1.1.4
    My bpel process invokes a human task.
    On the human task Assignment tab, I assigned 3 users (by name), 1 group (by expression).
    The group is configured in LDAP
    When I tested the bpel process, I entered the group and other data required.
    From the worklist app, I see the task listed. It is assigned to the 3 users, but not the dynamically passed-in group.
    From the Audit trail, I saw all data I entered (include the group). Everything seems correct, but I still can’t make the dynamically-pass-group work.
    If I assign the group by name in human task, it works fine.
    The problem is: dynamically assign group doesn't work.
    Please kindly advice.

    Yes, it is possible assign a group as participant of some human task, passing the group name as parameter.
    I have tested just now.
    It works pretty well in SOA 11.1.1.4 (BPEL or BPM).
    Make sure add a data parameter in your human task definition and pass a valid group name to it.
    At the Assignment tab, in the participants' list, add a group, data type by expression, and set the value to the right xpath expression to the corresponding parameter.
    For example: /task:task/task:payload/task:group
    If it is not working look the SOA log files, probably you'll find some information about the error there. Maybe there is some problem with your jazn.com configuration.
    You can also test if there is something wrong related to the group name, trying to transfer some task to the same group by the worklist.

  • Account assignment model for customer line items

    Hi all
    As per SAP, account assignment models can be used for creating the entries for GL accounts. I have a scenario which requires similar type of feature for Customer and vendor items also..
    Is it possible to create an account assignment model for Customer and vendor line items..with posting key 01..?
    Thanks and Regards
    Rakesh

    Hi,
    Account assignment model is created using transaction code FKMT. It does allow using posting key 01, however unlike in GL Account - Customer accounts will not be always same. Hence, normally used for GL postings.
    In case if you are going to use for the same Customer / Vendor Account you can try it using transaction code FKMT.
    Thanks
    Murali.

  • Function module to find the Credit limit of a Customer based on Credit Area

    hi Experts,
                       Is there any function module to find the Credit limit of a Customer based on Credit Area.
    Regards,
    Dheepak

    hi
    try this:
      select single * from KNKK INTO zzKNKK
          where KUNNR = xkunnr and KKBER = xkkber.
    credit limit: zzKNKK-KLIMK...
    regards,darek

Maybe you are looking for

  • G33M - Computer ho down for 3 times before the MSI screen on startup

    Hi! I have this problem from 1 week ago! When i turn on my pc it is on and after 3 seconds it turn off and it restart and for 3 times do this! after the last times appears the allert that says me "Warring fails to load overlocking configuration, load

  • Satallite Pro 440cdx does not power up - black screen

    I have a Satellite Pro 440cdx. Laptop has been sitting for while under bit unknown condition. When bought it I just got power supply for it. Charging battery light is on. Computer powers up, I can hear HDD running but then there it no picture on scre

  • Formulas????

    I have a document that has two forms they both are identical forms and I do not want to have to fill in the text boxes on both forms. What formula should I use to have the text boxes on the second form filled in automatically? So, I want to type into

  • Time machine with a new harddisk

    Hi all I just used time machine to restore my leopard into a new harddisk. everything work just fine, then I want to continue to use this external hd(time machine) to backup the new harddisk that I have in my mbp. But somehow TM keep showing preparin

  • How to display messages in status bar

    Hello, Im developing some forms that will be published in EBS 12.1.1 Im using Oracle Forms Builder v 10.12.0.2. Those forms are based on the Template form. I have the following problem: Messages are not displayed in the status bar (for example messag