Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

How to navigate matrix


I have this problem,

I created a matrix in screen painter with 2 column with the unique ID(V_0and V_1) and set the data bound to true. I also set the table as (@SIT1) and to the column (U_Code and U_Desc). This is UDO Master Data Lines

When tried navigating using the arrows, the matrix table does not refresh only the UDO Master Data is able to navigate.

How do i bind the master data lines to navigate when the master data is changed for example the docNum? Can anyone help me by providing me some sample source code on how to navigate the master data lines?

Thank you

Former Member
Former Member replied


i have also a piece of Code how to define ChildTables for UDOs. I am using this code for installing Udos. Hope this helps.

    Public Sub addUDO(ByVal oCanCancel As SAPbobsCOM.BoYesNoEnum, ByVal oCanClose As SAPbobsCOM.BoYesNoEnum, _
    ByVal oCanCreateDefaultForm As SAPbobsCOM.BoYesNoEnum, ByVal oCanDelete As SAPbobsCOM.BoYesNoEnum, _
    ByVal oCanFind As SAPbobsCOM.BoYesNoEnum, ByVal oCanLog As SAPbobsCOM.BoYesNoEnum, _
    ByVal oCanTransfer As SAPbobsCOM.BoYesNoEnum, ByVal oManageSeries As SAPbobsCOM.BoYesNoEnum, _
    ByVal oObjectType As SAPbobsCOM.BoUDOObjType, ByVal strUID As String, ByVal strName As String, _
    ByVal strTableName As String, ByVal alSubTables As ArrayList, ByVal alSearchColums As ArrayList, _
    ByVal oCompany As SAPbobsCOM.Company)

        Dim oUserObjectMD As SAPbobsCOM.UserObjectsMD
        Dim iReturnCode As Integer
        Dim strErrMsg As String
        strErrMsg = ""
        oUserObjectMD = CType(oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oUserObjectsMD), SAPbobsCOM.UserObjectsMD)

        oUserObjectMD.CanCancel = oCanCancel
        oUserObjectMD.CanClose = oCanClose
        oUserObjectMD.CanCreateDefaultForm = oCanCreateDefaultForm
        oUserObjectMD.CanDelete = oCanDelete
        oUserObjectMD.CanFind = oCanFind
        oUserObjectMD.CanLog = oCanLog
        oUserObjectMD.CanYearTransfer = oCanTransfer
        oUserObjectMD.ManageSeries = oManageSeries
        oUserObjectMD.Code = strUID
        oUserObjectMD.Name = strName
        oUserObjectMD.TableName = strTableName
        oUserObjectMD.ObjectType = oObjectType
        If Not alSubTables Is Nothing Then
            For Each strSubTableName As String In alSubTables
                oUserObjectMD.ChildTables.TableName = strSubTableName
        End If

        If oCanFind = SAPbobsCOM.BoYesNoEnum.tYES Then
            If Not alSearchColums Is Nothing Then
                For Each strSeachColumn As String In alSearchColums
                    oUserObjectMD.FindColumns.ColumnAlias = strSeachColumn
            End If

        End If

        iReturnCode = oUserObjectMD.Add()

        '// check for errors in the process
        If iReturnCode <> 0 Then
            If iReturnCode = -1 Then
                oCompany.GetLastError(iReturnCode, strErrMsg)
            End If
            MsgBox("UDO: " & oUserObjectMD.Name & " was added successfully")
        End If

        oUserObjectMD = Nothing
        GC.Collect()        'Release the handle to the table
    End Sub

0 View this answer in context
Not what you were looking for? View more on this topic or Ask a question