Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as SQL by jsraj ( 6 years ago )
-- ==========================================================================================
-- ==========================================================================================
-- ==========================================================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Category: custom
-- Version: 0.2
-- IsCustom: 1
-- Description:
-- =============================================
CREATE OR ALTER PROCEDURE web.p_MergeDevices_GET
-- MANDATORY PARAMS
@source_ship int
, @dest_ship nvarchar(max)
-- OPTIONAL PARAMS
, @_auth_operator_id bigint = null
AS
/*
ver 0.1 - JS - 20200406 - Initial copy from MxPOS, needs testing
*/
BEGIN
CREATE TABLE #dest_ships
(dest_ship int);
INSERT INTO #dest_ships SELECT * FROM dbo.splitstring(@dest_ships, ',')
UPDATE Old
SET
Machine_Location=New.Machine_Location,
Model=New.Model,
Serial_Number=New.Serial_Number,
Terminal_Id=Td.Terminal_Id,
Receipt_Printer_Id=Pd.Printer_Id,
Slip_Printer_Id=Spd.Printer_Id,
Msr_Com_Port=New.Msr_Com_Port,
Active=New.Active,
Use_Zebra_Dll=New.Use_Zebra_Dll,
Use_Fullscreen_Mode=New.Use_Fullscreen_Mode,
Show_Tray_Icon=New.Show_Tray_Icon ,
rec_deleted=new.rec_deleted
FROM Pos_Machines Old
INNER JOIN Pos_Machines New ON New.Merge_Source_Id = Old.Merge_Source_Id
AND New.Business_Unit_Id = @Source_ship
INNER JOIN Terminals Ts ON Ts.Terminal_Id = New.Terminal_Id
INNER JOIN Sales_Outlets Sos ON Sos.Sales_Outlet_Id = Ts.Sales_Outlet_Id
INNER JOIN Terminals Td ON Td.Terminal_Name = Ts.Terminal_Name
INNER JOIN Sales_Outlets Sod ON Sod.Sales_Outlet_Id = Td.Sales_Outlet_Id
AND Sod.Sales_Outlet_Name = Sos.Sales_Outlet_Name
LEFT JOIN Printers Ps ON Ps.Printer_Id = New.Receipt_Printer_Id
LEFT JOIN Printers Pd ON Pd.Business_Unit_Id = Ds.dest_ship
AND Pd.Printer_Name = Ps.Printer_Name
LEFT JOIN Printers Sps ON Sps.Printer_Id = New.Slip_Printer_Id
LEFT JOIN Printers Spd ON Spd.Business_Unit_Id = Ds.dest_ship
AND Spd.Printer_Name = Sps.Printer_Name
INNER JOIN #dest_ships Ds ON Old.Business_Unit_Id = Ds.dest_ship
AND Sod.Business_Unit_Id = Ds.dest_ship
AND Td.Business_Unit_Id = Ds.dest_ship
DROP TABLE #dest_ships
END
GO
PRINT (' script applied')
Revise this Paste