public bool execute() { int counter = 0; foreach (Element elem in elems) { //заполняю номер этажа для элементов, находящихся НА уровне Level baseLevel = LevelUtils.GetLevelOfElement(elem, doc); if (baseLevel != null) { string floorNumber = LevelUtils.GetFloorNumberByUnderLevel(baseLevel, floorTextPosition, doc, splitChar); if (floorNumber == null) { Print(string.Format("Не найден уровень с уровнем выше, равным: {0} при обработке элемента: {1} c id: {2}", baseLevel.Name, elem.Name, elem.Id.IntegerValue), KPLN_Loader.Preferences.MessageType.Regular); continue; } Parameter floor = elem.LookupParameter(floorNumberParamName); if (floor == null) { continue; } floor.Set(floorNumber); counter++; } } Print("Обработано элементов: " + counter, KPLN_Loader.Preferences.MessageType.Success); return(true); }