cancel
Showing results for 
Search instead for 
Did you mean: 

Como llamar un Formulario del Sistema desde un botón dentro otro formulario desarrollado mediante UI API (SDK)

former_member183397
Participant
0 Kudos

Hola a todos.

Tengo un Formulario desarrollado mediante UI API (SDK) en Vb.net, necesito que al pulsar un botón, este abra un formulario del sistema (Por ejemplo Pedido) o alguna ventana definida por el usuario (Tabla definida por el usuario).

He intentado con esto en el evento click del botón:

Private Sub Button6_ClickBefore(sboObject As System.Object, pVal As SAPbouiCOM.SBOItemEventArg, ByRef BubbleEvent As System.Boolean) Handles Button6.ClickBefore

            Dim f1 As SAPbouiCOM.Form

            Dim f2 As SAPbouiCOM.Form

            f1= Application.SBO_Application.Forms.GetForm("139", 0) ' System Form

            f1.Select()

            f2= Application.SBO_Application.Forms.GetForm("11018", 0) 'Ventana Definida por el Usuario

            f2.Select()

       

End Sub

En cualquier caso me emite el error de ""Form - Not found  [66000-9]"

¿Cual seria la forma correcta de hacerlo?

Saludos y Muchas Gracias

Accepted Solutions (1)

Accepted Solutions (1)

felipe_loyolarodriguez
Active Contributor
0 Kudos

Buenos días

Los formularios se llaman de la siguiente manera, ejemplo en c#

       SAPbouiCOM.BoFormObjectEnum FormType;
        SAPbouiCOM.Form oSForm;

        string strUDOObjectType = "";
        string strObjectKey = "";
      
        //Socios de negocios
        FormType = SAPbouiCOM.BoFormObjectEnum.fo_BusinessPartner;

        oSForm = Application.SBO_Application.OpenForm(FormType,strUDOObjectType,strObjectKey);

La variable "strObjectKey" es por si deseas que se abra con algún dato ya precargado (un cliente o proveedor en este caso).

La variable "strUDOObjectType" es para levantar el formulario de un UDO en vez de un formulario del sistema.

Saludos

former_member183397
Participant
0 Kudos

Gracias por la respuesta Felipe.

He logrado abrir los Formularios del Sistema de esta manera:

Application.SBO_Application.OpenForm(SAPbouiCOM.BoFormObjectEnum.fo_ProjectCodes, "", oCompany.GetNewObjectKey)

Pero no he logrado hacerlo con un UDO, he intentado esto:

     Application.SBO_Application.OpenForm(SAPbouiCOM.BoFormObjectEnum.fo_UserDefinedObject, "ZHFPM", oCompany.GetNewObjectKey)

     Donde "ZHFPM" es la Tabla definida por el Usuario (Que se puede acceder por Herramientas -> Ventanas definidas por el Usuario)

¿Alguna sugerencia?

felipe_loyolarodriguez
Active Contributor
0 Kudos

No es el nombre de la tabla, es el nombre con el que registraste el UDO.


Atte.

Answers (0)