Доброго времени суток, уважаемые форумчане. Ищу вашей помощи в решении такой вот проблемы:
Переходим работать на AI 2017 (с 2013). В программе (C#) использую старые наработки, в частности у меня есть метод для подавления вхождений. Раньше он работал абсолютно стабильно. Код такой: 
-        private void Occ_Supress_v1 
-             (Inventor.AssemblyComponentDefinition tmp_Ass_CD, string tmp_Occ_name, bool need_supress) 
-         { 
-             if (need_supress) 
-             { 
-                 if (tmp_Ass_CD.Occurrences.ItemByName[tmp_Occ_name].Suppressed == false) 
-                 { 
-                     tmp_Ass_CD.Occurrences.ItemByName[tmp_Occ_name].Suppress(false); 
-                 } 
-             } 
-             else if (tmp_Ass_CD.Occurrences.ItemByName[tmp_Occ_name].Suppressed == true) 
-             { 
-                 tmp_Ass_CD.Occurrences.ItemByName[tmp_Occ_name].Unsuppress(); 
-             } 
-             oDoc.Rebuild(); 
-             oDoc.Update(); 
-         } 
Теперь возникло две проблемы:
1. если подавить вхождение, а потом снова "расподавить", или наоборот, возникает ошибка в строке "oDoc.Rebuild();". Не смог разобраться, что с ней не так, попробовал ее закомментировать, возникла пролема №2.
2. код вроде бы адекватно выполняет свою функцию - меняет состояние подавленности, но очень часто в дереве конструирования визуальное отображение "подавленности" и "не подавленности" не соответствует текущему состоянию вхождений. Т.е. "не подавленная" деталь / подсборка может быть зачеркнута, а подавленная может отображаться как активная. Если сохранить, закрыть и снова открыть документ - все становится "как надо". Если кто-то сталкивался с чем-то подобным, прошу поделиться опытом решения проблемы.