Skip to main content
Lesson 1

Creating a Customization Project

Back to T190: QuickStartInCustomization

Lesson 1: Creating a Customization Project

In this lesson, you will create a customization project for this training course, load the customization project prepared for the course, bind the customization project to the extension library (which contains the customization source code), and publish this project. A customization project is a set of changes to the user interface, configuration data, and functionality of Acumatica ERP. The customization project holds the changes that have been made for a particular customization, which might include changes to the mobile site map, generic inquiries, and the properties of UI elements. To apply the content of a customization project to an instance of Acumatica ERP, you have to publish the project. Before the project is published, the changes exist only in the project and are not yet applied to an instance. For details on customization projects, see Customization Project.

Lesson Objectives

As you complete this lesson, you will learn how to do the following:

  • Create a customization project
  • Load a customization project from a local folder
  • Bind a customization project to an extension library
  • Publish a customization project

Step 1.1: Creating a Customization Project

The creation of a customization project is a first step in the customization of Acumatica ERP. To create the customization project you will use in this course, do the following:

  1. In Acumatica ERP, open the Customization Projects (SM204505) form.
  2. On the form toolbar, click Add Row.
  3. In the Project Name column, enter the customization project name: PhoneRepairShop.
  4. On the form toolbar, click Save.
    You have created the customization project. In the next step, you will open the Customization Project Editor and begin the customization. Related Links
  • Customization Projects: To Create a Customization Project

Step 1.2: Loading Items to the Customization Project

In this step, you will begin working in the Customization Project Editor and will load customization items from the customization project that has been prepared for this training course into the customization project created in the previous lesson. The customization project that has been prepared for this training course contains the changes that have been implemented for the customization of Acumatica ERP for the Smart Fix company. (These changes are described in Company Story and Customization Description.) Lesson 1: Creating a Customization Project | 11

Loading the Items to the Customization Project

To load items form the customization project prepared for this training course, do the following:

  1. On the Customization Projects (SM204505) form, click PhoneRepairShop in the table to open the customization project that you have created.
  2. On the menu of the Customization Project Editor, click Source Control > Open Project from Folder.
  3. In the dialog box that opens, specify the path to the Customization\T190\SourceFiles \PhoneRepairShop local folder, which you have downloaded from Acumatica GitHub in Initial Configuration, and click OK.
    The items of the customization project have been loaded, as shown in the following screenshot.
           The Customized Screens page can contain rows with empty Screen ID and Title because the
           customization project has not been published yet.
    

    Figure: Items of the customization project
    Related Links
  • To Update the Content of a Project from a Local Folder

Step 1.3: Binding the Extension Library

In this step, you will bind the PhoneRepairShop customization project to the extension library that contains source code of customization items you have loaded to the customization project. Lesson 1: Creating a Customization Project | 12

Binding the Extension Library

To bind the customization project to the source code of the extension library, do the following:

  1. Copy the Customization\T190\SourceFiles\PhoneRepairShop_Code folder to the App_Data \Projects folder of the Acumatica ERP instance that you have prepared for this training course.
                  By default, the system uses the App_Data\Projects folder of the website as the parent
                  folder for the solution projects of extension libraries.
                  If the website folder is outside of the C:\Program Files (x86), C:\Program Files,
                  and C:\Users folders, we recommend that you use the App_Data\Projects folder for
                  the project of the extension library.
                  If the website folder is in the C:\Program Files (x86), C:\Program Files, or C:
                  \Users folder, we recommend that you store the project outside of these folders to avoid an
                  issue with permission to work in these folders. In this case, you need to update the links to the
                  website and library references in the project.
    
  2. On the menu of the Customization Project Editor, click Extension Library > Bind to Existing.
  3. In the dialog box that opens, specify the path to the App_Data\Projects\PhoneRepairShop_Code folder, and click OK.
  4. Open the Visual Studio solution and build the PhoneRepairShop_Code project.
    Related Links
  • Extension Library (DLL) Versus Code in a Customization Project

