This of course begs the question then how does one assign a during an operation like this: DECLARE @ShipNotInv AS NUMERIC (14,5)SELECT sorels.identity_column, SOMAST.FSONO AS SO#, SOMAST.FSOREV AS REV, SOITEM.FPRODCL AS PROD_CLASS, SOMAST.FCOMPANY AS COMPANY, SOMAST.FCUSTNO AS CUST#, SORELS.FDUEDATE AS DUEDATE, SORELS.FORDERQTY AS ORDER_QTY, SOITEM.FINUMBER AS SO_ITEM#, SORELS.FRELEASE AS RELEASE, SORELS.FPARTNO AS PART#, SORELS.FPARTREV AS PART_REV, sorels.fsono, sorels.fenumber, sorels.frelease, ( SORELS.forderqty - SORELS.finvqty - ( CASE WHEN ( ( SORELS.fshipbook + SORELS.fshipbuy + sorels.fshipmake ) - sorels.finvqty ) <= 0 OR COALESCE(DBO.GETSHIPPEDNOTINVOICEDQTY(sorels.fsono + sorels.finumber + sorels.frelease), 0) <= 0 THEN 0 WHEN ( SORELS.fshipbook + SORELS.fshipbuy + sorels.fshipmake ) - sorels.finvqty < COALESCE(DBO.GETSHIPPEDNOTINVOICEDQTY(sorels.fsono + sorels.finumber + sorels.frelease), 0) THEN ( SORELS.fshipbook + SORELS.fshipbuy + sorels.fshipmake - sorels.finvqty ) ELSE COALESCE(DBO.GETSHIPPEDNOTINVOICEDQTY(sorels.fsono + sorels.finumber + sorels.frelease), 0) END ) ) * SORELS.funetprice AS FNBOAMT FROM SORELS JOIN SOMAST ON SOMAST.FSONO = SORELS.FSONO JOIN SOITEM ON SOITEM.FSONO = SORELS.FSONO AND SOITEM.FINUMBER = SORELS.FINUMBER WHERE SOMAST.FSTATUS = 'OPEN' AND FMASTERREL = 0 AND somast.forderdate >= CONVERT(DATETIME, '01/01/2000')
@ShipNotInv would = COALESCE(DBO.GETSHIPPEDNOTINVOICEDQTY(sorels.fsono + sorels.finumber + sorels.frelease),0)