Cannot bind matrix columns

Hello,
I try to show a matrix in a system form (the sales opportunities) in a new folder that i've created. The program just crash when i bind the DBDataSource to the Column... Any idea ?
            oDBDataSource = oForm.DataSources.DBDataSources.Add("OOPR");
            oItem = oForm.Items.Add("Matrix1", SAPbouiCOM.BoFormItemTypes.it_MATRIX);
            oItem.Left = 10;
            oItem.Top = 160;
            oItem.Width = 430;
            oItem.Height = 150;
            oItem.FromPane = 9;
            oItem.ToPane = 9;
            oMatrix = ((SAPbouiCOM.Matrix)(oItem.Specific));
            oColumns = oMatrix.Columns;
            oColumn = oColumns.Add("Code", SAPbouiCOM.BoFormItemTypes.it_EDIT);
            oColumn.TitleObject.Caption = "Code";
            oColumn.Width = 40;
            oColumn.Editable = true;
            oColumn.DataBind.SetBound(true, "OOPR", "CardCode");
The last instruction crash the program.

Hi Lee,
here is snippet of code how i band hope it works for u,
Dim MyUsrDs1 As SAPbouiCOM.UserDataSource
Dim MyDbDs1 As SAPbouiCOM.DBDataSource
MyUsrDs1 = MyForm.DataSources.UserDataSources.Add("Check", SAPbouiCOM.BoDataType.dt_SHORT_TEXT)
MyMatrix.Columns.Item("Col3").DataBind.SetBound(True, "", "Check")
MyDbDs1 = MyForm.DataSources.DBDataSources.Add("OCRD")
MyDbDs1.Query(SQL)
MyMatrix.LoadFromDataSource()

