api.pricelistItem()

The method api.pricelistItem() has been deprecated in 14.0 version.

Deprecated Usage

Groovy
def resultPrice = api.pricelistItem("Global Pricelist")
def cost = api.pricelistItem("Global Pricelist", "Cost")

QueryApi Usage

  1. Utilize a query of Condition Records to determine the approved price instead of querying each Price List line item.

  2. Execute a single query for the entire set of SKUs, rather than performing individual queries for each SKU.

Groovy
def skus = ["10000001"]
def targetDate = api.targetDate()

def qapi = api.queryApi()
def exprs = qapi.exprs()

def t1 = qapi.tables().conditionRecords("Global Pricelist")

def globalPrices = qapi.source(t1, [t1.sku, t1.conditionValue().as("ResultPrice"), t1.unitOfMeasure()],
        exprs.and(
                t1.sku.in(skus),
                t1.validFrom().lessOrEqual(targetDate),
                t1.validTo().greaterOrEqual(targetDate),
        ))
        .stream {
            it.each { pli ->
                def resultPrice = pli.ResultPrice
                def cost = pli.Cost
            }
        }

See Also