Создаем программно справочник в Directum. Нужно отловить, что пользователь нажал отмену и cделать что-то.
Я добавляла запись справочника из обработчика детального раздела данных(событие Выбор из справочника):
Приведу сразу весь код обработчика. Я завела сразу функцию:
//ShowMessage('событие Выбор из справочника') ddsnewRef = aObject.DetailDataset(aDetailDataSetNum) BookMark = ddsnewRef.Bookmark ReqCode = aRequisite.Value ReqName = aRequisite.Name //открываем сразу карточку if (not VarIsNull(aRequisite.Value)) LinkedReferenceName = aRequisite.ReferenceName EmplRefFactory = References.ReferenceFactory(LinkedReferenceName) EmplRec = EmplRefFactory.GetObjectByCode(ReqCode) if (not VarIsNull(EmplRec)) EmplRec.Form.Show endif else newRef = CreateReference(aChildRef) newRef.AddWhere('1=0') newRef.Open() newRef.Append()//добавим новую запись newRef.Requisites(aParentRefReq).Value = Object.Код newRef.Form.Show() if newRef.RecordCount = 0 ddsnewRef.Requisites(ReqName).Value = '' ddsnewRef.Delete() ShowMessage('Отменено пользователем') else ddsnewRef.Requisites(ReqName).Value = newRef.Requisites(SYSREQ_CODE).Value ShowMessage('Запись создана') endif endif Object.Save()
Стырено Читать