Directum. Как отловить закрытие записи справочника

Создаем программно справочник в 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()

Карточка функции:

Стырено тут

Рекомендовать в Социальных сетях:
 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *