USE INVENTORY alter table tbinvpoheader add POUserID varchar(15) set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROCEDURE [dbo].[sp_Inv_SaveEditedPOHeader] @intRecordNumber as int OutPut, @PONumber as varchar(20) OutPut, @SupplierID as varchar(12), @OrderDate smalldatetime, @LocationID as varchar(10), @Requisitioner as varchar(10), @RIVNumber as varchar(20), @RIVDate as smalldatetime, @TotalCost as float, @Remarks as varchar(50), @TermsID as int, @CancelDate as smalldatetime, @Footer as varchar(254), @bitVAT as bit, @bitAccredited as bit, @bitDelivered as bit, @intProcurement as int, @intCurrencyID as int, @Discount as int, @bitEP as bit = 0, @InvoiceNumber as varchar(20) = null, @FixedDiscount as int, @UserID as varchar(15) AS Declare @fltVIP as float; Set @fltVIP = ( Select IsNull(ValueInPeso,0) from tbInvCurrency Where CurrencyID = @intCurrencyID ); Update tbInvPOHeader Set SupplierID = @SupplierID, OrderDate = @OrderDate, LocationID = @LocationID, Requisitioner = @Requisitioner, RIVNumber = @RIVNumber, RIVDate = @RIVDate, TotalCost = @TotalCost, Remarks = @Remarks, TermsID = @TermsID, CancelDate = @CancelDate, Footer = @Footer, isVAT = @bitVAT, isAccredited = @bitAccredited, isDelivered = @bitDelivered, ProcurementID = @intProcurement, CurrencyID = @intCurrencyID, ValueInPeso = @fltVIP, Discount = @Discount, InvoiceNumber = @InvoiceNumber, isEP = @bitEP, FixedDiscount = @FixedDiscount, POUserID = @UserID Where RecordNumber = @intRecordNumber; go ALTER PROCEDURE [dbo].[sp_Inv_SavePOHeader] @intRecordNumber as int OutPut, @PONumber as varchar(20) OutPut, @SupplierID as varchar(12), @OrderDate smalldatetime, @LocationID as varchar(10), @Requisitioner as varchar(10), @RIVNumber as varchar(20), @RIVDate as datetime, @TotalCost as float, @Remarks as varchar(50), @TermsID as int, @CancelDate as smalldatetime, @Footer as varchar(254), @bitVAT as bit, @bitAccredited as bit, @bitDelivered as bit, @intProcurement as int, @intCurrencyID as int, @Discount as int, @isEP as bit = 0, @InvoiceNumber as varchar(10) = null, @EmployeeID as varchar(15) = null, @FixedDiscount as float, @UserID as varchar(15) AS set @IntRecordNumber = '' set @FixedDiscount = '' Declare @intTempRecordNumber as int; Declare @fltVIP as int; Set @fltVIP = ( Select IsNull(ValueInPeso,0) from tbInvCurrency Where CurrencyID = @intCurrencyID ); set @intTempRecordNumber = @intRecordNumber; Set @intRecordNumber = IsNull(( Select Max(IsNull(RecordNumber,0)) + 1 [MaxNumber] from tbInvPOHeader),1); If @intRecordNumber = 0 Begin Set @intRecordNumber = 1; End; if @LocationID = '69' Begin Set @PONumber = IsNull( ( Select Cast(Max(Cast(IsNull(Case When isNumeric(PONumber) = 1 Then PONumber Else Left(PONumber, len(PONumber) - 1) End,0) as int))+1 as varchar(15)) from tbInvPOHeader), 1); Set @PONumber = @PONumber + 'A'; End; else Begin Set @PONumber = IsNull( ( Select Cast(Max(Cast(IsNull(Case When isNumeric(PONumber) = 1 Then PONumber Else Left(PONumber, len(PONumber) - 1) End,0) as int))+1 as varchar(15)) from tbInvPOHeader), 1); Set @PONumber = @PONumber + isnull((Select isnull(POSuffix,'') From tbInvUserSettings Where UserId = @EmployeeID),'') End; Insert into tbInvPOHeader( PONumber, SupplierID, OrderDate, LocationID, Requisitioner, RIVNumber, RIVDate, RecordNumber, TotalCost, Remarks, OrderStatus, TermsID, CancelDate, Footer, isVAT, isAccredited, isDelivered, ProcurementID, CurrencyID, ValueInPeso, Discount, isEP, InvoiceNumber, FixedDiscount, POUserID ) Values( @PONumber, @SupplierID, GetDate(), @LocationID, @Requisitioner, @RIVNumber, @RIVDate, @intRecordNumber, @TotalCost, @Remarks, 'U', @TermsID, @CancelDate, @Footer, @bitVAT, @bitAccredited, @bitDelivered, @intProcurement, @intCurrencyID, @fltVIP, @Discount, @isEP, @InvoiceNumber, @FixedDiscount, @UserID ); Update tbInvPOFree Set PORecordNumber = @intRecordNumber, PONumber = @PONumber Where PORecordNumber = 0 and PONumber = 'New'; go set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROCEDURE [dbo].[sp_Inv_SavePOHeader_POEntered] @intRecordNumber as int OutPut, @PONumber as varchar(20) OutPut, @SupplierID as varchar(12), @OrderDate smalldatetime, @LocationID as varchar(10), @Requisitioner as varchar(20), @RIVNumber as varchar(20), @RIVDate as datetime, @TotalCost as float, @Remarks as varchar(50), @TermsID as int, @CancelDate as smalldatetime, @Footer as varchar(254), @bitVAT as bit, @bitAccredited as bit, @bitDelivered as bit, @intProcurement as int, @intCurrencyID as int, @Discount as int, @isEP as bit = 0, @InvoiceNumber as varchar(10) = null, @FixedDiscount as int, @UserID as varchar(15) AS Declare @intTempRecordNumber as int; Declare @fltVIP as float; Set @fltVIP = ( Select IsNull(ValueInPeso,0) from tbInvCurrency Where CurrencyID = @intCurrencyID ); set @intTempRecordNumber = @intRecordNumber; Set @intRecordNumber = IsNull(( Select Max(IsNull(RecordNumber,0)) + 1 [MaxNumber] from tbInvPOHeader),1); If @intRecordNumber = 0 Begin Set @intRecordNumber = 1; End; Insert into tbInvPOHeader( PONumber, SupplierID, OrderDate, LocationID, Requisitioner, RIVNumber, RIVDate, RecordNumber, TotalCost, Remarks, OrderStatus, TermsID, CancelDate, Footer, isVAT, isAccredited, isDelivered, ProcurementID, CurrencyID, ValueInPeso, Discount, isEP, InvoiceNumber, FixedDiscount, POUserID ) Values( @PONumber, @SupplierID, GetDate(), @LocationID, @Requisitioner, @RIVNumber, @RIVDate, @intRecordNumber, @TotalCost, @Remarks, 'U', @TermsID, @CancelDate, @Footer, @bitVAT, @bitAccredited, @bitDelivered, @intProcurement, @intCurrencyID, @fltVIP, @Discount, @isEP, @InvoiceNumber, @FixedDiscount, @UserID ); Update tbInvPOFree Set PORecordNumber = @intRecordNumber Where PONumber = @PONumber and PORecordNumber = 0; go ALTER PROCEDURE [dbo].[sp_Inv_StockCardList] @LocationID as varchar(10), @ItemID as varchar(10), @StartDate as varchar(10), @EndDate as varchar(10) AS --set @locationid = '21' --set @itemid = '5467' --set @startdate = '10/01/2007' --set @enddate = '02/11/2008' Select A.TransDate As "Date", A.SummaryCode + Case When isnull(A.isADS,0) = 1 Then '-ADS' else '' End as "Account", A.HospNum as "Hosp.#", A.IDNum as "Adm #", A.RefNum as "Ref. #", Case A.SummaryCode When 'AD' then 'Adjustment' When 'RS' then 'Return to ' + C.SupplierName When 'WD' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'To - ' + B.Location When 'RT' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'From - ' + B.Location When 'PU' then C.SupplierName When 'CM' then 'Credit Memo' Else '' End as [Trans.Description], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('WD','RS','PH','CS') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then A.Quantity Else '' End End as Decimal(12)) [IN], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('WD','RS','PH','CS') Then A.Quantity Else '' End End as Decimal(12)) [OUT], Cast(A.Balance as Decimal(12)) [Balance], Case When SummaryCode in ('PU','RS','WS','RT') Then convert(VarChar(15),isnull(A.NetCost,0)) Else '' End AS [Net Cost], Convert(VarChar(10), A.Consumption_Date,101) As Expiration, A.LotNumber, A.Packing, Case when left(A.RefNum, 2) = 'OR' then IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = D.UserID ), '') Else IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = A.UserID ), '') End as [User], (Select top 1 RRNumber from tbInvRRheader Where transnum = A.RefNum) [RR #], (Select top 1 PostingDate from tbInvWithdrawHeader Where TransNum = A.RefNum) [Posting Date] from tbInvStockCard A Left Outer Join tbInvLocation B ON A.TargetLocationID = B.LocationID Left Outer Join tbinvSupplier C ON A.TargetLocationID = C.SupplierID left outer join billing..tbcashassessment D on A.RefNum = D.ORNumber and A.ItemID = D.ItemID WHERE A.LocationID = @LocationID and A.ItemID = @ItemID And A.TransDate Between @StartDate and @EndDate + ' 23:59:59.99' --ORDER BY A.Transdate Desc Union All Select A.TransDate As "Date", A.SummaryCode + Case When isnull(A.isADS,0) = 1 Then '-ADS' else '' End as "Account", A.HospNum as "Hosp.#", A.IDNum as "Adm #", A.RefNum as "Ref. #", Case A.SummaryCode When 'AD' then 'Adjustment' When 'RS' then 'Return to ' + C.SupplierName When 'WD' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'To - ' + B.Location When 'RT' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'From - ' + B.Location When 'PU' then C.SupplierName When 'CM' then 'Credit Memo' Else '' End as [Trans.Description], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('WD','RS','PH','CS') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then A.Quantity Else '' End End as Decimal(12)) [IN], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('WD','RS','PH','CS') Then A.Quantity Else '' End End as Decimal(12)) [OUT], Cast(A.Balance as Decimal(12)) [Balance], Case When SummaryCode in ('PU','RS','WS','RT') Then convert(VarChar(15),isnull(A.NetCost,0)) Else '' End AS [Net Cost], Convert(VarChar(10), A.Consumption_Date,101) As Expiration, A.LotNumber, A.Packing, IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = A.UserID ), '') [User], (Select top 1 RRNumber from tbInvRRheader Where transnum = A.RefNum) [RR #], (Select top 1 PostingDate from tbInvWithdrawHeader Where TransNum = A.RefNum) [Posting Date] from History..tbPassInvStock A Left Outer Join tbInvLocation B ON A.TargetLocationID = B.LocationID Left Outer Join tbinvSupplier C ON A.TargetLocationID = C.SupplierID WHERE A.LocationID = @LocationID and A.ItemID = @ItemID And A.TransDate Between @StartDate and @EndDate + ' 23:59:59.99' ORDER BY A.Transdate Desc go set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROCEDURE [dbo].[sp_Inv_StockCardList_ASC] @LocationID as varchar(10), @ItemID as varchar(10), @StartDate as varchar(10), @EndDate as varchar(10) AS --set @locationid = '20' --set @itemid = '5411' --set @startdate = '10/01/2007' --set @enddate = '02/11/2008' Select A.TransDate As "Date", A.SummaryCode + Case When isnull(A.isADS,0) = 1 Then '-ADS' else '' End as "Account", A.HospNum as "Hosp.#", A.IDNum as "Adm #", A.RefNum as "Ref. #", Case A.SummaryCode When 'AD' then 'Adjustment' When 'RS' then 'Return to ' + C.SupplierName When 'WD' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'To - ' + B.Location When 'RT' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'From - ' + B.Location When 'PU' then C.SupplierName When 'CM' then 'Credit Memo' Else '' End as [Trans.Description], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('WD','RS','PH','CS') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then A.Quantity Else '' End End as Decimal(12)) [IN], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('WD','RS','PH','CS') Then A.Quantity Else '' End End as Decimal(12)) [OUT], Cast(A.Balance as Decimal(12)) [Balance], Case When SummaryCode in ('PU','RS','WS','RT') Then convert(VarChar(15),isnull(A.NetCost,0)) Else '' End AS [Net Cost], Convert(VarChar(10), A.Consumption_Date,101) As Expiration, A.LotNumber, A.Packing, Case when left(A.RefNum, 2) = 'OR' then IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = D.UserID ), '') Else IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = A.UserID ), '') End as [User], (Select top 1 RRNumber from tbInvRRheader Where transnum = A.RefNum) [RR #], (Select top 1 PostingDate from tbInvWithdrawHeader Where TransNum = A.RefNum) [Posting Date] from tbInvStockCard A Left Outer Join tbInvLocation B ON A.TargetLocationID = B.LocationID Left Outer Join tbinvSupplier C ON A.TargetLocationID = C.SupplierID left outer join billing..tbcashassessment D on A.RefNum = D.ORNumber and A.ItemID = D.ItemID WHERE A.LocationID = @LocationID and A.ItemID = @ItemID And A.TransDate Between @StartDate and @EndDate + ' 23:59:59.99' --ORDER BY A.Transdate Desc Union All Select A.TransDate As "Date", A.SummaryCode + Case When isnull(A.isADS,0) = 1 Then '-ADS' else '' End as "Account", A.HospNum as "Hosp.#", A.IDNum as "Adm #", A.RefNum as "Ref. #", Case A.SummaryCode When 'AD' then 'Adjustment' When 'RS' then 'Return to ' + C.SupplierName When 'WD' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'To - ' + B.Location When 'RT' then Case When A.Quantity < 0 then '*Adjustment*' Else '' End + 'From - ' + B.Location When 'PU' then C.SupplierName When 'CM' then 'Credit Memo' Else '' End as [Trans.Description], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('WD','RS','PH','CS') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then A.Quantity Else '' End End as Decimal(12)) [IN], Cast(Case When A.Quantity < 0 Then Case When A.SummaryCode in ('PU','RT','PC','CC', 'CM') Then Abs(A.Quantity) Else '' End Else Case When A.SummaryCode in ('WD','RS','PH','CS') Then A.Quantity Else '' End End as Decimal(12)) [OUT], Cast(A.Balance as Decimal(12)) [Balance], Case When SummaryCode in ('PU','RS','WS','RT') Then convert(VarChar(15),isnull(A.NetCost,0)) Else '' End AS [Net Cost], Convert(VarChar(10), A.Consumption_Date,101) As Expiration, A.LotNumber, A.Packing, IsNull( ( Select Top 1 IsNull(LastName,'') + ', ' + IsNull(FirstName,'') + ' ' + IsNull(MiddleName,'') from Password..tbPasswordMain Where EmployeeID = A.UserID ), '') [User], (Select top 1 RRNumber from tbInvRRheader Where transnum = A.RefNum) [RR #], (Select top 1 PostingDate from tbInvWithdrawHeader Where TransNum = A.RefNum) [Posting Date] from History..tbPassInvStock A Left Outer Join tbInvLocation B ON A.TargetLocationID = B.LocationID Left Outer Join tbinvSupplier C ON A.TargetLocationID = C.SupplierID WHERE A.LocationID = @LocationID and A.ItemID = @ItemID And A.TransDate Between @StartDate and @EndDate + ' 23:59:59.99' ORDER BY A.Transdate go ALTER PROCEDURE [dbo].[sp_Inv_SavePOHeader] @intRecordNumber as int OutPut, @PONumber as varchar(20) OutPut, @SupplierID as varchar(12), @OrderDate smalldatetime, @LocationID as varchar(10), @Requisitioner as varchar(10), @RIVNumber as varchar(20), @RIVDate as datetime, @TotalCost as float, @Remarks as varchar(50), @TermsID as int, @CancelDate as smalldatetime, @Footer as varchar(254), @bitVAT as bit, @bitAccredited as bit, @bitDelivered as bit, @intProcurement as int, @intCurrencyID as int, @Discount as int, @isEP as bit = 0, @InvoiceNumber as varchar(10) = null, @EmployeeID as varchar(15) = null, @FixedDiscount as float, @UserID as varchar(15) AS set @IntRecordNumber = '' set @FixedDiscount = '' Declare @intTempRecordNumber as int; Declare @fltVIP as int; Set @fltVIP = ( Select IsNull(ValueInPeso,0) from tbInvCurrency Where CurrencyID = @intCurrencyID ); set @intTempRecordNumber = @intRecordNumber; Set @intRecordNumber = IsNull(( Select Max(IsNull(RecordNumber,0)) + 1 [MaxNumber] from tbInvPOHeader),1); If @intRecordNumber = 0 Begin Set @intRecordNumber = 1; End; if @LocationID = '69' Begin Set @PONumber = IsNull( ( Select Cast(Max(Cast(IsNull(Case When isNumeric(PONumber) = 1 Then PONumber Else Left(PONumber, len(PONumber) - 1) End,0) as int))+1 as varchar(15)) from tbInvPOHeader), 1); Set @PONumber = @PONumber + 'A'; End; else Begin Set @PONumber = IsNull( ( Select Cast(Max(Cast(IsNull(Case When isNumeric(PONumber) = 1 Then PONumber Else Left(PONumber, len(PONumber) - 1) End,0) as int))+1 as varchar(15)) from tbInvPOHeader), 1); Set @PONumber = @PONumber + isnull((Select isnull(POSuffix,'') From tbInvUserSettings Where UserId = @EmployeeID),'') End; Insert into tbInvPOHeader( PONumber, SupplierID, OrderDate, LocationID, Requisitioner, RIVNumber, RIVDate, RecordNumber, TotalCost, Remarks, OrderStatus, TermsID, CancelDate, Footer, isVAT, isAccredited, isDelivered, ProcurementID, CurrencyID, ValueInPeso, Discount, isEP, InvoiceNumber, FixedDiscount, POUserID ) Values( @PONumber, @SupplierID, GetDate(), @LocationID, @Requisitioner, @RIVNumber, @RIVDate, @intRecordNumber, @TotalCost, @Remarks, 'U', @TermsID, @CancelDate, @Footer, @bitVAT, @bitAccredited, @bitDelivered, @intProcurement, @intCurrencyID, @fltVIP, @Discount, @isEP, @InvoiceNumber, @FixedDiscount, @UserID ); Update tbInvPOFree Set PORecordNumber = @intRecordNumber, PONumber = @PONumber Where PORecordNumber = 0 and PONumber = 'New';