Step 1.4: Publishing the Customization Project

In this step, you will publish the PhoneRepairShop customization project to apply the changes in this project to the Acumatica ERP instance.

Publishing the Customization Project

To publish the project, do the following:

  1. Open the PhoneRepairShop customization project in the Customization Project Editor.
  2. Click Files on the le pane of the Customization Project Editor. The Custom Files page opens.
  3. On the page toolbar, click Detect Modified Files. Because you have rebuilt the extension library in the PhoneRepairShop_Code Visual Studio project, the Bin\PhoneRepairShop_Code.dll file has been modified.
  4. In the Modified Files Detected dialog box, which opens, make sure the Selected check box is selected for the Bin\PhoneRepairShop_Code.dll file, and click Update Customization Project.
  5. Close the dialog box.
  6. On the menu of the Customization Project Editor, click Publish > Publish Current Project. The Compilation panel opens, which shows the progress of the publication.
  7. Close the Compilation panel when the publication has completed and the Website updated message is displayed. Lesson 1: Creating a Customization Project | 13
    Related Links
  • Publishing Customization Projects

Step 1.5: Reviewing the Changes in Acumatica ERP

In this step, you will review the changes to the Acumatica ERP instance that have been applied as a result of the publication of the PhoneRepairShop customization project.

Reviewing the Changes

Review the changes as follows:

  1. Open your Acumatica ERP instance for the training course.
  2. On the main menu, notice the Phone Repair Shop workspace, (shown in the following screenshot), which had not been on the menu previously. The workspace contains the custom Acumatica ERP forms that have been developed for the Smart Fix company, as well as the Stock Items (IN202500) form, which will be modified as part of the customization in this course.
       Figure: The Phone Repair Shop workspace
    
  3. Open the Repair Services (RS201000) form, and review its content and functionality, which is shown in the following screenshot. Lesson 1: Creating a Customization Project | 14
      Figure: The Repair Services custom form
    
  4. Open any other forms in the Phone Repair Shop workspace, and review their content and functionality.
  5. In Microso SQL Server Management Studio, connect to the database of your Acumatica ERP instance for the training course. Find the database tables with names that start with RSSV. These are the custom tables that have been added during the publication of the customization project.
  6. Open the Acumatica ERP instance folder in the file system. Notice the following files and folders:
  • Pages\RS: Contains the ASPX code of the custom forms. The forms have the RS prefix in their IDs; therefore, they are placed in the custom RS subfolder.
  • InputData: Contains CSV files with the data for the custom tables. This data is inserted in the database by the InputData customization plug-in, which is included in the customization project.
  • CstPublished\pages_RS: Contains the published code of the custom ASPX pages.
  • Bin\PhoneRepairShop_Code.dll: Contains the customization source code in an extension library.

Lesson Summary

In this lesson, you have learned how to create a customization project, load content to a customization project from a local folder, bind the project to an extension library, and publish the project. The following diagram shows the changes that have been applied to the Acumatica ERP instance for the training course aer the customization project has been published. Lesson 1: Creating a Customization Project | 15

Additional Information: Customization Project Management

In this lesson, you have created and published a customization project. Other ways to manage customization projects is outside of the scope of this course, as is the management of different types of items in customization projects. You can find examples of ways to work with customization projects and to include different types of items in a customization project in the following training courses:

  • T200 Maintenance Forms
  • T210 Customized Forms and Master-Detail Relationship
  • T220 Data Entry and Setup Forms
  • T240 Processing Forms
  • Activity 1.1.1: To Create a Simple Processing Form
  • W140 Customization Projects
  • Customization Projects: To Create a Customization Project
  • Customization Items: To Add Items to the Customization Project
  • Project Publication: To Deploy a Customization Project
  • Project Publication: To Publish Two Customization Projects Lesson 2: Creating Custom Fields | 16