{
  "strategy": "one-list-per-ADV-model",
  "schemaVersion": 1,
  "notes": [
    "Each SharePoint list stores portable ADV envelope fields plus the complete common ADV record in DataJson.",
    "This avoids locking the ADV module UI to SharePoint-specific field types.",
    "Model-specific SharePoint columns can be added later for reporting without breaking the common record."
  ],
  "lists": [
    {
      "model": "job",
      "displayName": "ADV Jobs",
      "description": "ADV Core system-of-record list for job.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "person",
      "displayName": "ADV People",
      "description": "ADV Core system-of-record list for person.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "timesheet",
      "displayName": "ADV Timesheets",
      "description": "ADV Core system-of-record list for timesheet.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "daily",
      "displayName": "ADV Dailies",
      "description": "ADV Core system-of-record list for daily.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "rfi",
      "displayName": "ADV RFIs",
      "description": "ADV Core system-of-record list for rfi.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "changeOrder",
      "displayName": "ADV Change Orders",
      "description": "ADV Core system-of-record list for changeOrder.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "order",
      "displayName": "ADV Orders",
      "description": "ADV Core system-of-record list for order.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "delivery",
      "displayName": "ADV Deliveries",
      "description": "ADV Core system-of-record list for delivery.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "safety",
      "displayName": "ADV Safety",
      "description": "ADV Core system-of-record list for safety.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "asset",
      "displayName": "ADV Assets",
      "description": "ADV Core system-of-record list for asset.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "manpower",
      "displayName": "ADV Manpower",
      "description": "ADV Core system-of-record list for manpower.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "project",
      "displayName": "ADV Project Controls",
      "description": "ADV Core system-of-record list for project.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    },
    {
      "model": "receiving",
      "displayName": "ADV Receiving",
      "description": "ADV Core system-of-record list for receiving.",
      "template": "genericList",
      "columns": [
        {
          "name": "ADVId",
          "displayName": "ADV ID",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVModel",
          "displayName": "ADV Model",
          "text": {
            "allowMultipleLines": false
          },
          "required": true,
          "indexed": true
        },
        {
          "name": "ADVVersion",
          "displayName": "ADV Version",
          "number": {
            "decimalPlaces": "none"
          },
          "required": true
        },
        {
          "name": "JobNumber",
          "displayName": "Job Number",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "PersonId",
          "displayName": "Person ID",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "RecordDate",
          "displayName": "Record Date",
          "dateTime": {
            "format": "dateTime"
          },
          "indexed": true
        },
        {
          "name": "Status",
          "displayName": "Status",
          "text": {
            "allowMultipleLines": false
          },
          "indexed": true
        },
        {
          "name": "Source",
          "displayName": "Source",
          "text": {
            "allowMultipleLines": false
          }
        },
        {
          "name": "Approved",
          "displayName": "Approved",
          "boolean": {}
        },
        {
          "name": "DataJson",
          "displayName": "ADV Record JSON",
          "text": {
            "allowMultipleLines": true,
            "appendChangesToExistingText": false,
            "linesForEditing": 12
          },
          "required": true
        }
      ]
    }
  ]
}