locked
Database Restored then run PerformPostRestoreFixup RRS feed

  • Question

  •  SqlConnection serverConn = new SqlConnection(connectionString);
                    SqlConnection.ClearPool(serverConn);
                    serverConn = new SqlConnection(connectionString);
                    SqlSyncStoreRestore databaseRestore = new SqlSyncStoreRestore(serverConn);
                    databaseRestore.PerformPostRestoreFixup();
                    serverConn.Close();
                    serverConn.Dispose();
    I ran this on a console and it hang. It would hang on particular tables. Any particular tables design that could cause it to fail?
    I think it is a table design related problem because i can run PerformPostRestoreFixup if my scope are made up of simple tables without any relations. (no FK).
    Besides that, any limitation on number of scope it can support?

    I fire up the SQL profiler to inspect the T-SQL statement called by the console program. And I found the PerformPostRestoreFixup function is endlessly calling these two T-SQL statement.


    exec sp_executesql N'SELECT [scope_id], [scope_local_id], [scope_sync_knowledge], [scope_tombstone_cleanup_knowledge], [scope_timestamp], [scope_config_id], [scope_restore_count] FROM [scope_info] WHERE [scope_name] = @sync_scope_name',N'@sync_scope_name nvarchar(100)',@sync_scope_name=N'DependendantRecords'




    declare @p9 int
    set @p9=0
    exec sp_executesql N'UPDATE [scope_info] SET [scope_id] = @sync_scope_id, [scope_sync_knowledge] = @sync_scope_knowledge, [scope_tombstone_cleanup_knowledge] = @sync_scope_cleanup_knowledge, [scope_restore_count] = [scope_restore_count] + 1 WHERE [scope_name] = @sync_scope_name AND (@sync_check_concurrency = 0 OR [scope_timestamp] = @sync_scope_timestamp);SET @sync_row_count = @@ROWCOUNT',N'@sync_scope_name nvarchar(100),@sync_scope_id uniqueidentifier,@sync_scope_knowledge varbinary(188),@sync_scope_cleanup_knowledge varbinary(156),@sync_check_concurrency int,@sync_scope_timestamp bigint,@sync_row_count int output',@sync_scope_name=N'DependendantRecords',@sync_scope_id='0348827F-46FD-47BE-8163-7B5956CEE738',@sync_scope_knowledge=0x0000000500000000000000040000000000000005000010000000040348827F46FD47BE81637B5956CEE738478BCC932F8F4C97A619E0867E7F462012D57140249C488A9A1C35538569A4B374F9020A8C3F423F9D5A5E01A79BEC5A000000180000100128020000010000001500000002000000010000000000000001000000020000000200000000000007D30000000300000000000007D4000000170000000100000016000000010003000000000100000000000000190100000000,@sync_scope_cleanup_knowledge=0x0000000500000000000000040000000000000005000010000000040348827F46FD47BE81637B5956CEE738478BCC932F8F4C97A619E0867E7F462012D57140249C488A9A1C35538569A4B374F9020A8C3F423F9D5A5E01A79BEC5A0000001800001001280200000100000015000000010000000100000000000000170000000100000016000000010003000000000000000000000000190100000000,@sync_check_concurrency=1,@sync_scope_timestamp=2004,@sync_row_count=@p9 output
    select @p9

    any clue what is the problem?

    thanks.



    • Moved by Max Wang_1983 Tuesday, April 19, 2011 11:05 PM Forum consolidation (From:SyncFx - Microsoft Sync Framework Database Providers [ReadOnly])
    Tuesday, December 8, 2009 10:47 AM

