Here my code
Public Function SAP_GetItemPriceWithUM(ByVal cardCode As String, ByVal itemCode As String, ByVal amount As Double, ByVal refDate As Date, ByVal currency As String, ByVal PriceListNum As Integer, ByVal UOMEntry As Integer, ByVal UOMEntryQty As Double, ByRef dblPrice As Double, ByRef dblDiscount As Double) As Boolean
Dim params As SAPbobsCOM.ItemPriceParams
Dim rtnParams As ItemPriceReturnParams
Try
params = oSAPB1Addon.oCompany.GetCompanyService.GetDataInterface(CompanyServiceDataInterfaces.csdiItemPriceParams)
params.CardCode = cardCode
params.ItemCode = itemCode
params.UoMEntry = UOMEntry
params.UoMQuantity = amount
'params.InventoryQuantity = amount
params.Currency = currency
params.Date = refDate
params.PriceList = PriceListNum
rtnParams = oSAPB1Addon.oCompany.GetCompanyService.GetDataInterface(CompanyServiceDataInterfaces.csdiItemPriceReturnParams)
rtnParams = oSAPB1Addon.oCompany.GetCompanyService.GetItemPrice(params)
dblPrice = rtnParams.Price
dblDiscount = rtnParams.Discount
Return True
Catch ex As System.Exception
oSAPB1Addon.SBO_Application.MessageBox("[Utility.SAP_GetItemPriceWithUM][EXCEPTION]: " & ex.Message)
Return False
End Try
End Function