CreateNewDoljn(name, okpdtr, facets) { // создаем объект справочника должностей var doljnlist=CreateObject("DoljnList"); // если должность с наименованием name уже есть - то не будем ее добавлять var doljn=GetDoljnFromSpravByName(static_cast_to_string(name)); if (doljn.IsEmpty()) { //.. а если не нашли - то добавим vvvv это означает, что справочник надо сохранить doljn=doljnlist.AddNewDoljn(static_cast_to_string(name),true); if (IsNothing(doljn)) { //добавление не прошло, скорее всего из-за блокировки справочника AmbaMessageBox("Создание должностей будет прервано из-за блокировки справочника другим пользователем", "Внимание!",MB_OK|MB_ICONWARNING,0); throw 0; } } // установим код ОКПДТР doljn.SetOKPDTRCode(static_cast_to_long(okpdtr),false,false); // и фасеты (если они не пусты) string s_facets=static_cast_to_string(facets); if (strlen(s_facets)) doljn.SetFacets(s_facets); // возвращается ID созданной должности return doljn.GetID(); }