All replies

  • Can you please describe the simplified table schema when this happens?
    If possible, .sql for creating them would be helpful.

    Thanks.
    Tuesday, December 8, 2009 11:05 PM
    Answerer
  • I am using hub and spoke, n-tier architecture. Server using SQL server 2005, and nodes are SQL server 2005 express.

    SQL script (quite lengthy, although to reproduce the problem, only few tables are needed. I suspect it could be related to the relations of the tables )

    /****** Object:  Table [dbo].[TaxType]    Script Date: 12/09/2009 09:21:22 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TaxType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[TaxType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](50) NOT NULL,
     CONSTRAINT [PK_TaxType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[VehicleType]    Script Date: 12/09/2009 09:21:48 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[VehicleType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[VehicleType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](4) NOT NULL,
    	[Description] [varchar](20) NOT NULL,
     CONSTRAINT [PK_VehicleType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[State]    Script Date: 12/09/2009 09:21:20 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[State]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[State](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
     CONSTRAINT [PK_State] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[SystemOfOrigin]    Script Date: 12/09/2009 09:21:21 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SystemOfOrigin]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[SystemOfOrigin](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](4) NOT NULL,
     CONSTRAINT [PK_SystemOfOrigin] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[AuditTrailActionType]    Script Date: 12/09/2009 09:19:58 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[AuditTrailActionType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[AuditTrailActionType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_AuditTrailActionType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[DeliveryType]    Script Date: 12/09/2009 09:20:24 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DeliveryType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[DeliveryType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
     CONSTRAINT [PK_DeliveryType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Depot]    Script Date: 12/09/2009 09:20:26 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Depot]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Depot](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](4) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_DepotTable] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[DistroChannelType]    Script Date: 12/09/2009 09:20:27 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DistroChannelType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[DistroChannelType](
    	[Id] [int] NOT NULL,
    	[Name] [char](4) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_DistributionChanneType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[DivisionType]    Script Date: 12/09/2009 09:20:29 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DivisionType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[DivisionType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_DivisionType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[OrderType]    Script Date: 12/09/2009 09:20:50 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[OrderType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[OrderType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
     CONSTRAINT [PK_OrderType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[PaymentType]    Script Date: 12/09/2009 09:20:51 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[PaymentType]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[PaymentType](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](20) NOT NULL,
     CONSTRAINT [PK_PaymentType] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[ProductCategory]    Script Date: 12/09/2009 09:20:55 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ProductCategory]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[ProductCategory](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](8) NOT NULL,
    	[Description] [varchar](50) NOT NULL,
     CONSTRAINT [PK_ProductCategory] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[SalesOrganization]    Script Date: 12/09/2009 09:20:56 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SalesOrganization]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[SalesOrganization](
    	[Id] [int] NOT NULL,
    	[Name] [char](4) NOT NULL,
     CONSTRAINT [PK_SalesOrganization] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[SapPrimaryKey]    Script Date: 12/09/2009 09:21:00 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[SapPrimaryKey]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[SapPrimaryKey](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](50) NOT NULL,
    	[BeginNo] [varchar](10) NOT NULL,
    	[EndNo] [varchar](10) NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_SapPrimaryKey_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_SapPrimaryKey_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_SapPrimaryKey_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_SapPrimaryKey_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_SapPrimaryKey_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_SapPrimaryKey] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Silo]    Script Date: 12/09/2009 09:21:19 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Silo]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Silo](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](10) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_Silo] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[TestVehicle]    Script Date: 12/09/2009 09:21:34 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TestVehicle]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[TestVehicle](
    	[Id] [bigint] NOT NULL,
    	[RegistrationNo] [varchar](10) NOT NULL,
    	[VehicleTypeId] [int] NOT NULL,
    	[ProductCategoryId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[MaxCapacity] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestVehicle_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestVehicle_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_TestVehicle_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestVehicle_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_TestVehicle_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_TestVehicle] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[UnitOfMeasure]    Script Date: 12/09/2009 09:21:35 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[UnitOfMeasure]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[UnitOfMeasure](
    	[Id] [int] NOT NULL,
    	[Name] [varchar](5) NOT NULL,
    	[Description] [varchar](50) NULL,
     CONSTRAINT [PK_UnitOfMeasure] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Shipment]    Script Date: 12/09/2009 09:21:06 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Shipment]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Shipment](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_Shipment_Id]  DEFAULT (newid()),
    	[ShipmentNo] [varchar](50) NOT NULL,
    	[LoadDate] [datetime] NOT NULL,
    	[ShipmentStatus] [int] NOT NULL,
    	[ProductCategoryId] [int] NOT NULL,
    	[SystemOfOriginId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[TripNo] [int] NOT NULL,
    	[VehicleId] [uniqueidentifier] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_Shipment_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Shipment_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_Shipment_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Shipment_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_Shipment_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_Shipment] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[VehicleCompartment]    Script Date: 12/09/2009 09:21:46 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[VehicleCompartment]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[VehicleCompartment](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_VehicleCompartment_Id]  DEFAULT (newid()),
    	[VehicleId] [uniqueidentifier] NOT NULL,
    	[CompartmentNo] [int] NOT NULL,
    	[Capacity] [int] NOT NULL,
    	[UnitOfMeasureId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_VehicleCompartment_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_VehicleCompartment_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_VehicleCompartment_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_VehicleCompartment_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_VehicleCompartment_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_VehicleCompartment] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[Order]    Script Date: 12/09/2009 09:20:37 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Order]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Order](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_Order_Id]  DEFAULT (newid()),
    	[VehicleId] [uniqueidentifier] NOT NULL,
    	[OrderNo] [varchar](10) NOT NULL,
    	[OrderTypeId] [int] NOT NULL,
    	[DistroChannelTypeId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[SalesOrganizationId] [int] NOT NULL,
    	[DivisionTypeId] [int] NOT NULL,
    	[OrderStatus] [int] NOT NULL,
    	[PurchaseOrderNo] [varchar](20) NOT NULL,
    	[PurchaseOrderDate] [datetime] NOT NULL,
    	[RequiredDeliveryDate] [datetime] NOT NULL,
    	[PaymentTypeId] [int] NOT NULL,
    	[ChequeNo] [varchar](20) NULL,
    	[Remarks] [varchar](50) NULL,
    	[DeliveryTypeId] [int] NOT NULL,
    	[CustomerId] [uniqueidentifier] NOT NULL,
    	[ConsigneeId] [uniqueidentifier] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_Order_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Order_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_Order_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Order_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_Order_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_Order] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[ShipmentDelivery]    Script Date: 12/09/2009 09:21:17 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ShipmentDelivery]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[ShipmentDelivery](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_ShipmentDelivery_Id]  DEFAULT (newid()),
    	[ShipmentId] [uniqueidentifier] NOT NULL,
    	[DeliveryNoteId] [uniqueidentifier] NOT NULL,
    	[SiloId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentDelivery_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentDelivery_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_ShipmentDelivery_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentDelivery_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_ShipmentDelivery_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_ShipmentDelivery] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[ShipmentCompartmentPlan]    Script Date: 12/09/2009 09:21:12 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ShipmentCompartmentPlan]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[ShipmentCompartmentPlan](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_Id]  DEFAULT (newid()),
    	[ShipmentId] [uniqueidentifier] NOT NULL,
    	[VehicleCompartmentId] [uniqueidentifier] NOT NULL,
    	[DeliveryNoteId] [uniqueidentifier] NOT NULL,
    	[SiloId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_ShipmentCompartmentPlan_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_ShipmentCompartmentPlan] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[OrderDelivery]    Script Date: 12/09/2009 09:20:48 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[OrderDelivery]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[OrderDelivery](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_OrderDelivery_Id]  DEFAULT (newid()),
    	[OrderId] [uniqueidentifier] NOT NULL,
    	[DeliveryNoteId] [uniqueidentifier] NOT NULL,
    	[SiloId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderDelivery_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderDelivery_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_OrderDelivery_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderDelivery_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_OrderDelivery_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_OrderDelivery] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[DeliveryProduct]    Script Date: 12/09/2009 09:20:23 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DeliveryProduct]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[DeliveryProduct](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_DeliveryProduct_Id]  DEFAULT (newid()),
    	[DeliveryNoteId] [uniqueidentifier] NOT NULL,
    	[ProductId] [int] NOT NULL,
    	[ItemNo] [int] NOT NULL,
    	[DistributionChannel] [int] NOT NULL,
    	[Quantity] [int] NOT NULL,
    	[Price] [float] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryProduct_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryProduct_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_DeliveryProduct_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryProduct_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_DeliveryProduct_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_DeliveryProduct] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[OrderCompartmentPlan]    Script Date: 12/09/2009 09:20:44 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[OrderCompartmentPlan]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[OrderCompartmentPlan](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_Id]  DEFAULT (newid()),
    	[OrderId] [uniqueidentifier] NOT NULL,
    	[VehicleCompartmentId] [uniqueidentifier] NOT NULL,
    	[DeliveryNoteId] [uniqueidentifier] NOT NULL,
    	[SealNo] [varchar](20) NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_OrderCompartmentPlan_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_OrderCompartmentPlan] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Customer]    Script Date: 12/09/2009 09:20:11 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Customer]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Customer](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_Customer_Id]  DEFAULT (newid()),
    	[CustomerNo] [varchar](50) NULL,
    	[Name] [varchar](50) NOT NULL,
    	[Address] [varchar](200) NOT NULL,
    	[PostalCode] [varchar](50) NOT NULL,
    	[City] [varchar](50) NOT NULL,
    	[StateId] [int] NOT NULL,
    	[SystemOfOriginId] [int] NOT NULL,
    	[TaxTypeId] [int] NOT NULL,
    	[Phone1] [varchar](20) NOT NULL,
    	[Phone2] [varchar](20) NULL,
    	[Fax] [varchar](20) NOT NULL,
    	[CreditLimit] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_Customer_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Customer_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_Customer_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Customer_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_Customer_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_Customer] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Vehicle]    Script Date: 12/09/2009 09:21:40 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Vehicle]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Vehicle](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_Vehicle_Id]  DEFAULT (newid()),
    	[RegistrationNo] [varchar](10) NOT NULL,
    	[VehicleTypeId] [int] NULL,
    	[ProductCategoryId] [int] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[MaxCapacity] [int] NOT NULL,
    	[Hash] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_Vehicle_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Vehicle_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_Vehicle_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Vehicle_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_Vehicle_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_Vehicle] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[TestConsignee]    Script Date: 12/09/2009 09:21:28 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TestConsignee]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[TestConsignee](
    	[Id] [bigint] NOT NULL,
    	[ConsigneeNo] [varchar](50) NULL,
    	[Name] [varchar](50) NOT NULL,
    	[Address] [varchar](200) NOT NULL,
    	[PostalCode] [varchar](50) NOT NULL,
    	[City] [varchar](50) NOT NULL,
    	[StateId] [int] NOT NULL,
    	[SystemOfOriginId] [int] NOT NULL,
    	[Phone1] [varchar](20) NOT NULL,
    	[Phone2] [varchar](20) NULL,
    	[Fax] [varchar](20) NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestConsignee_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestConsignee_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_TestConsignee_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_TestConsignee_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_TestConsignee_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_TestConsignee] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Consignee]    Script Date: 12/09/2009 09:20:04 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Consignee]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Consignee](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_Consignee_Id]  DEFAULT (newid()),
    	[ConsigneeNo] [varchar](50) NULL,
    	[Name] [varchar](50) NOT NULL,
    	[Address] [varchar](200) NOT NULL,
    	[PostalCode] [varchar](50) NOT NULL,
    	[City] [varchar](50) NOT NULL,
    	[StateId] [int] NOT NULL,
    	[SystemOfOriginId] [int] NOT NULL,
    	[Phone1] [varchar](20) NOT NULL,
    	[Phone2] [varchar](20) NULL,
    	[Fax] [varchar](20) NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_Consignee_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Consignee_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_Consignee_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_Consignee_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_Consignee_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_Consignee] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[AuditTrail]    Script Date: 12/09/2009 09:19:56 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[AuditTrail]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[AuditTrail](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_AuditTrail_Id]  DEFAULT (newid()),
    	[RecordId] [uniqueidentifier] NULL,
    	[Description] [nvarchar](50) NULL,
    	[AuditTrailActionTypeId] [int] NOT NULL,
    	[LoginId] [nvarchar](50) NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_AuditTrail_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_AuditTrail_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_AuditTrail_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_AuditTrail_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_AuditTrail_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_AuditTrail] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    /****** Object:  Table [dbo].[DeliveryNote]    Script Date: 12/09/2009 09:20:17 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[DeliveryNote]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[DeliveryNote](
    	[Id] [uniqueidentifier] ROWGUIDCOL  NOT NULL CONSTRAINT [DF_DeliveryNote_Id]  DEFAULT (newid()),
    	[DeliveryNoteNumber] [varchar](10) NOT NULL,
    	[OrderNumber] [varchar](20) NOT NULL,
    	[DeliveryDate] [datetime] NOT NULL,
    	[DepotId] [int] NOT NULL,
    	[DeliveryPriority] [int] NOT NULL,
    	[CustomerId] [uniqueidentifier] NOT NULL,
    	[ConsigneeId] [uniqueidentifier] NOT NULL,
    	[StatusId] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryNote_StatusId]  DEFAULT ('StatusActive'),
    	[InsBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryNote_InsBy]  DEFAULT ('ipadmin'),
    	[InsAt] [datetime] NOT NULL CONSTRAINT [DF_DeliveryNote_InsAt]  DEFAULT (getdate()),
    	[UpdBy] [nvarchar](50) NOT NULL CONSTRAINT [DF_DeliveryNote_UpdBy]  DEFAULT ('ipadmin'),
    	[UpdAt] [datetime] NOT NULL CONSTRAINT [DF_DeliveryNote_UpdAt]  DEFAULT (getdate()),
     CONSTRAINT [PK_DeliveryNote] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  Table [dbo].[Product]    Script Date: 12/09/2009 09:20:53 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    SET ANSI_PADDING ON
    GO
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Product]') AND type in (N'U'))
    BEGIN
    CREATE TABLE [dbo].[Product](
    	[Id] [int] NOT NULL,
    	[ProductCategoryId] [int] NOT NULL,
    	[UnitOfMeasureId] [int] NOT NULL,
    	[Name] [varchar](18) NOT NULL,
    	[Description] [varchar](50) NOT NULL,
     CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED 
    (
    	[Id] ASC
    )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    END
    GO
    SET ANSI_PADDING OFF
    GO
    /****** Object:  ForeignKey [FK_AuditTrail_AuditTrailActionType]    Script Date: 12/09/2009 09:19:56 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_AuditTrail_AuditTrailActionType]') AND parent_object_id = OBJECT_ID(N'[dbo].[AuditTrail]'))
    ALTER TABLE [dbo].[AuditTrail]  WITH CHECK ADD  CONSTRAINT [FK_AuditTrail_AuditTrailActionType] FOREIGN KEY([AuditTrailActionTypeId])
    REFERENCES [dbo].[AuditTrailActionType] ([Id])
    GO
    ALTER TABLE [dbo].[AuditTrail] CHECK CONSTRAINT [FK_AuditTrail_AuditTrailActionType]
    GO
    /****** Object:  ForeignKey [FK_AuditTrail_Depot]    Script Date: 12/09/2009 09:19:57 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_AuditTrail_Depot]') AND parent_object_id = OBJECT_ID(N'[dbo].[AuditTrail]'))
    ALTER TABLE [dbo].[AuditTrail]  WITH CHECK ADD  CONSTRAINT [FK_AuditTrail_Depot] FOREIGN KEY([DepotId])
    REFERENCES [dbo].[Depot] ([Id])
    GO
    ALTER TABLE [dbo].[AuditTrail] CHECK CONSTRAINT [FK_AuditTrail_Depot]
    GO
    /****** Object:  ForeignKey [FK_Consignee_State]    Script Date: 12/09/2009 09:20:04 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Consignee_State]') AND parent_object_id = OBJECT_ID(N'[dbo].[Consignee]'))
    ALTER TABLE [dbo].[Consignee]  WITH CHECK ADD  CONSTRAINT [FK_Consignee_State] FOREIGN KEY([StateId])
    REFERENCES [dbo].[State] ([Id])
    GO
    ALTER TABLE [dbo].[Consignee] CHECK CONSTRAINT [FK_Consignee_State]
    GO
    /****** Object:  ForeignKey [FK_Consignee_SystemOfOrigin]    Script Date: 12/09/2009 09:20:05 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Consignee_SystemOfOrigin]') AND parent_object_id = OBJECT_ID(N'[dbo].[Consignee]'))
    ALTER TABLE [dbo].[Consignee]  WITH CHECK ADD  CONSTRAINT [FK_Consignee_SystemOfOrigin] FOREIGN KEY([SystemOfOriginId])
    REFERENCES [dbo].[SystemOfOrigin] ([Id])
    GO
    ALTER TABLE [dbo].[Consignee] CHECK CONSTRAINT [FK_Consignee_SystemOfOrigin]
    GO
    /****** Object:  ForeignKey [FK_Customer_State]    Script Date: 12/09/2009 09:20:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Customer_State]') AND parent_object_id = OBJECT_ID(N'[dbo].[Customer]'))
    ALTER TABLE [dbo].[Customer]  WITH CHECK ADD  CONSTRAINT [FK_Customer_State] FOREIGN KEY([StateId])
    REFERENCES [dbo].[State] ([Id])
    GO
    ALTER TABLE [dbo].[Customer] CHECK CONSTRAINT [FK_Customer_State]
    GO
    /****** Object:  ForeignKey [FK_Customer_SystemOfOrigin]    Script Date: 12/09/2009 09:20:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Customer_SystemOfOrigin]') AND parent_object_id = OBJECT_ID(N'[dbo].[Customer]'))
    ALTER TABLE [dbo].[Customer]  WITH CHECK ADD  CONSTRAINT [FK_Customer_SystemOfOrigin] FOREIGN KEY([SystemOfOriginId])
    REFERENCES [dbo].[SystemOfOrigin] ([Id])
    GO
    ALTER TABLE [dbo].[Customer] CHECK CONSTRAINT [FK_Customer_SystemOfOrigin]
    GO
    /****** Object:  ForeignKey [FK_Customer_TaxType]    Script Date: 12/09/2009 09:20:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Customer_TaxType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Customer]'))
    ALTER TABLE [dbo].[Customer]  WITH CHECK ADD  CONSTRAINT [FK_Customer_TaxType] FOREIGN KEY([TaxTypeId])
    REFERENCES [dbo].[TaxType] ([Id])
    GO
    ALTER TABLE [dbo].[Customer] CHECK CONSTRAINT [FK_Customer_TaxType]
    GO
    /****** Object:  ForeignKey [FK_DeliveryNote_Consignee]    Script Date: 12/09/2009 09:20:17 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_DeliveryNote_Consignee]') AND parent_object_id = OBJECT_ID(N'[dbo].[DeliveryNote]'))
    ALTER TABLE [dbo].[DeliveryNote]  WITH CHECK ADD  CONSTRAINT [FK_DeliveryNote_Consignee] FOREIGN KEY([ConsigneeId])
    REFERENCES [dbo].[Consignee] ([Id])
    GO
    ALTER TABLE [dbo].[DeliveryNote] CHECK CONSTRAINT [FK_DeliveryNote_Consignee]
    GO
    /****** Object:  ForeignKey [FK_DeliveryNote_Customer]    Script Date: 12/09/2009 09:20:17 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_DeliveryNote_Customer]') AND parent_object_id = OBJECT_ID(N'[dbo].[DeliveryNote]'))
    ALTER TABLE [dbo].[DeliveryNote]  WITH CHECK ADD  CONSTRAINT [FK_DeliveryNote_Customer] FOREIGN KEY([CustomerId])
    REFERENCES [dbo].[Customer] ([Id])
    GO
    ALTER TABLE [dbo].[DeliveryNote] CHECK CONSTRAINT [FK_DeliveryNote_Customer]
    GO
    /****** Object:  ForeignKey [FK_DeliveryNote_Depot]    Script Date: 12/09/2009 09:20:18 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_DeliveryNote_Depot]') AND parent_object_id = OBJECT_ID(N'[dbo].[DeliveryNote]'))
    ALTER TABLE [dbo].[DeliveryNote]  WITH CHECK ADD  CONSTRAINT [FK_DeliveryNote_Depot] FOREIGN KEY([DepotId])
    REFERENCES [dbo].[Depot] ([Id])
    GO
    ALTER TABLE [dbo].[DeliveryNote] CHECK CONSTRAINT [FK_DeliveryNote_Depot]
    GO
    /****** Object:  ForeignKey [FK_DeliveryProduct_DeliveryNote]    Script Date: 12/09/2009 09:20:23 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_DeliveryProduct_DeliveryNote]') AND parent_object_id = OBJECT_ID(N'[dbo].[DeliveryProduct]'))
    ALTER TABLE [dbo].[DeliveryProduct]  WITH CHECK ADD  CONSTRAINT [FK_DeliveryProduct_DeliveryNote] FOREIGN KEY([DeliveryNoteId])
    REFERENCES [dbo].[DeliveryNote] ([Id])
    GO
    ALTER TABLE [dbo].[DeliveryProduct] CHECK CONSTRAINT [FK_DeliveryProduct_DeliveryNote]
    GO
    /****** Object:  ForeignKey [FK_DeliveryProduct_Product]    Script Date: 12/09/2009 09:20:23 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_DeliveryProduct_Product]') AND parent_object_id = OBJECT_ID(N'[dbo].[DeliveryProduct]'))
    ALTER TABLE [dbo].[DeliveryProduct]  WITH CHECK ADD  CONSTRAINT [FK_DeliveryProduct_Product] FOREIGN KEY([ProductId])
    REFERENCES [dbo].[Product] ([Id])
    GO
    ALTER TABLE [dbo].[DeliveryProduct] CHECK CONSTRAINT [FK_DeliveryProduct_Product]
    GO
    /****** Object:  ForeignKey [FK_Order_Consignee]    Script Date: 12/09/2009 09:20:37 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_Consignee]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_Consignee] FOREIGN KEY([ConsigneeId])
    REFERENCES [dbo].[Consignee] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_Consignee]
    GO
    /****** Object:  ForeignKey [FK_Order_Customer]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_Customer]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_Customer] FOREIGN KEY([CustomerId])
    REFERENCES [dbo].[Customer] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_Customer]
    GO
    /****** Object:  ForeignKey [FK_Order_DeliveryType]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_DeliveryType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_DeliveryType] FOREIGN KEY([DeliveryTypeId])
    REFERENCES [dbo].[DeliveryType] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_DeliveryType]
    GO
    /****** Object:  ForeignKey [FK_Order_Depot]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_Depot]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_Depot] FOREIGN KEY([DepotId])
    REFERENCES [dbo].[Depot] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_Depot]
    GO
    /****** Object:  ForeignKey [FK_Order_DistroChannelType]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_DistroChannelType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_DistroChannelType] FOREIGN KEY([DistroChannelTypeId])
    REFERENCES [dbo].[DistroChannelType] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_DistroChannelType]
    GO
    /****** Object:  ForeignKey [FK_Order_DivisionType]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_DivisionType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_DivisionType] FOREIGN KEY([DivisionTypeId])
    REFERENCES [dbo].[DivisionType] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_DivisionType]
    GO
    /****** Object:  ForeignKey [FK_Order_OrderType]    Script Date: 12/09/2009 09:20:38 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_OrderType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_OrderType] FOREIGN KEY([OrderTypeId])
    REFERENCES [dbo].[OrderType] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_OrderType]
    GO
    /****** Object:  ForeignKey [FK_Order_PaymentType]    Script Date: 12/09/2009 09:20:39 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_PaymentType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_PaymentType] FOREIGN KEY([PaymentTypeId])
    REFERENCES [dbo].[PaymentType] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_PaymentType]
    GO
    /****** Object:  ForeignKey [FK_Order_SalesOrganization]    Script Date: 12/09/2009 09:20:39 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_SalesOrganization]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_SalesOrganization] FOREIGN KEY([SalesOrganizationId])
    REFERENCES [dbo].[SalesOrganization] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_SalesOrganization]
    GO
    /****** Object:  ForeignKey [FK_Order_Vehicle]    Script Date: 12/09/2009 09:20:39 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Order_Vehicle]') AND parent_object_id = OBJECT_ID(N'[dbo].[Order]'))
    ALTER TABLE [dbo].[Order]  WITH CHECK ADD  CONSTRAINT [FK_Order_Vehicle] FOREIGN KEY([VehicleId])
    REFERENCES [dbo].[Vehicle] ([Id])
    GO
    ALTER TABLE [dbo].[Order] CHECK CONSTRAINT [FK_Order_Vehicle]
    GO
    /****** Object:  ForeignKey [FK_OrderCompartmentPlan_DeliveryNote]    Script Date: 12/09/2009 09:20:44 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderCompartmentPlan_DeliveryNote]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderCompartmentPlan]'))
    ALTER TABLE [dbo].[OrderCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_OrderCompartmentPlan_DeliveryNote] FOREIGN KEY([DeliveryNoteId])
    REFERENCES [dbo].[DeliveryNote] ([Id])
    GO
    ALTER TABLE [dbo].[OrderCompartmentPlan] CHECK CONSTRAINT [FK_OrderCompartmentPlan_DeliveryNote]
    GO
    /****** Object:  ForeignKey [FK_OrderCompartmentPlan_Order]    Script Date: 12/09/2009 09:20:44 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderCompartmentPlan_Order]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderCompartmentPlan]'))
    ALTER TABLE [dbo].[OrderCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_OrderCompartmentPlan_Order] FOREIGN KEY([OrderId])
    REFERENCES [dbo].[Order] ([Id])
    GO
    ALTER TABLE [dbo].[OrderCompartmentPlan] CHECK CONSTRAINT [FK_OrderCompartmentPlan_Order]
    GO
    /****** Object:  ForeignKey [FK_OrderCompartmentPlan_VehicleCompartment]    Script Date: 12/09/2009 09:20:44 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderCompartmentPlan_VehicleCompartment]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderCompartmentPlan]'))
    ALTER TABLE [dbo].[OrderCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_OrderCompartmentPlan_VehicleCompartment] FOREIGN KEY([VehicleCompartmentId])
    REFERENCES [dbo].[VehicleCompartment] ([Id])
    GO
    ALTER TABLE [dbo].[OrderCompartmentPlan] CHECK CONSTRAINT [FK_OrderCompartmentPlan_VehicleCompartment]
    GO
    /****** Object:  ForeignKey [FK_OrderDelivery_DeliveryNote]    Script Date: 12/09/2009 09:20:49 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderDelivery_DeliveryNote]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderDelivery]'))
    ALTER TABLE [dbo].[OrderDelivery]  WITH CHECK ADD  CONSTRAINT [FK_OrderDelivery_DeliveryNote] FOREIGN KEY([DeliveryNoteId])
    REFERENCES [dbo].[DeliveryNote] ([Id])
    GO
    ALTER TABLE [dbo].[OrderDelivery] CHECK CONSTRAINT [FK_OrderDelivery_DeliveryNote]
    GO
    /****** Object:  ForeignKey [FK_OrderDelivery_Order]    Script Date: 12/09/2009 09:20:49 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderDelivery_Order]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderDelivery]'))
    ALTER TABLE [dbo].[OrderDelivery]  WITH CHECK ADD  CONSTRAINT [FK_OrderDelivery_Order] FOREIGN KEY([OrderId])
    REFERENCES [dbo].[Order] ([Id])
    GO
    ALTER TABLE [dbo].[OrderDelivery] CHECK CONSTRAINT [FK_OrderDelivery_Order]
    GO
    /****** Object:  ForeignKey [FK_OrderDelivery_Silo]    Script Date: 12/09/2009 09:20:49 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_OrderDelivery_Silo]') AND parent_object_id = OBJECT_ID(N'[dbo].[OrderDelivery]'))
    ALTER TABLE [dbo].[OrderDelivery]  WITH CHECK ADD  CONSTRAINT [FK_OrderDelivery_Silo] FOREIGN KEY([SiloId])
    REFERENCES [dbo].[Silo] ([Id])
    GO
    ALTER TABLE [dbo].[OrderDelivery] CHECK CONSTRAINT [FK_OrderDelivery_Silo]
    GO
    /****** Object:  ForeignKey [FK_Product_ProductCategory]    Script Date: 12/09/2009 09:20:53 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Product_ProductCategory]') AND parent_object_id = OBJECT_ID(N'[dbo].[Product]'))
    ALTER TABLE [dbo].[Product]  WITH CHECK ADD  CONSTRAINT [FK_Product_ProductCategory] FOREIGN KEY([ProductCategoryId])
    REFERENCES [dbo].[ProductCategory] ([Id])
    GO
    ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_ProductCategory]
    GO
    /****** Object:  ForeignKey [FK_Product_UnitOfMeasure]    Script Date: 12/09/2009 09:20:53 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Product_UnitOfMeasure]') AND parent_object_id = OBJECT_ID(N'[dbo].[Product]'))
    ALTER TABLE [dbo].[Product]  WITH CHECK ADD  CONSTRAINT [FK_Product_UnitOfMeasure] FOREIGN KEY([UnitOfMeasureId])
    REFERENCES [dbo].[UnitOfMeasure] ([Id])
    GO
    ALTER TABLE [dbo].[Product] CHECK CONSTRAINT [FK_Product_UnitOfMeasure]
    GO
    /****** Object:  ForeignKey [FK_Shipment_Depot]    Script Date: 12/09/2009 09:21:06 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Shipment_Depot]') AND parent_object_id = OBJECT_ID(N'[dbo].[Shipment]'))
    ALTER TABLE [dbo].[Shipment]  WITH CHECK ADD  CONSTRAINT [FK_Shipment_Depot] FOREIGN KEY([DepotId])
    REFERENCES [dbo].[Depot] ([Id])
    GO
    ALTER TABLE [dbo].[Shipment] CHECK CONSTRAINT [FK_Shipment_Depot]
    GO
    /****** Object:  ForeignKey [FK_Shipment_ProductCategory]    Script Date: 12/09/2009 09:21:06 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Shipment_ProductCategory]') AND parent_object_id = OBJECT_ID(N'[dbo].[Shipment]'))
    ALTER TABLE [dbo].[Shipment]  WITH CHECK ADD  CONSTRAINT [FK_Shipment_ProductCategory] FOREIGN KEY([ProductCategoryId])
    REFERENCES [dbo].[ProductCategory] ([Id])
    GO
    ALTER TABLE [dbo].[Shipment] CHECK CONSTRAINT [FK_Shipment_ProductCategory]
    GO
    /****** Object:  ForeignKey [FK_Shipment_SystemOfOrigin]    Script Date: 12/09/2009 09:21:07 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Shipment_SystemOfOrigin]') AND parent_object_id = OBJECT_ID(N'[dbo].[Shipment]'))
    ALTER TABLE [dbo].[Shipment]  WITH CHECK ADD  CONSTRAINT [FK_Shipment_SystemOfOrigin] FOREIGN KEY([SystemOfOriginId])
    REFERENCES [dbo].[SystemOfOrigin] ([Id])
    GO
    ALTER TABLE [dbo].[Shipment] CHECK CONSTRAINT [FK_Shipment_SystemOfOrigin]
    GO
    /****** Object:  ForeignKey [FK_Shipment_Vehicle]    Script Date: 12/09/2009 09:21:07 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Shipment_Vehicle]') AND parent_object_id = OBJECT_ID(N'[dbo].[Shipment]'))
    ALTER TABLE [dbo].[Shipment]  WITH CHECK ADD  CONSTRAINT [FK_Shipment_Vehicle] FOREIGN KEY([VehicleId])
    REFERENCES [dbo].[Vehicle] ([Id])
    GO
    ALTER TABLE [dbo].[Shipment] CHECK CONSTRAINT [FK_Shipment_Vehicle]
    GO
    /****** Object:  ForeignKey [FK_ShipmentCompartmentPlan_DeliveryNote]    Script Date: 12/09/2009 09:21:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentCompartmentPlan_DeliveryNote]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentCompartmentPlan]'))
    ALTER TABLE [dbo].[ShipmentCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentCompartmentPlan_DeliveryNote] FOREIGN KEY([DeliveryNoteId])
    REFERENCES [dbo].[DeliveryNote] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentCompartmentPlan] CHECK CONSTRAINT [FK_ShipmentCompartmentPlan_DeliveryNote]
    GO
    /****** Object:  ForeignKey [FK_ShipmentCompartmentPlan_Shipment]    Script Date: 12/09/2009 09:21:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentCompartmentPlan_Shipment]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentCompartmentPlan]'))
    ALTER TABLE [dbo].[ShipmentCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentCompartmentPlan_Shipment] FOREIGN KEY([ShipmentId])
    REFERENCES [dbo].[Shipment] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentCompartmentPlan] CHECK CONSTRAINT [FK_ShipmentCompartmentPlan_Shipment]
    GO
    /****** Object:  ForeignKey [FK_ShipmentCompartmentPlan_Silo]    Script Date: 12/09/2009 09:21:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentCompartmentPlan_Silo]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentCompartmentPlan]'))
    ALTER TABLE [dbo].[ShipmentCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentCompartmentPlan_Silo] FOREIGN KEY([SiloId])
    REFERENCES [dbo].[Silo] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentCompartmentPlan] CHECK CONSTRAINT [FK_ShipmentCompartmentPlan_Silo]
    GO
    /****** Object:  ForeignKey [FK_ShipmentCompartmentPlan_VehicleCompartment]    Script Date: 12/09/2009 09:21:12 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentCompartmentPlan_VehicleCompartment]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentCompartmentPlan]'))
    ALTER TABLE [dbo].[ShipmentCompartmentPlan]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentCompartmentPlan_VehicleCompartment] FOREIGN KEY([VehicleCompartmentId])
    REFERENCES [dbo].[VehicleCompartment] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentCompartmentPlan] CHECK CONSTRAINT [FK_ShipmentCompartmentPlan_VehicleCompartment]
    GO
    /****** Object:  ForeignKey [FK_ShipmentDelivery_DeliveryNote]    Script Date: 12/09/2009 09:21:17 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentDelivery_DeliveryNote]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentDelivery]'))
    ALTER TABLE [dbo].[ShipmentDelivery]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentDelivery_DeliveryNote] FOREIGN KEY([DeliveryNoteId])
    REFERENCES [dbo].[DeliveryNote] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentDelivery] CHECK CONSTRAINT [FK_ShipmentDelivery_DeliveryNote]
    GO
    /****** Object:  ForeignKey [FK_ShipmentDelivery_Shipment]    Script Date: 12/09/2009 09:21:17 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentDelivery_Shipment]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentDelivery]'))
    ALTER TABLE [dbo].[ShipmentDelivery]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentDelivery_Shipment] FOREIGN KEY([ShipmentId])
    REFERENCES [dbo].[Shipment] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentDelivery] CHECK CONSTRAINT [FK_ShipmentDelivery_Shipment]
    GO
    /****** Object:  ForeignKey [FK_ShipmentDelivery_Silo]    Script Date: 12/09/2009 09:21:18 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_ShipmentDelivery_Silo]') AND parent_object_id = OBJECT_ID(N'[dbo].[ShipmentDelivery]'))
    ALTER TABLE [dbo].[ShipmentDelivery]  WITH CHECK ADD  CONSTRAINT [FK_ShipmentDelivery_Silo] FOREIGN KEY([SiloId])
    REFERENCES [dbo].[Silo] ([Id])
    GO
    ALTER TABLE [dbo].[ShipmentDelivery] CHECK CONSTRAINT [FK_ShipmentDelivery_Silo]
    GO
    /****** Object:  ForeignKey [FK_TestConsignee_State]    Script Date: 12/09/2009 09:21:29 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_TestConsignee_State]') AND parent_object_id = OBJECT_ID(N'[dbo].[TestConsignee]'))
    ALTER TABLE [dbo].[TestConsignee]  WITH CHECK ADD  CONSTRAINT [FK_TestConsignee_State] FOREIGN KEY([StateId])
    REFERENCES [dbo].[State] ([Id])
    GO
    ALTER TABLE [dbo].[TestConsignee] CHECK CONSTRAINT [FK_TestConsignee_State]
    GO
    /****** Object:  ForeignKey [FK_TestConsignee_SystemOfOrigin]    Script Date: 12/09/2009 09:21:29 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_TestConsignee_SystemOfOrigin]') AND parent_object_id = OBJECT_ID(N'[dbo].[TestConsignee]'))
    ALTER TABLE [dbo].[TestConsignee]  WITH CHECK ADD  CONSTRAINT [FK_TestConsignee_SystemOfOrigin] FOREIGN KEY([SystemOfOriginId])
    REFERENCES [dbo].[SystemOfOrigin] ([Id])
    GO
    ALTER TABLE [dbo].[TestConsignee] CHECK CONSTRAINT [FK_TestConsignee_SystemOfOrigin]
    GO
    /****** Object:  ForeignKey [FK_Vehicle_Depot]    Script Date: 12/09/2009 09:21:40 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Vehicle_Depot]') AND parent_object_id = OBJECT_ID(N'[dbo].[Vehicle]'))
    ALTER TABLE [dbo].[Vehicle]  WITH CHECK ADD  CONSTRAINT [FK_Vehicle_Depot] FOREIGN KEY([DepotId])
    REFERENCES [dbo].[Depot] ([Id])
    GO
    ALTER TABLE [dbo].[Vehicle] CHECK CONSTRAINT [FK_Vehicle_Depot]
    GO
    /****** Object:  ForeignKey [FK_Vehicle_ProductCategory]    Script Date: 12/09/2009 09:21:40 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Vehicle_ProductCategory]') AND parent_object_id = OBJECT_ID(N'[dbo].[Vehicle]'))
    ALTER TABLE [dbo].[Vehicle]  WITH CHECK ADD  CONSTRAINT [FK_Vehicle_ProductCategory] FOREIGN KEY([ProductCategoryId])
    REFERENCES [dbo].[ProductCategory] ([Id])
    GO
    ALTER TABLE [dbo].[Vehicle] CHECK CONSTRAINT [FK_Vehicle_ProductCategory]
    GO
    /****** Object:  ForeignKey [FK_Vehicle_VehicleType]    Script Date: 12/09/2009 09:21:40 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_Vehicle_VehicleType]') AND parent_object_id = OBJECT_ID(N'[dbo].[Vehicle]'))
    ALTER TABLE [dbo].[Vehicle]  WITH CHECK ADD  CONSTRAINT [FK_Vehicle_VehicleType] FOREIGN KEY([VehicleTypeId])
    REFERENCES [dbo].[VehicleType] ([Id])
    GO
    ALTER TABLE [dbo].[Vehicle] CHECK CONSTRAINT [FK_Vehicle_VehicleType]
    GO
    /****** Object:  ForeignKey [FK_VehicleCompartment_UnitOfMeasure]    Script Date: 12/09/2009 09:21:46 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_VehicleCompartment_UnitOfMeasure]') AND parent_object_id = OBJECT_ID(N'[dbo].[VehicleCompartment]'))
    ALTER TABLE [dbo].[VehicleCompartment]  WITH CHECK ADD  CONSTRAINT [FK_VehicleCompartment_UnitOfMeasure] FOREIGN KEY([UnitOfMeasureId])
    REFERENCES [dbo].[UnitOfMeasure] ([Id])
    GO
    ALTER TABLE [dbo].[VehicleCompartment] CHECK CONSTRAINT [FK_VehicleCompartment_UnitOfMeasure]
    GO
    /****** Object:  ForeignKey [FK_VehicleCompartment_Vehicle]    Script Date: 12/09/2009 09:21:46 ******/
    IF NOT EXISTS (SELECT * FROM sys.foreign_keys WHERE object_id = OBJECT_ID(N'[dbo].[FK_VehicleCompartment_Vehicle]') AND parent_object_id = OBJECT_ID(N'[dbo].[VehicleCompartment]'))
    ALTER TABLE [dbo].[VehicleCompartment]  WITH CHECK ADD  CONSTRAINT [FK_VehicleCompartment_Vehicle] FOREIGN KEY([VehicleId])
    REFERENCES [dbo].[Vehicle] ([Id])
    GO
    ALTER TABLE [dbo].[VehicleCompartment] CHECK CONSTRAINT [FK_VehicleCompartment_Vehicle]
    GO
    steps and SQL to insert data is in next post ...
    • Edited by Anthony Yio Wednesday, December 9, 2009 2:46 AM
    Wednesday, December 9, 2009 2:33 AM


  • SQL script to insert the data

    insert into [State] (Id, [Name]) values(1, 'Kuala Lumpur')
    insert into [State] (Id, [Name]) values(2, 'Selangor')
    
    insert into [State] (Id, [Name]) values(3, 'Melaka')
    
    
    insert into SystemOfOrigin (Id, [Name]) values(1, 'SAP')
    
    insert into VehicleType(Id, [Name], [Description]) values(1, 'Tank', 'Tanker')
    
    insert into TaxType(Id, [Name]) values (1,'test')
    
    insert into ProductCategory(Id, [Name], [Description]) values (1, 'petrol', 'petrol')
    insert into Depot(Id, [Name], [Description]) values(1,'0227', 'Melaka')
    insert into UnitOfMeasure (Id, [Name], [Description]) values(1, 'litre', 'litre')
    
    
    insert into Vehicle (Id, RegistrationNo, VehicleTypeId, ProductCategoryId, DepotId, MaxCapacity, [Hash], StatusId, InsBy, InsAt, UpdBy, UpdAt) values
    ('731bd669-8a98-4ecb-b0f6-0ba0ecf2f6c2','ABC1234', 1, 1, 1, 8, 1,1,'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    insert into VehicleCompartment(Id, VehicleId, CompartmentNo, Capacity, UnitOfMeasureId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
     values ('731bd669-8a98-4ecb-b0f6-0ba0ecf2faaa', '731bd669-8a98-4ecb-b0f6-0ba0ecf2f6c2', 1, 1, 1, 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    insert into Customer (Id, CustomerNo, [Name], [Address], PostalCode, City, StateId, SystemOfOriginId, TaxTypeId, Phone1, Phone2, Fax, CreditLimit, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbb', '12345', 'tester', 'jln', '40000', 'pj', 2, 1, 1, '999', null, 'FAX-999', 888, 1  , 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    insert into Consignee(Id, ConsigneeNo, [Name], [Address], PostalCode, City, StateId, SystemOfOriginId, Phone1, Phone2, Fax, StatusId, InsBy, InsAt, UpdBy, UpdAt)
     values('731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbc', '12345', 'tester', 'jln', '40000', 'pj', 2, 1,  '999', null, 'FAX-999',  1  , 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    
    insert into silo(Id, [Name], [Description]) values (1, 'silo1', 'silo1')
    insert into OrderType(Id, [Name]) values (1, 'Type1')
    insert into DivisionType(Id, [Name], [Description]) values (1, 'DType1', 'DType1')
    insert into  DistroChannelType(Id, [Name], [Description]) values (1, 'DT1', 'DisType1')
    insert into SalesOrganization(Id, [Name]) values(1, 'C1')
    insert into PaymentType(Id, [Name]) values (1, 'cash')
    insert into DeliveryType(Id, [Name]) values (1, 'Delivery1')
    insert into Product(Id, ProductCategoryId, UnitOfMeasureId, [Name], [Description])
    values(1,1, 1, 'RON95', 'RON95')
    insert into Product(Id, ProductCategoryId, UnitOfMeasureId, [Name], [Description])
    values(2,1, 1, 'RON97', 'RON97')
    
    
    insert into [order](Id, VehicleId, OrderNo, OrderTypeId, DistroChannelTypeId, DepotId, SalesOrganizationId, DivisionTypeId, OrderStatus, PurchaseOrderNo, PurchaseOrderDate, RequiredDeliveryDate, PaymentTypeId, ChequeNo, Remarks, DeliveryTypeId, CustomerId, ConsigneeId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('022239ef-e062-41bf-bde2-bb74b733e777', '731bd669-8a98-4ecb-b0f6-0ba0ecf2f6c2', 'OrderNo123', 1,1,1,1, 1,1, 'PO12345', '1/1/2009', '1/1/2009', 1, '1234', 'dss', 1, '731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbb', '731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbc', 1, 'admin', '1/1/2009', 'admin', '1/1/2009' )
    
    
    
    insert into DeliveryNote(Id, DeliveryNoteNumber, OrderNumber, DeliveryDate, DepotId, DeliveryPriority, CustomerId, ConsigneeId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values ('022239ef-e062-41bf-bde2-bb74b733e489', 'DN00099', 'OrderNo123', '1/1/2009', 1, 1, '731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbb', '731bd669-8a98-4ecb-b0f6-0ba0ecf2fbbc', 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    insert into DeliveryProduct(Id, DeliveryNoteId, ProductId, ItemNo, DistributionChannel, Quantity, Price, DepotId,StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('8D631437-AEA1-4c3a-816A-3F5E8B064F3C', '022239ef-e062-41bf-bde2-bb74b733e489', 1, 1, 1, 1, 100,1, 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    
    
    
    
    insert into OrderCompartmentPlan(Id, OrderId, VehicleCompartmentId, DeliveryNoteId, SealNo,DepotId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values ('022239ef-e062-41bf-bde2-bb74b733e888', '022239ef-e062-41bf-bde2-bb74b733e777', '731bd669-8a98-4ecb-b0f6-0ba0ecf2faaa', '022239ef-e062-41bf-bde2-bb74b733e489','SEALNO123', 1, 1, 'admin', '1/1/2009', 'admin', '1/1/2009' )
    
    insert into OrderDelivery(Id, OrderId, DeliveryNoteId, SiloId,DepotId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('A486EE44-85C8-4399-948A-9AB38AE7F24B', '022239ef-e062-41bf-bde2-bb74b733e777', '022239ef-e062-41bf-bde2-bb74b733e489', 1,1,  1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    
    
    
    insert into Shipment(Id, ShipmentNo, LoadDate, ShipmentStatus, ProductCategoryId, SystemOfOriginId, DepotId, TripNo, VehicleId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('022239ef-e062-41bf-bde2-bb74b733e48f', 'SHIPMENTNO1', '1/1/2009', 1, 1, 1,1, 1, '731bd669-8a98-4ecb-b0f6-0ba0ecf2f6c2', 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    insert into ShipmentCompartmentPlan(Id, ShipmentId, VehicleCompartmentId, DeliveryNoteId, SiloId,DepotId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
     values('022239ef-e062-41bf-bde2-bb74b733eeee', '022239ef-e062-41bf-bde2-bb74b733e48f', '731bd669-8a98-4ecb-b0f6-0ba0ecf2faaa', '022239ef-e062-41bf-bde2-bb74b733e489',1, 1, 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    insert into ShipmentDelivery(Id, ShipmentId, DeliveryNoteId, SiloId, DepotId, StatusId, InsBy, InsAt, UpdBy, UpdAt)
    values('0115BA37-EEF9-4ed4-9F80-ED1AB45F5625', '022239ef-e062-41bf-bde2-bb74b733e48f', '022239ef-e062-41bf-bde2-bb74b733e489', 1, 1, 1, 'admin', '1/1/2009', 'admin', '1/1/2009')
    
    
    
    


    What i did  was
    1. Create the database and tables with the SQL script. (for both the server and nodes). The database does not contain the tracking table.
    21. Nodes initiate synchronization to remote machine through WCF. (don't think problem has anything to do with WCF, synchronization was not an issue). Server is hosted in IIS as WCF host. Nodes are using SqlSyncProvider, server are using proxy.
    2. It would first provision the DB (using SqlSyncScopeProvisioning)  with 1st sync scope  named dependantrecords - with tables - "VehicleType","State", "SystemOfOrigin""TaxType""ProductCategory" "Depot""UnitOfMeasure". Then, synchronize using SyncOrchestrator.
    3. Provision the DB with 2nd scope with tables - "Vehicle","VehicleCompartment","Customer","Consignee"
    4. Synchronize.
    5. Both the server and nodes contain the scope and tracking tables in it.
    6. Backup the server DB.
    7. Make changes at the connected nodes, synchronize.
    8. Stop IIS or any program which is connecting to the DB
    9. Restore the server DB with the backup.
    10. Run the console with the following code.
    11. In my machine, this would cause the console to run infinitely with high CPU usage .

    SqlConnection serverConn = new SqlConnection(connectionString);
                    SqlConnection.ClearPool(serverConn);
                    serverConn = new SqlConnection(connectionString);
                    SqlSyncStoreRestore databaseRestore = new SqlSyncStoreRestore(serverConn);
                    databaseRestore.PerformPostRestoreFixup();
                    serverConn.Close();
                    serverConn.Dispose();
    

    Wednesday, December 9, 2009 2:34 AM
  • Anthony,

    How many scopes do you have configured on this endpoint?

    Thanks-
    Phil
    Wednesday, December 9, 2009 9:14 PM
  • Hi,

         If i understand your question correctly, you are asking about how many scope in total i have created. Referring my previous post. There are 2 scopes created.
    I can't obtain the scope_info and scope_config now because i have restore the db to some other state and put on hold this piece of work. However, if it is vital in troubleshooting, kindly let me know and i can provide that information. thanks

    ---
    2. It would first provision the DB (using SqlSyncScopeProvisioning)  with 1st sync scope  named dependantrecords - with tables - "VehicleType","State", "SystemOfOrigin""TaxType""ProductCategory" "Depot""UnitOfMeasure". Then, synchronize using SyncOrchestrator.
    3. Provision the DB with 2nd scope with tables - "Vehicle","VehicleCompartment","Customer","Consignee"
    Thursday, December 10, 2009 1:21 AM
  • We will discuss this issue and may contact you for more information if needed.
    Thanks!
    Friday, December 11, 2009 6:48 PM
    Answerer
  • Anthony,

    We have been able to reproduce this issue and are working on a fix. 

    Thanks-
    Phil
    • Proposed as answer by Kyle Leckie Wednesday, January 6, 2010 7:46 PM
    Tuesday, December 22, 2009 1:16 AM