Similar Messages

  • Check box in matrix column bind correctly but doesn't appear check sign

    Dear Sirs,
    I have a check box in a matrix column (the matrix is placed i an extra folder in the item master data form).
    The column is bound to a DBDataSource related to the user defined table @IIT_ITM1 as reported in the following code. The table field bound to the check box column is alphanumeric of size 1.
    I use the following code:
                    oCln = oMtx.Columns.Add("Per_coll", SAPbouiCOM.BoFormItemTypes.it_CHECK_BOX);
                    oCln.DisplayDesc = true;
                    oCln.Description = "For test";
                    oCln.TitleObject.Caption = "For test";
                    oCln.ValOn = "Y";
                    oCln.ValOff = "N";
                    oCln.Width = 60;
                    oCln.DataBind.SetBound(true, "@IIT_ITM1", "U_IIT_PerColl");
                    oCln.Editable = true;
    The problem is: the binding to the database work (if I click on the check box and save the data, then the database content change accordingly) but I CANNOT LET THE USER SIGN APPEAR on the check box control!
    Does anyone have the solution?
    Thank you for help
    Massimo

    No response from the forum

  • SSRS 2008R2 : Not able to use Previous aggregrate function in matrix columns cell

    Hi Expert,
    I have used a matrix tablix in my report. It is working fine. But when I am trying to use Previous aggregrate in one matrix column cell I get the below error:
    The use of previous aggregrate function ia a tablix cell with in 'Tablix1' is not supported.
    Please help me regarding that.
    Thanks Rana

    Hi Rana,
    In your scenario, you use previous function in the “Data” cell, right? Previous function cannot be used in the overlapping parts of row group and column group. One workaround of this issue is use custom code to get the previous value.
    Public Shared previous as Integer
    Public Shared current as Integer
      Public Shared Function GetCurrent(Item as Integer) as Integer
         previous=current
         current=Item
         return current
      End Function
      Public Shared Function GetPrevious()
         return previous
      End Function
    Then you can use the expression below in the “Data” cell to get the previous value:
    =Code.GetCurrent(fields!Score.Value) & "-Previous-" & iif(Code.GetPrevious()=0,"",Code.GetPrevious())
    If you have any questions, please feel free to ask.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Length of Uniqueid for matrix Column

    There appears to be an inconsistency in the length of the UniqueID that can be used for a matrix column.
    For an Addon in 2005 I have UDFs whose name is 12 characters long (including the U_), when appearing in matrix on a system form the system uses the UDF name for the columnID.
    However if I try to do the same thing when adding a column to a matrix on a user form I get error -7013 'The string value entered is too long; it should be less than 10 characters  [66000-14]'.
    Mirroring the UDF name as the column Id allows me to have generic code with out the need to jump through hoops to aling columns and field names.
    Is this a known issue for which there is a fix available?

    Hi Graham,
    It's a known issue but I'm not sure if a fix will be provided (it's a 'by design' feature and not a bug). I tested this in SBO 2007A and you still cannot have a matrix column in a user-defined form with a unique id of more than 10 chars.
    Unfortunately, you'll need to code a workaround or reduce your UDF sizes to 10 characters.
    Also, if you haven't already done so, I'd recommend you create a suggestion on the development collaboration forum:
    /community [original link is broken]
    Kind Regards,
    Owen

  • How to show image in matrix by selecting matrix column type as "it_PICTURE"

    Hi All!
    Can i show image in matrix, by selecting matrix column type as "it_PICTURE". If yes please write the steps.
    Thanks & Regards
    Surojit

    Hi
    First you have to set the matrix column type as it_PICTURE then bind that column to a userdatasource or dbdatasource. In the following code I am using userdatasource . This code will   set the picture to a sepecified columns first row. Please create small image and paste it in your c drive (15X15 size image-- "c:\pic.png")
    Dim oColumn As SAPbouiCOM.Column
                Dim mtxDisp As SAPbouiCOM.Matrix = form.Items.Item("mtxDisp").Specific
                form.DataSources.UserDataSources.Add("udsPic", BoDataType.dt_SHORT_TEXT, 254)
                oColumn = mtxDisp.Columns.Item("colPic")
                oColumn.DataBind.SetBound(True, "", "udsPic")
                mtxDisp.AddRow()
                mtxDisp.GetLineData(1) '*Loads UserDataSources from line X*'
                mtxDisp.DataSources.UserDataSources("udsPic").ValueEx = "c:\pic.png"
                mtxDisp.SetLineData(1) '*Sets Matrix line X based on current UserDataSource values*'
    Hope this helps
    Regards
    Arun

  • Problem with Matrix columns of type Float

    Hi all!
    I need to show in a matrix column a quantity with the number of decimal set in SBO. My code is:
    Dim dt As SAPbouiCOM.DataTable = oFrm.DataSources.DataTables.Add("PCKG")
    dt.Columns.Add("clQta", SAPbouiCOM.BoFieldsType.ft_Float, 30)
    oCl = oGrid.Columns.Add("clQta", SAPbouiCOM.BoFormItemTypes.it_EDIT)
    oCl.Width = 100
    oCl.TitleObject.Caption = tr.getTranslation("clQta") '"Quantità"
    oCl.DataBind.Bind("PCKG", "clQta")
    In this way the number of decimal that i see is 2 because the field type is Float, but in SBO parameterization i have set 4 decimal and would like to see the same number of decimal set in SBO parameterization.
    How can I do?
    Thanks

    Hi,
    If i know well, this is now a limitation of B12007 version. in 8.8 this problem will be resolved.
    othwewise of you set all the prices, Quantities, Sumarizes to 4 it will display for. I think it is now displaying the Quantity settings. (float)
    Regards,
    J.
    Edited by: János Nagy on Oct 7, 2009 12:50 PM

  • Binnding matrix column with dbdatasource column

    Hi experts,
    Iam using a matrix to list the sales employeess...(similar to that of SalesEmployee master form ), iam bindng my columns with dbdatasource columns,
    so when i bind a column with dbdatasource column of type numeric(19.6), default value of 0.00000 is getting displayed in the column, so how can i prevent displaying 0.00000 .
    I want to only display the value if it is >0.
    Regards,
    RejishRajan.T.N

    HI,
    It is easy. if The cell type is Edit then you can control of the Supperssing Zeros.
    Sample: (i know you have it already)
    To do:
    1. Create matrix add column type it_edit
    2. load data
    3. Set supresszeros to true of the cell !
            oColumn = oColumns.Add("QTY", SAPbouiCOM.BoFormItemTypes.it_EDIT)
            oColumn.TitleObject.Caption = "QTY"
            oColumn.Width = 40
            oColumn.Editable = True
            oColumn.DataBind.SetBound(True, "", "QTY")
           'load data
           For i As Integer = 1 To oMatrix.RowCount
                Dim oEditText As SAPbouiCOM.EditText = oMatrix.Columns.Item("QTY").Cells.Item(i).Specific
                oEditText.SuppressZeros = True
            Next
    regards,
    J.

  • Re:Picture in Matrix column

    Hi,
    I have Created a Matrix.I want to set a button like picture in one of the column in the matrix.How to achieve this.
    Thanx in advance
    Mohana

    Hi Petr,
    I have used the following code for loading the image in the matrix column.my problem is, no image is loading on the column.How should i achieve this
    Dim odbtable As SAPbouiCOM.DataTable
    Dim sql As String
    odbtable = oForm.DataSources.DataTables.Add("VEP")
    sql = "SELECT u_path from [@skil_attach]"
    odbtable.ExecuteQuery(sql)
    oInspecCol = oColumns.Item("Inspec")
    oInspecCol.Editable = False
    oInspecCol.DataBind.Bind("VEP","U_Path")
    I have created the table as skil_attach and i added a field as path with alphanumeric - 254
    Thanx in advance
    Mohana

  • BLOB & CMP EJB - Cannot bind stream to a ScrollableResultSet

    Hi,
    I am trying to bind a byte[] to a Blob column in CMP EJB using Oracle 10g OCI driver in WebSphere. This gives the below error.
    java.sql.SQLException: Cannot bind stream to a ScrollableResultSet or UpdatableResultSetDSRA0010E: SQL State = null, Error Code = 17,169
         at com.ibm.ejs.container.LocalExceptionMappingStrategy.mapException(LocalExceptionMappingStrategy.java:195)
         at com.ibm.ejs.container.LocalExceptionMappingStrategy.setUncheckedException(LocalExceptionMappingStrategy.java:266)
         at com.ibm.ejs.container.EJSDeployedSupport.setUncheckedLocalException(EJSDeployedSupport.java:318)
    Thanks

    When you create a DataSource, use the below class in the field 'Data Source helper classs name'. This should solve the issue.
    import java.util.Properties;
    import javax.resource.ResourceException;
    import com.ibm.websphere.appprofile.accessintent.AccessIntent;
    public class OracleDataStoreHelper extends com.ibm.websphere.rsadapter.OracleDataStoreHelper {
         public OracleDataStoreHelper(Properties props) {
              super(props);
         public int getResultSetConcurrency(AccessIntent intent)     throws ResourceException {
              return java.sql.ResultSet.CONCUR_READ_ONLY;
    }

  • How to save data for Binded Matrix  in Sqlserver200(DB)

    hai all,
    i  created a Form by using Udo form generator.
    in that i bind the matrix with Userdatsources. its successfully binded to the matrix. but when i press "Add" Button the Sqlserver tables are not saved.
    if i enter values manually without binding the udo matrix, all rows are getting saved in sqlserver successfully.
    plz help me how to save the rows in the binded matrix to the tables in Sqlserver.
    Regards,
    Nagababu.

    Since you are using UserDataSources, you have to construct a function that loops through the columns, and by name and or alias you construct the INSERT and/or UPDATE query (assuming the destination table is User Defined).
    Check out this link
    Re: Matrix Processing
    Hope it helps

  • ContextException : cannot bind or add element

    Hi all,
    I can't find an answer to my problem.
    Hope you'll be able to
    Here are the facts :
    Context :
    I'm currently creating a TeamViewer for Managers to be able to select the employees they manage.
    For that, I have a table which lists them all, displaying their infos in specific columns.
    Both columns and data are dynamic and are specified in the SAP back end.
    I use the following bapis to get these informations :
    - HRWPC_RFC_GET_COL_INFO (returns columns informations)
    - HRWPC_RFC_GET_OBJECTS (returns employees personal numbers -> pernr)
    Fact is the second one doesn't return as much informations as needed.
    So I have then to call a third bapi :
    - MYBAPI_USER_INFOS (return informations about an employee)
    which, from an employee pernr, returns a lot more informations about him.
    Fact is I manage to use efficiently both first bapis, so I get columns and pernr data.
    Then I would like to get in a context node the list of enhanced informations of the employees, which is mapped to my view context and applied to a dynamic table.
    My problem :
    While adding programmaticaly the columns to my context node, I get the following exception : "com.sap.tc.webdynpro.progmodel.context.ContextException: Node(TeamViewerApp.MainViewColumns): cannot bind or add element, because it is already bound to a node" error.
    Error summary :
    - com.sap.tc.webdynpro.progmodel.context.ContextException: Node(TeamViewerApp.MainViewColumns): cannot bind or add element, because it is already bound to a node
    -- at com.sap.tc.webdynpro.progmodel.context.Node.prepareAddElement(Node.java:649)
    -- at com.sap.tc.webdynpro.progmodel.context.Node.addElement(Node.java:635)
    -- at com.airfrance.tv1.teamviewer.components.TeamViewerApp.updateMainView(*TeamViewerApp.java:560*)
    -- at com.airfrance.tv1.teamviewer.components.wdp.InternalTeamViewerApp.updateMainView(InternalTeamViewerApp.java:534)
    -- at com.airfrance.tv1.teamviewer.components.views.TeamViewerView.onActionChangeView(TeamViewerView.java:197)
    TeamViewerComp code :
         wdThis.getColumnsMainView(viewId, userLanguage, userId); // get the columns infos
         IGetColumns_ResultNode columns = wdContext.nodeGetColumns_Result();
         for(int i=0; i<columns.size(); i++) {
              IWDNodeElement column = columns.getElementAt(i); // get the #i column
              wdContext.nodeMainViewColumns().addElement(column);  +//add this column to my other context +
    My context :
    Component
    - GetColumns (Model)
    -- GetColumns_Output
    --- GetColumns_Result
    Colname
    Heading
    -- Langu
    -- Uname
    -- Viewid
    - MainViewColumns (Value)
    -- lot of infos
    - SubViewColumns (Value)
    -- lot of infos
    My environment :
    - os : Windows XP SP2
    - procesor : 3GHz
    - memory : 3Gb
    - ide : SAP NWDS 7.0.12
    - server JEE : 7.00 SP12
    - server VM : Java Sun 1.4.2_12
    Any help will be really appreciated
    Thank you for your time!
    Alphonse

    HI,
    com.sap.tc.webdynpro.progmodel.context.ContextException: Node(HrChiefRedressalView.Ctx_FilteredOutput): cannot bind or add element, because it is already bound to a node
    Try to bind or add element from the source of the node instead of mapped one.
    Ex:
    Controller->View
    If your node is mapped from controller to view. bind/add element should be done at controller level not at view level.
    Regards
    Ayyapparaj

  • How to Calculate Line items Total of Matrix Column

    hai experts,
                  Im facing a problem like
                   1. i have a matrix with a column Labour Costs in that im taking some cost.
                   2. in footer a have a Edit Text like Total Labour Cost
                   3 when i enter amount in matrix column it sholud disply that value in total labour cost and when we add new row ,labour cost it should add to 'total labour cost' in footer.Like Invoice Documents.

    Where do you want to implement this like sapscript / smartforms or adobe forms? please specify.

  • How to set default value in matrix column

    Hi all,
    Does any one know how to set a default value in matrix column ?. I just want , when an event right click and add row. so i set a default value in a column field for example 'Test'. FYI the matrix is in the UDO.
    so my code will be like this
    If pVal.ItemUID = "Matrix" And pVal.MenuUID = "1292" Then
                        Try
                            Dim oColumn As SAPbouiCOM.EditTextColumn
                            Dim matrix As SAPbouiCOM.Matrix
                            matrix = oForm.Items.Item("Matrix").Specific
                           oColumn = mat.Columns.Item("Code").specific
                            oColumn.Value = "Test"
                        Catch ex As Exception
                            Debug.Print(ex.Message)
                            Debug.Print(ex.ToString)
                        End Try
                    End If
    I have run it and when i right click and add row it still can not set the default value in one of the matrx column.
    does any one know how to solve it. thanks in advance

    Hi Bodhi
    Sandeep is right you can set value using SetValue() function
    If pVal.ItemUID = "Matrix" And pVal.MenuUID = "1292" Then
                        Try
                            Dim matrix As SAPbouiCOM.Matrix= oForm.Items.Item("Matrix").Specific
                            oForm.DataSources.DBDataSources.Item("UDT").Clear()
                            matrix .AddRow()
                            matrix .FlushToDataSource()
                            With form.DataSources.DBDataSources.Item("UDT") 
                                    .SetValue("UDF", matrix .RowCount - 1, "Test")
                            End With
                            matrix .LoadFromDataSource()
                        Catch ex As Exception
                            Debug.Print(ex.Message)
                            Debug.Print(ex.ToString)
                        End Try
    End If

  • ORA-12032: cannot use rowid column

    Hi,
    on 8.1.7 I have the following error :
    ORA-12032: cannot use rowid column from materialized view log on "string"."string"
    The solution is :
    Action: A complete refresh is required before the next fast refresh. Add ROWID columns to the materialized view log, if required.
    How can I do a complete refresh before the next fast refresh or Add ROWID columns ? How to know if Add ROWID columns is required ?
    Thank you.
    PS :
    my script is :
    START WITH TO_DATE('06-jul-2010 17:57:48','dd-mon-yyyy hh24:mi:ss')
    NEXT SYSDATE+1/24

    user522961 wrote:
    Hi,
    on 8.1.7 I have the following error :
    ORA-12032: cannot use rowid column from materialized view log on "string"."string"
    The solution is :
    Action: A complete refresh is required before the next fast refresh. Add ROWID columns to the materialized view log, if required.
    How can I do a complete refresh before the next fast refresh or Add ROWID columns ? How to know if Add ROWID columns is required ?
    Thank you.run above
    EXECUTE DBMS_MVIEW.REFRESH('MV_NAME','C');

  • Mail landscape view in ipad, cannot suppress the column listing

    I want to use landscape view To read email...but I cannot suppress the column listing my messages. In portrait that column is missing so I can see whole message.
    What do I do?

    There is nothing that you can do. That is a feature of landscape viewing of mail.
    Glor

Maybe you are looking for