Error Ya se agregó un elemento con la misma clave.


#1

Buenas Expertos

Haciendo un Add-on me marca el siguiente error Ya se agregó un elemento con la misma clave. ando programando en Visual studio 2013 es en la siguiente parte del código

Try
                Dim oApp As Application
                If (args.Length < 1) Then
                    oApp = New Application
                Else
                    oApp = New Application(args(0))
                End If

                Dim MyMenu As Menu
                MyMenu = New Menu()
                MyMenu.AddMenuItems()
                AddHandler Application.SBO_Application.AppEvent, AddressOf SBO_Application_AppEvent
                **oApp.Run()**
            Catch ex As Exception
                MsgBox(ex.ToString())
  End Try

me aparece un cuadro de dialogo con ese mensaje que les menciono cuando le doy aceptar inmediatamente se termina de debugiar y no deja continuar si me pueden ayudar se los agradezco

Saludos.


#2

Hola Carlos
Verifica que el UniqueID del menu no se repita.


#3

Pues comente la sección de menú aun así me sigue marcando el mismo error

Sub AddMenuItems()
'Dim oMenus As SAPbouiCOM.Menus
'Dim oMenuItem As SAPbouiCOM.MenuItem
'oMenus = Application.SBO_Application.Menus

        'Dim oCreationPackage As SAPbouiCOM.MenuCreationParams
        'oCreationPackage = (Application.SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_MenuCreationParams))
        'oMenuItem = Application.SBO_Application.Menus.Item("43520") 'Modules

        'oCreationPackage.Type = SAPbouiCOM.BoMenuType.mt_POPUP
        'oCreationPackage.UniqueID = "AddOnAcuerdoCompras"
        'oCreationPackage.String = "AddOnAcuerdoCompras"
        'oCreationPackage.Enabled = True
        'oCreationPackage.Position = -1

        'oMenus = oMenuItem.SubMenus

        Try
            'If the manu already exists this code will fail
            'oMenus.AddEx(oCreationPackage)
        Catch
        End Try


        Try
            ''Get the menu collection of the newly added pop-up item
            'oMenuItem = Application.SBO_Application.Menus.Item("AddOnAcuerdoCompras")
            'oMenus = oMenuItem.SubMenus

            '' ''Create s sub menu
            'oCreationPackage.Type = SAPbouiCOM.BoMenuType.mt_STRING

            ' ''Please replace following 2 "Form1" with real form class in current project
            'oCreationPackage.UniqueID = "AddOnAcuerdoCompras.Form1"
            'oCreationPackage.String = "Form1"
            'oMenus.AddEx(oCreationPackage)
        Catch
            'Menu already exists
            'Application.SBO_Application.SetStatusBarMessage("Menu Already Exists", SAPbouiCOM.BoMessageTime.bmt_Short, True)
        End Try
    End Sub

#4

Hola,
Pregunta: si inicias sesión en SAP…y ejecutas el addon por primera vez…¿te da el error que reportas?
Tal como veo tu codigo… es mas que probable que tu error se reproduce la segunda y posteriores veces que ejecutas el addon


#5

Efectivamente he reiniciado, borrado temporales y ejecutarlo y me marca ese error