Փաստաթղթի իրադարձությունների ընդլայնման նկարագրություն
Բովանդակություն
- Ներածություն
- DOCUMENTEXTENDER նկարագրություն
- Հատկություններ
- DocumentExtender դաս
- Մեթոդներ
- BeforeCommitDelete
- PreAction
- PostAction
- PreAfterCommit
- PostAfterCommit
- PreAfterCreate
- PostAfterCreate
- PreAfterLoad
- PostAfterLoad
- PreBeforeCommit
- PostBeforeCommit
- PreBeforeCopy
- PostBeforeCopy
- PreDelete
- PostDelete
- PreFolders
- PostFolders
- PostLoadGrids
- PreOnConfirmDocumentChangeRequest
- PostOnConfirmDocumentChangeRequest
- PostStoreGrid
- PreValidate
- PostValidate
- Մեթոդներ
Ներածություն
Գոյություն ունեցող փաստաթղթերի մշակման գործընթացում լրացուցիչ ստուգումներ իրականացնելու, դաշտերի ավտոմատ լրացման և այլ սեփական տրամաբանություն ավելացնելու համար նկարագրվում է փաստաթղթի ընդլայնում։ Փաստաթղթի ընդլայնումը իրանից ներկայացնում է վիրտուալ մեթոդների բազմություն, որոնք կանչվում են փաստաթղթի հիմնական իրադարձություններից առաջ և հետո։
8X համակարգում փաստաթղթի ընդլայնում նկարագրելու համար հարկավոր է ունենալ
- .as ընդլայնմամբ ֆայլ սկրիպտերում DOCUMENTEXTENDER նկարագրությամբ, որը պարունակում է մետատվյալներ ընդլայնման մասին,
- .cs ընդլայնմամբ ֆայլ, որը պարունակում է սերվերում աշխատող տրամաբանությունը։
.as և .cs ընդլայնմամբ ֆայլերը լրացնելուց հետո անհրաժեշտ է .as ընդլայնմամբ ֆայլը ներմուծել համակարգ SYSCON
գործիքի միջոցով, որի արդյունքում կներմուծվի նաև .cs ընդլայնմամբ ֆայլը։
DOCUMENTEXTENDER նկարագրություն
DOCUMENTEXTENDER {
NAME = ...;
CAPTION = ...;
ECAPTION = ...;
CSSOURCE = ...;
};
Հատկություններ
NAME
Ընդլայնվող փաստաթղթի ներքին անունը։
CAPTION
Ընդլայնման հայերեն անվանումը ANSI կոդավորմամբ։
ECAPTION
Ընդլայնման անգլերեն անվանումը։
CSSOURCE
Ընդլայնող C# ֆայլի հարաբերական ճանապարհը .as ֆայլի նկատմամբ։
Օրինակներ՝
- Եթե extend.as և extend.cs ֆայլերը գտնվում են նույն թղթապանակում, ապա կգրվի
CSSOURCE = "extend.cs";
։ - Եթե extend.as գտվում է “C:\WorkingDir\Scripts\App\extend.as” հասցեում, իսկ extend.cs-ը՝ “C:\WorkingDir\SubFolder1\SubFolder2\extend.as” հասցեում, ապա
CSSOURCE = "..\..\SubFolder1\SubFolder2\extend.cs";
։ - Կամ կլինի գրել ամբողջական ճանապարհը, ինչը խրախուսելի չէ
CSSOURCE = "C:\WoringDir\SubFolder1\SubFolder2\extend.cs";
DocumentExtender դաս
Փաստաթղթի ընդլայնման համար անհրաժեշտ է սահմանել դաս, որը ժառանգում է DocumentExtender
դասը և ունի DocumentExtender
ատրիբուտը։
Օրինակ
[DocumentExtender]
public class DocExtenders : DocumentExtender
Մեթոդներ
BeforeCommitDelete
public virtual Task BeforeCommitDelete(Document sender, BeforeCommitDeleteEventArgs args);
BeforeCommitDelete իրադարձությունը առաջանում է տվյալների պահոցից փաստաթղթի հեռացումից անմիջապես հետո տրանզակցիայի մեջ։
PreAction
public virtual Task PreAction(Document sender, ActionEventArgs args);
PreAction իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Action իրադարձությունից առաջ։
PostAction
public virtual Task PostAction(Document sender, ActionEventArgs args);
PostAction իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Action իրադարձությունից հետո։
PreAfterCommit
public virtual Task PreAfterCommit(Document sender, AfterCommitEventArgs args);
PreAfterCommit իրադարձությունը առաջանում է փաստաթղթի տվյալների պահոցում գրանցումից հետո մեծ տրանզակցիայի մեջ՝ BeforeCommit իրադարձությունից հետո և AfterCommit իրադարձությունից առաջ։
PostAfterCommit
public virtual Task PostAfterCommit(Document sender, AfterCommitEventArgs args);
PostAfterCommit իրադարձությունը առաջանում է փաստաթղթի տվյալների պահոցում գրանցումից հետո մեծ տրանզակցիայի մեջ՝ BeforeCommit, AfterCommit իրադարձություններից հետո։
PreAfterCreate
public virtual Task PreAfterCreate(Document sender, AfterCreateEventArgs args);
PreAfterCreate իրադարձությունը առաջանում է փաստաթուղթը ստեղծելուց` AfterCreate իրադարձությունից առաջ։
PostAfterCreate
public virtual Task PostAfterCreate(Document sender, AfterCreateEventArgs args);
PostAfterCreate իրադարձությունը առաջանում է փաստաթուղթը ստեղծելուց` AfterCreate իրադարձությունից հետո։
PreAfterLoad
public virtual Task PreAfterLoad(Document sender, AfterLoadEventArgs args);
PreAfterLoad իրադարձությունը առաջանում է փաստաթղթի բեռնումից անմիջապես հետո` AfterLoad իրադարձությունից առաջ։
PostAfterLoad
public virtual Task PostAfterLoad(Document sender, AfterLoadEventArgs args);
PostAfterLoad իրադարձությունը առաջանում է փաստաթղթի բեռնումից անմիջապես հետո` AfterLoad իրադարձությունից հետո։
PreBeforeCommit
public virtual Task PreBeforeCommit(Document sender, BeforeCommitEventArgs args);
PreBeforeCommit իրադարձությունը առաջանում է փաստաթղթի տվյալների պահոցում գրանցումից անմիջապես հետո տրանզակցիայի մեջ՝ BeforeCommit իրադարձությունից առաջ։
PostBeforeCommit
public virtual Task PostBeforeCommit(Document sender, BeforeCommitEventArgs args);
PostBeforeCommit իրադարձությունը առաջանում է փաստաթղթի տվյալների պահոցում գրանցումից անմիջապես հետո տրանզակցիայի մեջ՝ BeforeCommit իրադարձությունից հետո։
PreBeforeCopy
public virtual Task PreBeforeCopy(Document sender, BeforeCopyEventArgs args);
PreBeforeCopy իրադարձությունը առաջանում է փաստաթուղթը պատճենման ժամանակ` BeforeCopy իրադարձությունից հետո։
PostBeforeCopy
public virtual Task PostBeforeCopy(Document sender, BeforeCopyEventArgs args);
PostBeforeCopy իրադարձությունը առաջանում է փաստաթուղթը պատճենման ժամանակ` BeforeCopy իրադարձությունից հետո։
PreDelete
public virtual Task PreDelete(Document sender, DeleteEventArgs args);
PreDelete իրադարձությունը առաջանում է փաստաթուղթը ջնջելու ժամանակ տրանզակցիայի մեջ` Delete իրադարձությունից առաջ։
PostDelete
public virtual Task PostDelete(Document sender, DeleteEventArgs args);
PostDelete իրադարձությունը առաջանում է փաստաթուղթը ջնջելու ժամանակ տրանզակցիայի մեջ` Delete իրադարձությունից հետո։
PreFolders
public virtual Task PreFolders(Document sender, FoldersEventArgs args);
PreFolders իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Folders իրադարձությունից առաջ։
PostFolders
public virtual Task PostFolders(Document sender, FoldersEventArgs args);
PostFolders իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Folders իրադարձությունից հետո։
PostLoadGrids
public virtual Task PostLoadGrids(Document sender, LoadGridsEventArgs args);
PostLoadGrids իրադարձությունը առաջանում է փաստաթղթի աղյուսակների բեռնման ժամանակ՝ LoadGrids իրադարձությունից հետո։
PreOnConfirmDocumentChangeRequest
public virtual Task PreOnConfirmDocumentChangeRequest(Document sender, ConfirmDocumentChangeRequestEventArgs args);
PreOnConfirmDocumentChangeRequest իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) փաստաթղթի փոփոխման հայտի բացման ընթացքում տրանզակցիայի մեջ` Validate իրադարձությունից հետո և OnConfirmDocumentChangeRequest իրադարձությունից առաջ։
PostOnConfirmDocumentChangeRequest
public virtual Task PostOnConfirmDocumentChangeRequest(Document sender, ConfirmDocumentChangeRequestEventArgs args);
PreOnConfirmDocumentChangeRequest իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) փաստաթղթի փոփոխման հայտի բացման ընթացքում տրանզակցիայի մեջ` Validate, OnConfirmDocumentChangeRequest իրադարձություններից հետո։
PostStoreGrid
public virtual Task PostStoreGrid(Document sender, StoreGridsEventArgs args);
PostStoreGrid իրադարձությունը առաջանում է փաստաթղթի աղյուսակի պահպանման ժամանակ` StoreGrids իրադարձությունից հետո։
PreValidate
public virtual Task PreValidate(Document sender, ValidateEventArgs args);
PreValidate իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Validate իրադարձությունից առաջ։
PostValidate
public virtual Task PostValidate(Document sender, ValidateEventArgs args);
PostValidate իրադարձությունը առաջանում է փաստաթղթի պահպանման ժամանակ (Store) տրանզակցիայի մեջ` Validate իրադարձությունից հետո։