How to set the returned value of CFL in a matrix

dear all,
I got a matrix binded to a DataSource and two CFLs are in this matrix. The codes for handling AfterChooseFromList is as following.  It works almost fine. But when a docoment containing more than two
rows in the matrix and I reselect the CFL cell values more than two times, an error occured sometimes, not everytime. The error message is "This entry already exists in the following tables @CYW_PRROW [Message 131-183]"
I have tried to find out what kind of situation to cause this error, but still in the mud.
Can anybody give me some suggestion? Thanks.
Public Sub OnAfterChooseFromList_Matrix(ByVal pVal As SAPbouiCOM.ItemEvent)
        Dim ActionSuccess As Boolean = pVal.ActionSuccess
        Dim oform As SAPbouiCOM.Form = SBO_Application.Forms.Item(pVal.FormUID)
        Dim oitem As SAPbouiCOM.Item = oform.Items.Item("mtx_0")
        Dim omatrix As SAPbouiCOM.Matrix = CType(oitem.Specific, SAPbouiCOM.Matrix)
        Dim oDataTable As SAPbouiCOM.DataTable
        oDataTable = pVal.SelectedObjects
        Dim val As String
        Try
            val = oDataTable.GetValue(0, 0)
        Catch ex As Exception
        End Try
        omatrix.GetLineData(pVal.Row)
        oform.DataSources.DBDataSources.Item("@CYW_PRROW").Offset = pVal.Row - 1
        If pVal.ColUID = "col_0" Then
            Try
                oform.DataSources.DBDataSources.Item("@CYW_PRROW").SetValue("U_PRItemCode", pVal.Row - 1, CStr(val))
            Catch ex As Exception
                SBO_Application.MessageBox(ex.Message)
            End Try
        Else
            Try
                oform.DataSources.DBDataSources.Item("@CYW_PRROW").SetValue("U_PRSupp", pVal.Row - 1, CStr(val))
            Catch ex As Exception
                SBO_Application.MessageBox(ex.Message)
            End Try
        End If
        omatrix.SetLineData(pVal.Row)
        If pVal.FormMode = "1" Then
            oform.Mode = SAPbouiCOM.BoFormMode.fm_UPDATE_MODE
        End If
    End Sub
Another quesion, can I assign the returned value of CLF directly to the cell?

Hello  Chao-Yi Wu,
I don't have a real solution for you - just a few comments:
1. At
        Try
            val = oDataTable.GetValue(0, 0)
        Catch ex As Exception
        End Try
I would add
        Try
            if oDataTable Is Nothing Then Exit Sub ' If the User cancels the CFL
            val = oDataTable.GetValue(0, 0)
        Catch ex As Exception
        End Try
2. At
   If pVal.ColUID = "col_0" Then
I would make the branch by the pVal.ChooseFromListUID instead of the ColUID
and the 2nd not with "Else" but with "Else If ....."
3. It may work with EditText.String/Value of a cell but I never do that because of performance-reasons.
I always do it the same way as you in principle - I don't really know what the problem is.
4. Maybe some unique indexes on your table (although this should give an error at the update and not at CFL when "the unique-law is broken"...)?
Sorry - that's all for the moment.
Cheers,
Roland

