CREATE PROCEDURE ap_AddInventoryRecord @PartId INT = NULL, @WarehouseId INT = NULL, @LocationId INT = NULL, @UserId INT = NULL, @SerialNo VARCHAR(30) = NULL, @Quantity INT = 1, @DropShip TINYINT = NULL, @Printed TINYINT = NULL, @ActionDate DATETIME = NULL, @PurchaseOrder VARCHAR(30) = NULL, @Comments TEXT = NULL, @InventoryId INT = NULL OUTPUT, @BatchId INT OUTPUT AS BEGIN IF @ActionDate IS NULL BEGIN SET @ActionDate = GETDATE() END IF(@BatchId IS NULL OR @BatchId = 0) BEGIN SELECT @BatchId = MAX(BatchId) + 1 FROM Inventory END IF(@BatchId IS NULL) BEGIN SET @BatchId = 1 END INSERT INTO Inventory (BatchId, PartId, WarehouseId, LocationId, UserId, SerialNo, Quantity, DropShip, Printed, ActionDate, PurchaseOrder, Comments) VALUES (@BatchId, @PartId, @WarehouseId, @LocationId, @UserId, @SerialNo, @Quantity, @DropShip, @Printed, @ActionDate, @PurchaseOrder, @Comments) SET @InventoryId = SCOPE_IDENTITY() END