Skip to Content
0

Cancelar un documento por SDK

Apr 04 at 08:30 PM

46

avatar image
Former Member

Buen dia
Se esta intentando cancelar una solicitud de compra por medio de SDK, despues de darle buscar ingresar los parametros y dar click en el boton buscar se necesita cancelar el documento pero al intentar hacerlo sale error, utilice el codigo=

SBO_Application.ActivateMenuItem("39724") 'Activa Solicitud de compra Dim oForm As SAPbouiCOM.Form = SBO_Application.Forms.ActiveForm SBO_Application.ActivateMenuItem("1281") 'Activa Buscar oItem = oForm.Items.Item("88") 'Campo de serie de numeración oCombob = oItem.Specific oCombob.Select("62", SAPbouiCOM.BoSearchKey.psk_ByValue) 'Ingresa el valor de la serie oItem = oForm.Items.Item("8") 'Campo numero de documento oText = oItem.Specific oText.String = "1" 'Ingresa el valor de numero de documento oItem = oForm.Items.Item("540002106") 'Campo fecha creacion, necesario por busqueda formateada oText = oItem.Specific oText.String = "27/12/2017" 'ingresa el valor del campo segun el numero de documento oForm.Items.Item("1").Click(SAPbouiCOM.BoCellClickType.ct_Regular) 'Click al boton buscar

SBO_Application.ActivateMenuItem("1286") 'Activa Cerrar

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Best Answer
Johan Hakkesteegt Apr 05 at 05:31 AM
1

Hola Marlon,

Para buscar y cancelar un documento, debe usar la DI API, es mucho más fácil, más preciso y permite una reutilización de código más sencilla si alguna vez desea aplicar la lógica a otros tipos de documentos.

Sin saber cuál es el error, es difícil saber qué ocurre con este código. Una conjetura descabellada sería que el documento que está intentando cancelar se ha copiado al menos parcialmente en un documento de destino.

Saludos,

Johan

Show 3 Share
10 |10000 characters needed characters left characters exceeded
Former Member

Muchas Gracias Johan
Me pondre a investigar muy bien la DI API, para hacer dicho proceso

0
Former Member

Estoy realizando el ejercicio con DI API tal y como dijiste pero no entiendo como debo tomar el documento el cual voy a cerrar.

0

Hola Marlon,

Consulte la documentación del SDK para obtener más detalles y ejemplos, pero deberá usar el método oDocument.GetByKey(DocEntry) para ver si el documento existe y luego acceder a él.

Si ese método devuelve verdadero, puede usar el método oDocument.Close() para cerrar el documento. Opcionalmente, podría agregar un comentario con la propiedad oDocument.Comments. Tendrá que encontrar el DocEntry del documento que desea cerrar, utilizando una consulta. Puede usar un objeto DataReader (.net) o puede usar el objeto RecordSet de la DI API.

Saludos,

Johan

0