CREATE TABLE [dbo].[ICWarehouses]
(
[WarehouseID] [int] NOT NULL,
[Warehouse] [varchar] (15) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Description] [varchar] (50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Address] [varchar] (64) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[City] [varchar] (32) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[State] [varchar] (16) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Zip] [varchar] (16) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Country] [varchar] (16) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[Active] [bit] NOT NULL,
[Locks] [int] NOT NULL CONSTRAINT [DF_ICWarehouses_Locks] DEFAULT ((0)),
[CreatorID] [char] (8) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[UpdatorID] [char] (8) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[CreateDate] [datetime] NOT NULL CONSTRAINT [DF_ICWarehouses_CreateDate] DEFAULT (getdate()),
[LastUpdate] [datetime] NOT NULL CONSTRAINT [DF_ICWarehouses_LastUpdate] DEFAULT (getdate()),
[timestamp] [timestamp] NULL,
[BranchID] [int] NOT NULL,
[DefaultStandardBinID] [int] NULL,
[DefaultDefectiveBinID] [int] NULL,
[DefaultUnavailableBinID] [int] NULL,
[WarehouseTypeID] [int] NOT NULL CONSTRAINT [DF_ICWarehouses_WarehouseTypeID] DEFAULT ((1)),
[ParentWarehouseID] [int] NULL,
[UseParentForReceiving] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_UseParentForReceiving] DEFAULT ((0)),
[DropShipBinID] [int] NULL,
[SpecialOrderBinID] [int] NULL,
[DefaultFulFillmentBinID] [int] NULL,
[DefaultReceivingBinID] [int] NULL,
[DefaultIncreaseBinID] [int] NULL,
[DefaultDecreaseBinID] [int] NULL,
[DefaultTransferBinID] [int] NULL,
[DefaultPreAssemblyBinID] [int] NULL,
[DefaultPostAssemblyBinID] [int] NULL,
[SyncAddress] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_SyncAddress] DEFAULT ((0)),
[SyncAddressSource] [int] NOT NULL CONSTRAINT [DF_ICWarehouses_SyncAddressSource] DEFAULT ((1)),
[CustomerID] [int] NULL,
[AgentID] [int] NULL,
[DefaultSOShippedBinID] [int] NULL,
[ShowInAllBranches] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_ShowInAllBranches] DEFAULT ((0)),
[CostPoolID] [int] NOT NULL,
[DefectiveCostPoolID] [int] NOT NULL,
[WarehouseCostingTypeID] [int] NOT NULL CONSTRAINT [DF_ICWarehouses_WarehouseCostingTypeID] DEFAULT ((1)),
[TrackCostsSeparately] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_TrackCostsSeparately] DEFAULT ((0)),
[ExcludeFromOnHandQty] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_ExcludeFromOnHandQty] DEFAULT ((0)),
[ExcludeFromAvgCost] [bit] NOT NULL CONSTRAINT [DF_ICWarehouses_ExcludeFromAvgCost] DEFAULT ((0)),
[ShTrackingConfigID] [int] NULL,
[NameExternal] [varchar] (128) COLLATE SQL_Latin1_General_CP1_CI_AS NULL CONSTRAINT [DF_ICWarehouses_NameExternal] DEFAULT (''),
[DefaultAssembledBinID] [int] NULL,
[DefaultSOShippedAssembledBinID] [int] NULL,
[BalanceSheetGroupID] [int] NOT NULL,
[Email] [varchar] (255) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL CONSTRAINT [DF_ICWarehouses_Email] DEFAULT ('')
) ON [PRIMARY]
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [PK_ICWarehouses] PRIMARY KEY CLUSTERED ([WarehouseID]) ON [PRIMARY]
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_AgentID_ShAgents] FOREIGN KEY ([AgentID]) REFERENCES [dbo].[ShAgents] ([AgentID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_BalanceSheetGroupID_GLBalanceSheetGroups] FOREIGN KEY ([BalanceSheetGroupID]) REFERENCES [dbo].[GLBalanceSheetGroups] ([BalanceSheetGroupID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_BranchID_GLBranches] FOREIGN KEY ([BranchID]) REFERENCES [dbo].[GLBranches] ([BranchID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_CostPoolID_ICCostPools] FOREIGN KEY ([CostPoolID]) REFERENCES [dbo].[ICCostPools] ([CostPoolID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_CustomerID_ARCustomers] FOREIGN KEY ([CustomerID]) REFERENCES [dbo].[ARCustomers] ([CustomerID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultAssembledBinID_ICBins] FOREIGN KEY ([DefaultAssembledBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultDecreaseBinID_ICBins] FOREIGN KEY ([DefaultDecreaseBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultDefectiveBinID_ICBins] FOREIGN KEY ([DefaultDefectiveBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultIncreaseBinID_ICBins] FOREIGN KEY ([DefaultIncreaseBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultPostAssemblyBinID_ICBins] FOREIGN KEY ([DefaultPostAssemblyBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultPreAssemblyBinID_ICBins] FOREIGN KEY ([DefaultPreAssemblyBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultReceivingBinID_ICBins] FOREIGN KEY ([DefaultReceivingBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultSOShippedAssembledBinID_ICBins] FOREIGN KEY ([DefaultSOShippedAssembledBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultSOShippedBinID_ICBins] FOREIGN KEY ([DefaultSOShippedBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultStandardBinID_ICBins] FOREIGN KEY ([DefaultStandardBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefaultTransferBinID_ICBins] FOREIGN KEY ([DefaultTransferBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DefectiveCostPoolID_ICCostPools] FOREIGN KEY ([DefectiveCostPoolID]) REFERENCES [dbo].[ICCostPools] ([CostPoolID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_DropShipBinID_ICBins] FOREIGN KEY ([DropShipBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_ParentWarehouseID_ICWarehouses] FOREIGN KEY ([ParentWarehouseID]) REFERENCES [dbo].[ICWarehouses] ([WarehouseID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_ShTrackingConfigID_ShTrackingConfigs] FOREIGN KEY ([ShTrackingConfigID]) REFERENCES [dbo].[ShTrackingConfigs] ([ShTrackingConfigID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_SpecialOrderBinID_ICBins] FOREIGN KEY ([SpecialOrderBinID]) REFERENCES [dbo].[ICBins] ([BinID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_WarehouseCostingTypeID_ICWarehouseCostingTypes] FOREIGN KEY ([WarehouseCostingTypeID]) REFERENCES [dbo].[ICWarehouseCostingTypes] ([WarehouseCostingTypeID])
GO
ALTER TABLE [dbo].[ICWarehouses] ADD CONSTRAINT [FK_ICWarehouses_WarehouseTypeID_ICWarehouseTypes] FOREIGN KEY ([WarehouseTypeID]) REFERENCES [dbo].[ICWarehouseTypes] ([WarehouseTypeID])
GO