# имя: 'KKS Translator 1' # описание: трансляция состояний в KKS # тип триггера: 'EgsObjectUpdated' # создан: 2018.03.18 15:42:00, Сельченков Н.Ю. # изменен: '2019.03.19 18.07.11', Сельченков Н.Ю. # подробности: https://redmine.integra-s.com:11000/projects/eilyacuario/wiki/Responsive_commander_2 use Newtonsoft.Json.Linq.JObject as JObject use Newtonsoft.Json.JsonConvert as JsonConvert from Newtonsoft.Json use typedef ` ` as Settings const settings = Settings(trigger.settings) const table = JsonConvert.DeserializeObject(settings.table, JObject) as JObject assert(table isnt null) assert(from table.Properties() all Value is JObject) if "state" in changes then let state = @object["state"].Text let kks = from table.Properties() where Name in @object.Types select many (from (Value as JObject).Properties() where state like Name select Value) try first if kks isnt null then @object["kks_state"].Value = kks end