diff --git a/source/Plugins/AyaNova.Plugin.V8/util.cs b/source/Plugins/AyaNova.Plugin.V8/util.cs index f3f352d..2c6a537 100644 --- a/source/Plugins/AyaNova.Plugin.V8/util.cs +++ b/source/Plugins/AyaNova.Plugin.V8/util.cs @@ -340,30 +340,101 @@ namespace AyaNova.PlugIn.V8 } } - public enum AyaType : int - { + /// + /// All AyaNova types and their attributes indicating what features that type will support (tagging, attachments etc) + /// + public enum AyaType : int + { + //COREBIZOBJECT attribute must be set on objects that are: + //Attachable objects can have attachments, + //wikiable objects can have a wiki + //reviewable objects can have a review which is basically the same as a Reminder but with an object attached (was follow up schedmarker in v7) + //PIckList-able (has picklist template) + //Pretty much everything that represents some kind of real world object is wikiable or attachable as long as it has an ID and a type + //exceptions would be utility type objects like datalistview, formcustom etc that are not + + //NOTE: NEW CORE OBJECTS - All areas of server AND CLIENT code that require adding any new core objects have been tagged with the following comment: + //CoreBizObject add here + //Search for that IN SERVER AND CLIENT CODE and you will see all areas that need coding for the new object + + //***IMPORTANT: Also need to add translations for any new biz objects added that don't match exactly the name here in the key + //because enumlist gets it that way, i.e. "Global" would be the expected key + + NoType = 0, + Global = 1, + //Corebiz + Widget = 2,//attachable, wikiable, reviewable + //Corebiz + User = 3,//attachable, wikiable, reviewable + ServerState = 4, + License = 5, + LogFile = 6, + PickListTemplate = 7, + //Corebiz + Customer = 8, + ServerJob = 9, + //Corebiz + Contract = 10, + TrialSeeder = 11, + Metrics = 12, + Translation = 13, + UserOptions = 14, + //Corebiz + HeadOffice = 15, + //Corebiz + LoanUnit = 16, + FileAttachment = 17, + DataListView = 18, + FormCustom = 19, + //Corebiz + Part = 20, + //Corebiz + PM = 21, + //Corebiz + PMItem = 22, + //Corebiz + PMTemplate = 23, + //Corebiz + PMTemplateItem = 24, + //Corebiz + Project = 25, + //Corebiz + PurchaseOrder = 26, + //Corebiz + Quote = 27, + //Corebiz + QuoteItem = 28, + //Corebiz + QuoteTemplate = 29, + //Corebiz + QuoteTemplateItem = 30, + //Corebiz + Unit = 31, + //Corebiz + UnitModel = 32, + //Corebiz + Vendor = 33, + //Corebiz + WorkOrder = 34, + //Corebiz + WorkOrderItem = 35, + //Corebiz + WorkOrderTemplate = 36, + //Corebiz + WorkOrderTemplateItem = 37 + + + //NOTE: New objects added here need to also be added to the following classes: + //AyaNova.Biz.BizObjectExistsInDatabase + //AyaNova.Biz.BizObjectFactory + //AyaNova.Biz.BizRoles + //AyaNova.Biz.BizObjectNameFetcherDIRECT + //and in the CLIENT in ayatype.js + + //and need TRANSLATION KEYS because any type could show in the event log at teh client end + + } - NoType = 0, - Global = 1, - Widget = 2,//attachable, wikiable, reviewable - User = 3,//attachable, wikiable, reviewable - ServerState = 4, - License = 5, - LogFile = 6, - PickListTemplate = 7, - DEPRECATED_REUSELATER_08 = 8, - ServerJob = 9, - AyaNova7Import = 10, - TrialSeeder = 11, - Metrics = 12, - Translation = 13, - UserOptions = 14, - DEPRECATED_REUSELATER_15 = 15, - DEPRECATED_REUSELATER_16 = 16, - FileAttachment = 17, - DataListView = 18, - FormCustom = 19 - }