ISpr Клас

Реалізує інтерфейс списку довідника.

Нагадування При конфігуруванні документу в відповідних подіях, умова The.TypeForm=1 вказує, що код відноситься для роботи з списком, The.TypeForm=2-елементом довідника, The.TypeForm=3-групою.

Член Тип Параметри Опис
Init(Spr,[cPar],[oCrs]) L tSpr-довідник; cPar-параметри; oCrs-курсор Конструктор.
loSpr = CreateObject('iSpr','_KSPROF','ID="'+lcID+'"')
loSpr.Show()
If VarType(loSpr)='O'
   MessageBox(loSpr.MD.Choice)
EndIf
OnExit() Викликає та повертає значення функції заданої в конфігураторі в події OnExit. Якщо в конфігураторі ця подія не перекривалась - метод повертає True
OnDel() Викликає та повертає значення функції заданої в конфігураторі в події OnDel. Якщо в конфігураторі ця подія не перекривалась - метод повертає True. Тобто для заборони видалення досить повернути False. В відповідній події конфігуратора існує властивість DelFlag, яка дозволяє виконати код до видалення (DelFlag=0), або після (DelFlag=1).
Do Case
   Case The.TypeForm = 4
      If The.DelFlag=0	&& До видалення
         Local lcDocID, lcCrsDoc, loUsed
         lcDocID = The.MD.HF.ID
         loUsed = CreateObject('TUsed')
         lcCrsDoc = FindRef(lcDocID,.T.,.T.)			
         Select (lcCrsDoc)
         Locate For ID # Spr._Zob.Gui
         If Found() && Return .F. - Заборона подальших штатних дій
            Return MessageBox('На документ існують посилання. Видалення не можливе.',16,'Видалення')<0
         EndIf
         If The.MD.HF.IsDel=0 And MessageBox('Видалити документ ?',1+32,'Запит')=1
             *---Удаляем Зобов'язання
             Select (lcCrsDoc)
             Scan For Seek(ID,'_Zob','ID')
                Delete In _Zob
             EndScan
             *---Видаляем документ самостійно
             SysLog.Fix('Doc','Del',lcDocID, DocShort(lcDocID),,The.MD.HF.Date)			
             The.MD.Delete(lcDocID,1)
          EndIf	
          Return .F. && Заборона подальших штатних дій	
EndCase
OnLoad() Викликає та повертає значення функції заданої в конфігураторі в події OnLoad, яка відбувається перед відображенням форми редагування. Якщо в конфігураторі ця подія не перекривалась - метод повертає True. Для заборони редагування досить повернути False. Зручно використовувати для налаштування можливостей редагування, якщо стандартні можливості не влаштовують.
Do Case
   Case The.TypeForm= 2		
      The.Descr.is_Button = .T.
      The.Descr.ModeChoice = .T.
      The.Descr.CommandClick = [BProc.Spr._Posada.SelectKP()]
EndCase
isSelectMode L Означає що довідник буде працювати в режимі вибору, і якщо вибір відбувся, то результат буде збережено в ISpr.MD.Choice.
loSpr = CreateObject('iSpr','_KSPROF')
loSpr.isSelectMode = .T.
loSpr.Show()
If VarType(loSpr)='O'
   MessageBox(loSpr.MD.Choice)
EndIf
MD TSpr Посилання на об'єкт метаданих який відображає інтерфейс
ReadOnly L True переключає довідник в режим Тільки читання (можливість додавання та редагування буде відключена). Використовується, як правило в методі OnLoad().
SetSize(nAddLbl,nAddTxt) L nAddLbl+-довжина лейбла; nAddTxt+-довжина контрола Встановлює нестандартні розміри реквізитів в стадартній формі.
Do Case
   Case The.TypeForm = 2
      The.SetSize(20,100)
EndCase

Налаштування сторінки