//Проверка выражения public ITablStruct Check(TablsList dataTabls, ITablStruct parentStruct) { if (parentStruct.Child == null) { AddError("Подтаблица отстутствует"); return(null); } if (Condition != null && Condition.Check(parentStruct.Child) != DataType.Boolean) { AddError("Недопустимый тип данных условия"); } return(ChildNode == null ? parentStruct.Child : ChildNode.Check(dataTabls, parentStruct.Child)); }
//Проверка выражения public ITablStruct Check(TablsList dataTabls, ITablStruct parentStruct) { if (!dataTabls.Structs.ContainsKey(_tablName)) { AddError("Не найдена таблица"); return(null); } var tstruct = dataTabls.Structs[_tablName].Tabls[0]; if (_condition != null && _condition.Check(tstruct) != DataType.Boolean) { AddError("Недопустимый тип данных условия"); } return(ChildNode == null ? tstruct : ChildNode.Check(dataTabls, tstruct)); }