{
  "$id": "https://powercom-maquassihills.planetgis.co.za/MDM/Loss/Update/Schema2",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "ZoneName": { "type": "string", "code": "" },
      "MasterMeters": { "type": "array", "items": { "type": "number" }, "code": "MsMt" },
      "SlaveMeters": { "type": "array", "items": { "type": "number" }, "code": "SlMt" },
      "Date": { "type": "string", "format": "date-time", "code": "Dt" },
      "MasterConsumption": { "type": "number", "code": "MsCn" },
      "SlaveConsumption": { "type": "number", "code": "SlCn" },
      "LossKWh": { "type": ["number","null"], "code": "LsKW" },
      "LossPercent": { "type": ["number","null"], "code": "LsPr" },
      "PercentForAlert": { "type": ["number","null"], "code": "PrFA" },
      "Alert": { "type": ["boolean","null"], "code": "Alrt" }
    },
    "required": ["ZoneName", "Date", "MasterConsumption", "SlaveConsumption"],
    "calculated": {
      "P": {
        "sql": "Coalesce((SELECT FeatureId FROM f_powercom_energy_loss_zones WHERE ZoneName=:ZoneName), Abort('Zone '||:ZoneName||' not found'))"
      },
      "I": {
        "sql": "Coalesce((SELECT r.ActionId FROM a_mdm_energy_loss_reports r, entities e, f_powercom_energy_loss_zones z, actions a WHERE r.ActionId=e.EntityId AND e.ParentId=z.FeatureId AND z.ZoneName=:ZoneName AND a.ActionId=r.ActionId AND a.Date=julianday(:Date)), CreateEntity(807016709899960349, :P))"
      }
    }
  }
}