Types of Items in a Customization Project
When you customize an instance of MYOB Advanced by using the Customization Project Editor, the platform stores all items of a customization project as records in the CustObject table of the database. Each record in this table contains the data of an item, including the XML code of the item in a specific field. When you add an item to the customization project, the platform adds the new record to the table, creates the XML code of the item, and stores the code within the Content field of the record.
Note: You can view the content of an item of a customization project by using the Edit Project Items of the Customization Project Editor.
XML Code of the Items
Different item types have XML code that is structured differently. For example, if you
create the UsrPersonalID bound custom field in the
CR.Contact DAC (which is mapped to the SOOrder
table) and the control for the field on the Customers (AR303000) form, the customization project might contain the following new
objects:
- An item with the following XML code to add the column to the DB
table.
<Table TableName="Contact"> <Column TableName="Contact" ColumnName="UsrPersonalID" ColumnType="string" AllowNull="True" MaxLength="15" DecimalPrecision="2" DecimalLength="15" IsNewColumn="True" IsUnicode="True" /> </Table>
- An item with the following XML code to add the field to the
DAC.
<DAC type="PX.Objects.CR.Contact"> <Field FieldName="UsrPersonalID" TypeName="string" MapDbTable="Contact" TextAttributes="#CDATA" StorageName="AddColumn"> <CDATA name="TextAttributes"> <![CDATA[[PXDBString(15)][PXUIField(DisplayName="Personal ID")]]]></CDATA> </Field> </DAC>
- An item with the following XML code to add the control to the
form.
<Page path="~/pages/ar/ar303000.aspx" ControlId="5" pageSource="...binary content of the page..."> <PXFormView ID="DefContact" ParentId="phG_tab_Items#0_DefContact" TypeFullName="PX.Web.UI.PXFormView"> <Children Key="Template"> <AddItem> <PXTextEdit TypeFullName="PX.Web.UI.PXTextEdit"> <Prop Key="Virtual:ApplyStylesheetSkin" /> <Prop Key="ID" Value="CstPXTextEdit2" /> <Prop Key="DataField" Value="UsrPersonalID" /> <Prop Key="CommitChanges" Value="True" /> </PXTextEdit> </AddItem> </Children> </PXFormView> </Page>
Note that the items in these code blocks differ by type (Table, DAC, and Page) and structure.
Item Types Within a Customization Project
All the possible types of items in a customization project are summarized in the following
table. The value in the Can Be Unpublished column identifies whether the changes
introduced by the item type are reversed when you unpublish the customization project. For
details on which changes are reversed, see Unpublishing Customization Projects.
Item Type (XML Tag, if differs) | Object | Description | Form for Editing | Can Be Unpublished |
---|---|---|---|---|
Page | A custom form, or changes to an existing form |
|
Screen Editor | Yes |
AutomationScreenCondition | A condition that changes the business logic of a customized screen | A data set containing a list of conditions for a customized screen | Condition Editor (seeConditions for details) | Yes |
AUScreenAction | An action that changes the business logic of a customized screen | A data set containing the properties of an action | Screen Editor | Yes |
AUScreenNavigationAction |
An action that changes the business logic of a customized screen and navigates to another screen | A data set containing the properties of an action | Screen Editor | Yes |
AutomationScreenField | A field to which conditions are applied | A data set containing the properties of a field | Screen Editor | Yes |
DAC | Changes to an existing data access class | The data required to create the corresponding extension for the original data access class | Data Class | Yes |
Table | Changes to the schema of an existing database table | A definition of the custom columns added to a table for bound custom fields created in the appropriate DAC | Table Editor (see Edit Table Columns Dialog Box for details) | No |
Code (Graph) | Custom C# code |
|
Code Editor | Yes |
File | Custom file | The path to a custom file and the GUID of the file content in the file storage of the database. The path is relative to the website folder; new custom forms are added to the project as custom files. | File Editor (see Custom Files for details) | Yes |
GenericInquiryScreen | Custom or customized generic inquiry | A data set of a custom or customized generic inquiry form | Generic Inquiry (SM208000) form | No |
Report | Custom MYOB Advanced Report Designer report | A data set of a custom report created by using the MYOB Advanced Report Designer | MYOB Advanced Report Designer | No |
Dashboard | Custom or customized dashboard | A data set of a custom or customized dashboard | Dashboards (SM208600) form | No |
SiteMapNode | Custom or customized site map node | A data set of a custom or customized site map node (which includes information about the location of the custom form or report); you should create a custom site map node for each custom form or report included in the customization project | Site Map (SM200520) form | No |
Sql | Custom SQL script | A custom database table definition or custom SQL script that has to be executed while the customization project is published | SQL Script Editor (see Edit SQL Script Dialog Box for details) | No |
Locale | Custom locale | A data set of a custom system locale, which is a set of parameters that defines the language and other local preferences—such as how to display numbers, dates, and times in the user interface—for a group of users | System Locales (SM200550) form | No |
XportScenario | Custom integration scenario | A data set of a custom export or import scenario used to perform data migration between a legacy application and MYOB Advanced | Import Scenarios (SM206025) form and Export Scenarios (SM207025) form | No |
SharedFilter | Custom shared filter | A data set of a custom reusable shared filter created on a processing or inquiry form | Filters (CS209010) form | No |
ScreenWithRights | Custom access rights to a form | A data set of the custom access rights of roles to a form, down to the control of form elements, such as buttons, text boxes, and check boxes | Access Rights by Screen (SM201020) form | No |
WikiArticle | Custom wiki module | A data set of a custom wiki and all the articles created within this wiki | Wiki (SM202005) form | No |
EntityEndpoint | Custom web service endpoint | A data set of a custom web service endpoint | Web Service Endpoints (SM207060) form | No |
ReportDefinition | Custom analytical report | A data set of a custom analytical report, including the data of the predefined sets of rows, columns, and units | Report Definitions (CS206000) form | No |
PushNotification | Push notification configuration | A data set that includes the push notification destination and the data query that defines for which data changes MYOB Advanced sends notifications | Push Notifications (SM302000) form | No |
BpEvent | Business event | A data set of a business event | Business Events (SM302050) form | No |
MobileSiteMap | Mobile app screen | A script for adding or changing a mobile app screen | Mobile App Editor (see Mobile Application for details) | Yes |
CSAttribute | User-Defined Field | A data set of a user-defined field with a list of screens on which the field is displayed | User-Defined Fields Editor | Yes |
Webhook | Webhook | A description of a webhook for an external application and identification parameters of the webhook. | Webhooks (SM304000) form | No |
OAuthClient | Connected Application | A dataset of properties of a connected application and identification parameters of the connected application. | Connected Applications (SM303010) form | No |