Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Both sides previous revision Попередня ревізія
Наступна ревізія
Попередня ревізія
smartfox:class:ispr-44 [2018/06/01 15:52]
admin
smartfox:class:ispr-44 [2025/11/18 05:20] (поточний)
admin
Рядок 1: Рядок 1:
 ====== ISpr Клас====== ====== ISpr Клас======
-Реалізуе інтерфейс списку довідника.+Реалізує інтерфейс списку довідника.
  
-**Нагадування** При конфігурувані документу в відповдних подіях,​ умова **The.TypeForm=1** вказуе що код відноситься для роботи з списком,​ **The.TypeForm=2**-елементом довідника,​ **The.TypeForm=3**-групою. ​+**Нагадування** При конфігуруванні документу в відповідних подіях,​ умова **The.TypeForm=1** вказує, що код відноситься для роботи з списком,​ **The.TypeForm=2**-елементом довідника,​ **The.TypeForm=3**-групою. ​
  
 ^  Член ​ ^  Тип ​ ^  Параметри ​ ^  Опис ​ ^ ^  Член ​ ^  Тип ​ ^  Параметри ​ ^  Опис ​ ^
-^ Init(Spr,​[cPar],​[oCrs]) | L | //​tSpr//​-довідник; //​cPar//​-параметри; //​cPar//​-параметри; ​ //​oCrs//​-курсор| Конструктор.<​code visualfoxpro>​+^ Init(Spr,​[cPar],​[oCrs]) | L | //​tSpr//​-довідник;​ //​cPar//​-параметри; ​ //​oCrs//​-курсор| Конструктор.<​code visualfoxpro>​
 loSpr = CreateObject('​iSpr','​_KSPROF','​ID="'​+lcID+'"'​) loSpr = CreateObject('​iSpr','​_KSPROF','​ID="'​+lcID+'"'​)
 loSpr.Show() loSpr.Show()
Рядок 12: Рядок 12:
 EndIf EndIf
 </​code>​ | </​code>​ |
-OnExit() | Дивись опис |  | Викликае та повертае значення функції заданої в конфіураторі в події **OnExit**. Якщо в конфігураторі ця подія не перекривалась - метод повертае **True** |  +Fresh()   ​| ​ | Примусово оновлює зміст окна довідника<​code visualfoxpro>​The.Fresh() 
-^ OnDel() ​ | Дивись опис ​|  | Викликае та повертае значення функції заданої в конфіураторі в події **OnDel**. Якщо в конфігураторі ця подія не перекривалась - метод повертае **True**. Тобто для заборони видалення досить повернути **False** ​+=Iif(Seek(loDoc.Header.ID.Value,​ The.MD.Alias , '​ID'​),​ MessageBox('​Успішно додано !',​64,​lcCaption),​ 0)</​code>​ |  
-^ OnLoad()  ​| ​Дивись опис |  | Викликае та повертае значення функції заданої в конфіураторі в події **OnLoad**, яка відбуваеться перед відображенням форми редагування. Якщо в конфігураторі ця подія не перекривалась - метод повертае **True**. Для заборони редагування досить повернути **False**. Зручно використовувати для настройки ​можливостей редагування,​ якщо стандартні можливості не влаштовуть.<​code visualfoxpro>​+^ OnExit() |  ​|  | Викликає та повертає значення функції заданої в конфігураторі в події **OnExit**. Якщо в конфігураторі ця подія не перекривалась - метод повертає **True** |  
 +^ OnDel() ​ |  |  | Викликає та повертає значення функції заданої в конфігураторі в події **OnDel**. Якщо в конфігураторі ця подія не перекривалась - метод повертає **True**. Тобто для заборони видалення досить повернути **False**. В відповідній події конфігуратора існує властивість **DelFlag**,​ яка дозволяє виконати код до видалення ​(**DelFlag=0**), або після (**DelFlag=1**).<​code visualfoxpro>​ 
 +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 
 +</​code> ​ | 
 +^ OnLoad() ​ |  ​|  | Викликає та повертає значення функції заданої в конфігураторі в події **OnLoad**, яка відбувається перед відображенням форми редагування. Якщо в конфігураторі ця подія не перекривалась - метод повертає **True**. Для заборони редагування досить повернути **False**. Зручно використовувати для налаштування ​можливостей редагування,​ якщо стандартні можливості не влаштовують.<​code visualfoxpro>​
 Do Case Do Case
    Case The.TypeForm= 2     Case The.TypeForm= 2
Рядок 22: Рядок 49:
 EndCase EndCase
 </​code>​ | </​code>​ |
-^ isSelectMode | L |  | Ознчає що довідник буде працювати в режимі вибору,​ і якщо вибір відбувся,​ то результат буде збережено в **ISpr.MD.Choice**.<​code visualfoxpro>​+^ isSelectMode | L |  | Означає що довідник буде працювати в режимі вибору,​ і якщо вибір відбувся,​ то результат буде збережено в **ISpr.MD.Choice**.<​code visualfoxpro>​
 loSpr = CreateObject('​iSpr','​_KSPROF'​) loSpr = CreateObject('​iSpr','​_KSPROF'​)
 loSpr.isSelectMode = .T. loSpr.isSelectMode = .T.
Рядок 30: Рядок 57:
 EndIf EndIf
 </​code>​ | </​code>​ |
-^ MD | [[smartfox:​class:​tspr-51|TSpr]] |  | Посилання на об'ект метаданих якій відображуе інтерфейс |+^ MD | [[smartfox:​class:​tspr-51|TSpr]] |  | Посилання на об'єкт метаданих який відображає інтерфейс | 
 +^ ReadOnly | L |  | **True** переключає довідник в режим **Тільки читання** (можливість додавання та редагування буде відключена). Використовується,​ як правило в методі **OnLoad()**. | 
  
  

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