-- SQL DDL for 100 Enterprise Tables, updated to use a Surrogate Key (business_id)
-- and maintain the Business Code as a UNIQUE constraint (Natural Key).
-- Surrogate Key: business_id (BIGINT IDENTITY(1,1) PRIMARY KEY)
-- Natural Key: The original business code (NVARCHAR(50) UNIQUE)
-- =======================================================================
-- I. FINANCE & ACCOUNTING (1-15)
-- =======================================================================
CREATE TABLE Fin_GL_Account (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
AccountCode NVARCHAR(50) NOT NULL UNIQUE, -- Original PK, now UNIQUE
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Cash in Bank - USD"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Budget_Period (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
BudgetPeriodCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "FY2025 Q1"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Tax_Rate (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TaxCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "VAT-Standard-20%"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Payment_Term (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PaymentTermCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "NET-30"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Bank_Account (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
AccountNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Main Operating Account"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Currency (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CurrencyCode NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "USD", "EUR"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "US Dollar"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Cost_Center (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CostCenterCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Marketing Department"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Profit_Center (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ProfitCenterCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Online Sales Channel"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_GL_Batch (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
BatchReference NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Period End Closing 2024-03"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Fixed_Asset (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
AssetTag NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Server Rack 001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Depreciation_Schedule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ScheduleID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SL_5Years_IT"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Cash_Flow_Item (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
FlowItemCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Cash from Operations"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_AP_Invoice (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
InvoiceNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Vendor Invoice 45892"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_AR_Receipt (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ReceiptReference NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Customer Payment XZ11"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Intercompany_Rule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RuleCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "IC-Sales-Markup-10%"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
-- =======================================================================
-- II. SALES & CRM (16-30)
-- =======================================================================
CREATE TABLE CRM_Customer (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CustomerCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Acme Corp"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Contact_Person (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ContactEmail NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "John Doe - Acme"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Sales_Territory (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TerritoryCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Northeast US"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Sales_Person (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
EmployeeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Sarah Connor - Sales"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Sales_Quote (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
QuoteNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Q-2025-0010"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Lead (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LeadEmail NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "New Lead from Website"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Opportunity (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
OpportunityRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Acme - Software Upgrade"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Campaign (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CampaignCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Spring 2025 Email Blast"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Case_Category (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CaseCategoryCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Product Defect"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Service_Contract (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ContractID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Support Contract 2025-01"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_Order_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
OrderNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SO-10045"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_Invoice (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
InvoiceRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "INV-10045"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_RMA_Return (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RMANumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "RMA-2025-0012"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_Price_List (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PriceListCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Retail Price List 2025"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_Discount_Rule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RuleName NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Volume 10% Off"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
-- =======================================================================
-- III. PROCUREMENT & INVENTORY (31-45)
-- =======================================================================
CREATE TABLE Inv_Product_Master (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ItemCode NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "SKU-XYZ-456"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "High-Capacity Widget"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Warehouse (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
WarehouseCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Main Distribution Center"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Storage_Bin (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
BinCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "WH1-Aisle05-BinC"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Category (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CategoryCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Raw Materials"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Unit_Of_Measure (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
UOMCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "EA" (Each) or "KG"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Lot_Number (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LotNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Lot-20250101-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Serial_Number (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
SerialNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SN-A1B2C3D4"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Cycle_Count_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CountRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "CC-WH1-202504"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Vendor (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
VendorCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Global Supply Co."
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Vendor_Address (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
AddressID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "GLOBC-SHIP"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Shipping Address DC"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Purchase_Order (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PONumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "PO-00987"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Goods_Receipt (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ReceiptRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "GR-PO00987-1"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Requisition (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RequisitionRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "REQ-IT-2025-003"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Contract_Terms (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TermCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Standard-NDA-V3"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Vendor_Rating (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RatingID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "GLOBACME-Q2-2025"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Vendor Acme Quarterly Review"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
-- =======================================================================
-- IV. HR & PAYROLL (46-60)
-- =======================================================================
CREATE TABLE HR_Department (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
DepartmentCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Research & Development"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Job_Title (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
JobTitleCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Senior Software Engineer"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Employee_Profile (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
EmployeeID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "E10045"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Jane Smith"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Skill_Set (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
SkillName NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Python Programming"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Training_Course (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CourseID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Advanced SQL DB Design"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Leave_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LeaveTypeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Annual Vacation"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Time_Sheet_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TimeSheetRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "TS-E10045-202503W1"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Payroll_Run (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PayrollRunID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Monthly Payroll March 2025"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Benefit_Plan (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PlanCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Health Silver Plan"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Performance_Review (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ReviewID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "E10045 Annual Review 2024"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Disciplinary_Action (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ActionID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "E10045 Written Warning"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Recruitment_Posting (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PostingRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "JOB-SWE-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Applicant_Tracking (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ApplicantID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "A-JOE-SMITH-2025"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Policy_Document (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
DocumentRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Employee Handbook V2.1"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Work_Location (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LocationCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "New York Office"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
-- =======================================================================
-- V. MANUFACTURING & PROJECTS (61-75)
-- =======================================================================
CREATE TABLE Mfg_Work_Center (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
WorkCenterCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Assembly Line 3"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Routing_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RoutingCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "R-WIDGET-STD"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_BOM_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
BOMNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "BOM-SKU-XYZ-V3"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Production_Order (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ProdOrderRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "PO-2025-04-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Quality_Standard (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
StandardCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "ISO 9001 Compliance"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Tooling_Master (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ToolID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Press Machine 05"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_WIP_Transaction (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
WIPTransID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "WIP Issue to AL3"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Project (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ProjectCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "ERP System Upgrade"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Task_Master (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TaskCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Data Migration Phase 1"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Milestone (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
MilestoneRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "UAT Sign-off"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Resource_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ResourceTypeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "External Consultant"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Time_Log (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TimeLogID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "JSmith-20250410-Task5"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Expense_Report (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ReportID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Travel Expenses Q2 2025"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Risk_Register (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RiskID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Vendor Delay Risk"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Deliverable (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
DeliverableID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Final User Manual V1.0"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
-- =======================================================================
-- VI. SYSTEM & CONFIGURATION (76-100)
-- =======================================================================
CREATE TABLE Sys_User (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
UserID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "janesmith", "sysadmin"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Jane Smith System Login"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Role (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RoleName NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "AP_Clerk", "Sales_Manager"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Accounts Payable Processing Role"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Permission (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PermissionCode NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "GL_POST_ENTRY"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "General Ledger Post Entry"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Configuration_Setting (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
SettingKey NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "DefaultCurrency", "EmailServerIP"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "System Default Currency"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Audit_Log_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LogTypeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SecurityLogin", "DataChange"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Notification_Template (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TemplateCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "PO_APPROVAL_REQUEST"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Scheduled_Job (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
JobName NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Nightly GL Posting"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Integration_Point (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
IntegrationCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "External CRM Sync"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Error_Code (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ErrorCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "E404-INV" (Item Not Found)
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Backup_Schedule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ScheduleCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Daily-Full-DB"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_License_Key (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LicenseKey NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Module X - Perpetual"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sys_Data_Retention_Rule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RuleID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Archive GL after 7 Years"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Web_Page_Content (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PageID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "Home_V2", "Contact_Us"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Public Homepage Content"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Web_Menu_Item (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
MenuPath NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "/about/history"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "About Us - History Link"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Web_User_Feedback (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
FeedbackID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "F-20250427-001"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Website Form Submission"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mobile_Device_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
DeviceCode NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "IOS-IPHONE-15"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Apple iPhone 15"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mobile_App_Version (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
VersionNumber NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "4.5.1-Beta"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Mobile App Release 4.5"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Analytics_Report (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ReportID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "Sales_YTD_RPT"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Sales Year-to-Date Performance"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Analytics_Dashboard (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
DashboardID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "Executive_Finance_DB"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Executive Finance Dashboard"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Data_Staging_Table (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TableName NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "STG_CUSTOMER_FEED"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Customer Import Staging Area"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Data_Migration_Batch (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
BatchName NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "LEGACY-CUST-202403"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Legacy Customer Migration Batch"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Security_Policy (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
PolicyID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "Password_Complexity_2025"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "System Password Complexity Rules"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Security_Access_Log (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
AccessLogID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "L-20250427-001"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "User janesmith Login Attempt"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Utility_File_Storage (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
FileRefID NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "DOC-20250427-XYZ"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Uploaded Vendor Contract PDF"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Utility_Messaging_Queue (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
QueueName NVARCHAR(50) NOT NULL UNIQUE, -- e.g., "EMAIL-OUTBOUND-Q"
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "System Outbound Email Queue"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Team_Role (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
TeamRoleCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SCRUM-MASTER"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proj_Issue_Log (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
IssueRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "ISSUE-ERP-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Machine_Calibration (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CalibrationRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "PRESS05-CAL-202504"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Shelf_Life_Rule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RuleRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "DAIRY-EXP-90"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Communication_Log (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
LogRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "COMM-CUST123-20250427"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Expense_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ExpenseTypeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Travel", "Office_Supplies"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Certification (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
CertCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "PMP", "CISSP"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_Freight_Term (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
FreightCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "FOB-SHIPPING", "EX-WORKS"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Sales_Shipment_Method (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
MethodCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "UPS-NEXTDAY"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Inv_Safety_Stock_Rule (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RuleCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SAFETY-30-DAYS"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Exchange_Rate_Type (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RateTypeCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "SPOT", "BUDGET"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE HR_Job_Family (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
JobFamilyCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "ENG" (Engineering)
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Mfg_Machine_Maintenance (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
MaintenanceRef NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "MNT-PRESS05-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE CRM_Knowledge_Base_Article (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
ArticleID NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "KB-TROUBLE-001"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Proc_RFQ_Header (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
RFQNumber NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "Request for Quote - Server Hardware"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);
CREATE TABLE Fin_Chart_of_Accounts_Segment (
business_id BIGINT IDENTITY(1,1) PRIMARY KEY,
SegmentCode NVARCHAR(50) NOT NULL UNIQUE,
BusinessName NVARCHAR(255) NOT NULL, -- e.g., "DEPARTMENT"
CreatedDate DATETIME DEFAULT GETDATE(),
UpdatedDate DATETIME DEFAULT GETDATE(),
IsActive BIT DEFAULT 1
);