Similar Messages

  • How to get the return values from a web page

    Hi all :
       how to get the return values from a web page ?  I mean how pass values betwen webflow and web page ?
    thank you very much
    Edited by: jingying Sony on Apr 15, 2010 6:15 AM
    Edited by: jingying Sony on Apr 15, 2010 6:18 AM

    Hi,
    What kind of web page do you have? Do you have possibility to for example make RFCs? Then you could trigger events (with parameters that could "return" the values) and the workflow could react to those events. For example your task can have terminating events.
    Regards,
    Karri

  • SRM 4.0- How to set the default values for product type (01) only for SC

    The radio button “Service” should not be visible.
    Also for search help (e.g. search for internal products) where a search should only be possible for product type 01 (goods). The system should not display the product type and internally always search for goods only.
    How to set the default values for product type (01) only for SC
    We needs to use Search help BBPH_PRODUCT which having parameter PRODUCT_TYPE
    Here we can set defalut value 01 but it is not correct one since same search help is using several places.
    We need to limit the search help results only for SC.
    Kindly help out me ASAP.

    The easiest way to set defautl values is to edit the batch class.
    Goto the characteiristic and go to update values.
    In here you probably have something like 0 - 100 as a spec range.
    On the next line enter the default value within this range.  At the end of the line, click in the box in the column labelled "D".  This indicates the defautl value for the characteristic.
    If you need to you can do this in the material classification view as well.
    Just to be clear, these values will only show up in the batch record.  You can not have defautl values in resutls recording screens.
    FF

  • How to set the Default values for Info Objects in Data Selection of InfoPac

    Hi All,
    Flat file Extracion:
    How to set the Default values for Info Objects in Data Selection Tab  for Info Package
    ex: Fiscal Year Variant  Info Object having values 'K4' 'Y2' etc  in Flat file
    Initially  default value(not constant)  for this info Object value should be 'K4'  in Info Package
    If I set data selection value for this info object K4 it will retreive records with this selection only? how to handle
    Rgds,
    CV

    Hi,
    suppose as your ex. if you are having fiscalyear variant in the dataselection tab then specify K4 in the from column, again the ficalyearvariant row and click on insert duplicate row at the bottom . you will get another row . In that enter Y2 in the from column. now you can extract K4, y2 values .
    haritha

  • How to set the default value of an item type DATE PICKER to the day of yest

    Hi
    How to set the default value of an item type DATE PICKER to the day of yesterday ?
    Thank you very much !
    Christian.

    Hi Christian,
    Have a look at this thread Re: Default the Date Picker to Today
    It covers this issue in detail.
    Regards
    Paul

  • How to set the default value in dashboard prompt?

    Hi there,
    In my Dashboard prompt I'm getting values like:
    Mar 2010
    Apr 2010
    May 2010
    Jun 2010
    How to set the default value to the current month (Jun 2010). I don't want to use "specific value". I want to use the "SQL Result" for populating the default value.
    Appreciate your help

    hi,
    you can create a Repository variable current_month with the expression as
    select to_char(trunc(sysdate),'Mon')from dual
    and use this in the prompt "Default to" Server variable and use this repository variable.
    hope this helps.
    cheers,
    vineeth

  • How to set the Selectonechoice Value associated with MethodAction

    Hi All,
    I am using Jdeveloper 11.1.1.5 and i have a two textbox on my page and one selectonechoice.I am fetching the values from the Master Table in the dropdown by sending the supplierVatId and SupplierPostCode and the base dataSource of the selectonechoice is my transaction table(InvoiceHeaderTable).
    My jspx page source is :-
    <af:inputText value="#{bindings.Suppostcode.inputValue}"
    binding="#{backingBeanScope.backing_parkSupplierId.it7}"
    id="it7">
    </af:inputText>
    <af:inputText value="#{bindings.Suppvatid.inputValue}"
    binding="#{backingBeanScope.backing_parkSupplierId.it8}"
    id="it8">
    <f:validator binding="#{bindings.Suppvatid.validator}"/>
    </af:inputText>
    </af:panelFormLayout>
    <af:selectOneChoice value="#{bindings.supplierid.inputValue}"
    binding="#{GeneralManagedBean.suppid}"
    id="soc1">
    <f:selectItems value="#{bindings.supplierid.items}"
    binding="#{GeneralManagedBean.suppiditems}"
    id="si1"/>
    </af:selectOneChoice>
    and this is my pageDef code :-
    <attributeValues IterBinding="InvoiceheaderView1Iterator" id="Suppostcode">
    <AttrNames>
    <Item Value="Suppostcode"/>
    </AttrNames>
    </attributeValues>
    <attributeValues IterBinding="InvoiceheaderView1Iterator" id="Suppvatid">
    <AttrNames>
    <Item Value="Suppvatid"/>
    </AttrNames>
    </attributeValues>
    <methodAction id="getSupplierIdfromDB" RequiresUpdateModel="true"
    Action="invokeMethod" MethodName="getSupplierIdfromDB"
    IsViewObjectMethod="false" DataControl="SupplierDetailImpl"
    InstanceName="SupplierDetailImpl.dataProvider"
    ReturnName="data.SupplierDetailImpl.methodResults.getSupplierIdfromDB_SupplierDetailImpl_dataProvider_getSupplierIdfromDB_result">
    <NamedData NDName="supplierpostcode"
    NDValue="#{bindings.Suppostcode.inputValue}"
    NDType="java.lang.String"/>
    <NamedData NDName="suppliervatid"
    NDValue="#{bindings.Suppvatid.inputValue}"
    NDType="java.lang.String"/>
    </methodAction>
    <list IterBinding="InvoiceheaderView1Iterator" id="supplierid"
    DTSupportsMRU="true" StaticList="false"
    ListIter="getSupplierIdfromDBIterator">
    <AttrNames>
    <Item Value="Suppid"/>
    </AttrNames>
    <ListAttrNames>
    <Item Value="supplierid"/>
    </ListAttrNames>
    <ListDisplayAttrNames>
    <Item Value="supplierid"/>
    </ListDisplayAttrNames>
    </list>
    </bindings>
    And i have a button on the page called as "Clear DropDown".Now on click of Clear DropDown button  i need to clear the dropdown list and need to set a new value in the SupplierId selectonechoice.For the testing purpose it can be a static value like "Shah".
    I am trying to do like this but no help ..
    public String clearDropDown() {
    ValueExpression suppid1 = null;
    String id = "Shah";
    suppid1 =
    elFactory.createValueExpression(elContext, "#{bindings.supplierid.attributeValue}",
    Object.class);
    suppid1.setValue(elContext,id);
    AdfFacesContext.getCurrentInstance().addPartialTarget(suppid);
    AdfFacesContext.getCurrentInstance().addPartialTarget(suppiditems);
    return null;
    Please suggest!!!
    Regards,
    Shah

    While setting the value, it is giving me this warning in the logs :-
    *<FacesCtrlListBinding> <getInputValue> ADFv: Could not find selected item matching value Shah of type: java.lang.String in the list-of-values*.
    I know that the Shah is not present in the List but how do i clear the list and set the New Value which is "Shah".
    Please Suggest!!
    Regards,
    Shah

  • How to Change the return value for the parameters

    Hi, Can anyone help me with my problem?
    I have a parameter called "P1_Projects" defined in the HTMLDB page, on the report region, there are 2 buttons, one is "Go" button to submit the report on the screen, so user can preview the report, then another button "Export to PDF" can be clicked to generate the report using Oracle Report Services. The "Export to PDF" button will use the same set of parameters submitted for the "Go" button.
    So, the parameter "P1_Projects" is being used by these 2 buttons. and I have to pass a "%" wild card for "All Projects". To make the "Export to PDF" button work, I have to safe encode the return value for "%" to "%25" in order to pass the URL formula, but now my "Go" button doesn't work with "%25", it only recognize the "%" wild card.
    Is there a way to conditionally change the value depends which button is clicked?
    Any hint or help is highly appreciated!
    Hong

    try creating a plsql process which sets the P1_Projects item as required.
    in the plsql you can do:
    if :REQUEST = 'GO' then
    xxx
    else
    xxxx
    end if;
    set the condition to plsql expression:
    :REQUEST in ('GO', 'EXPORT')
    NB. the request value is usually set to the button name when a page is submitted from a button

  • How to store the return value from a select list in page item ?

    I'm sorry, I'm sure you will all flame me for this (and its long too :-(. I'm still trying to pick this up and havn't had time to read manual and this forum and up against the clock (as usual), but this must be something thats simple to do, otherwise why have 2 cols on LOV (display text and return value.
    normal kind of thing - master /detail, a master table and a detail table, master.id is PK in master, master.name is the name of the master item. detail.id is pk in detail, detail.mid is foreign key to master.id. I have a tabular report that displays a join of cols from master and detail, with 2 cols being links, one is a link on master.name, that passes master.id to page P1 and it displays a row from master. The other col displays detail.name and passes detail.id to page P3, P3 displays a row of the detail table.
    I want to populate a LOV with possible master.name values, but display the name of the current P3_MID value (from detail.mid). Then a user can pick a different master and it needs to update P3_MID so on submit it updates the row.
    I just can't seem to see in the manual how you can specify where the return value on a LOV goes?
    As I said, sorry for long post and not having had time to read docs correctly - someone just point me at the subject matter somewhere, please.

    Sorry, I was trying to be to complex and obviously APEX is just too damn cleaver - I figured out how this works - basically APEX pulls the LOV and then matchs the mid to it to display the correct name - simple and easy - just me making it difficult

  • How to get the return value of a LOV item using javascript

    Hello,
    I am trying to put an onchange attribute in the HTML Form Element Attributes field of a LOV item. The javascript should access the new return value of the item. How is this done ? All the methods I have tried give only the display value, not the return value. For example $v() returns the display value.
    Tiina

    If your item is called P1_ITEM this will give you the return value of a popup (displays description,returns key value)
    alert($x('P1_ITEM_HIDDENVALUE').value)
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    -------------------------------------------------------------------

  • How to set the LOV value programmatically?

    Hello,
    I have a LOV (select list with submit) the value (displayed and corresponding returned) of which I would like to set by selecting a row in a report.
    What is the event I use to catch the selection of the row in the report and what would be the sample code to set the LOV values?
    Thanks a lot!
    Gabor

    Perhaps a more detailed explanation of the issue helps:
    I am developing an online internet bookmarking application. It basically contains a folder tree and bookmarks within the folders.
    The folder tree is implemented by a table referencing itself (main columns are: ID, NAME, PARENT_ID).
    The LOV lists the NAMEs (actually, the full path of each folder as returned by a function) and returns the IDs.
    When the user selects a NAME, folders and bookmarks contained in that folder are listed in a report (non-recursively).
    The action of the user clicking a folder in the report should simulate the above as if they selected the name manually. This is where I need help!
    I hope this helps. Thanks!
    Gabor

  • How to set the Default value in the picklist and LOV

    Hi All,
    I have created a table with some of the columns as picklist and some of the columns as Lovs to insert some data into the tables as per the client requirement.
    I want to make one value as default for the picklist and one value as default for the Lov.
    Could you please let me know how can we show one value as default in the pick list or Lov.
    thanks in advance.
    jay

    can u please help how can we set the initial value dynamically with the userid
    For that i was passing the value from process Request of the lovCO by using the get user id to the vo query in the vo
    but its not giving the initial value as default dynamically depending on the user id
    could you please let me know the solution.
    Thanks
    Ajay

  • How to set the default value of selectOneChoice

    Hi All,
    I have two selectOneChoice(soc1 and soc2) in two respective pages with the same datacontrol.Now i need to set the default value of soc2 as per the value selected in soc1.
    For eg:-
    if user has selected a value in soc1 say "Bag" in the list then it should set the default value in soc2 as "Bag" when the second page loads.As both the selectOneChoice has been created using same data contol.
    How can i achieve this?
    Please suggest.

    Hi PR/Suresh,
    Thanks for your reply.
    My soc1 shows the employeeId like 100,101,102,103 but it holds the value as employeeName like Navn,Joy,Steve,Mark. I have used valuechangeevent to get the current selected value from soc1 but when i set the value in soc2 in its set property then the log says :-
    *<SimpleSelectOneRenderer> <_getSelectedIndex> Could not find selected item matching value "Navn" in RichSelectOneChoice[UIXEditableFacesBeanImpl, id=soc2]*
    My jspx page code of soc2 is :-
    <af:selectOneChoice binding="#{backingBeanScope.backing_temp2.soc2}"
    id="soc2"
    label="#{bindings.FirstName.label}">
    <f:selectItems value="#{bindings.FirstName.items}"
    binding="#{backingBeanScope.backing_temp2.si2}"
    id="si2"/>
    </af:selectOneChoice>
    and in my bean where i am accessing the value from valuechangeevent from soc1:-
    public void getValue(ValueChangeEvent valueChangeEvent) {
    BindingContext bindingContext = BindingContext.getCurrent();
    oracle.binding.BindingContainer bindings = bindingContext.getCurrentBindingsEntry();
    //for iterator name click binding tab in the jsf page
    DCIteratorBinding iter = (DCIteratorBinding) bindings.get("Employees1View1Iterator");
    int curIndex = (Integer)valueChangeEvent.getNewValue();
    Row datRow = iter.getRowAtRangeIndex(curIndex);
    String name = (String)datRow.getAttribute("FirstName");
    System.out.println("the new value is"+name);
    RequestContext requestContext = RequestContext.getCurrentInstance();
    requestContext.getPageFlowScope().put("value", name);
    and then i am setting it to the soc2 in backing bean :-
    public void setSoc2(RichSelectOneChoice soc2) {
    this.soc2 = soc2;
    RequestContext requestContext = RequestContext.getCurrentInstance();
    String val = requestContext.getPageFlowScope().get("value").toString();
    this.soc2.setValue(val);
    In this error i can predict that it is not able to find the 'Navn' in the list of soc2 because in the list it has employeeId which has corresponding value as name of that employee but how do i set the value in soc2 then.
    *<SimpleSelectOneRenderer> <_getSelectedIndex> Could not find selected item matching value "Navn" in RichSelectOneChoice[UIXEditableFacesBeanImpl, id=soc2]*
    Any ideas??
    Thanks

  • How to set the default values of the field of the context.

    Hi Experts ,
    I want to set the default value of the field of the context.
    Where and how this declaration should be done.
    Thanks in Advance.

    In the context tab of the view. Select the attribute for which you want to set the default value.it will show the properties at the bottom. set the Default value property to the value which you want to set as the default value.
    Regards
    Naresh

  • How to pass the return value?

    when i call another procedure in a different vi file(xxx.sql), how am i going to pass the return value that the end user key in?
    how to Promt the message and accept the value that keyed in?
    Please help...
    this is urgent!
    Thank you.

    Use OUT paramter to pass values from called procedure.
    You can pass the values as IN / IN OUT / OUT
    parameters.
    For sample coding please mail
    null

Maybe you are looking for