In this session, Gabriel will introduce you to the power of the Acumatica platform, by building a complete solution from scratch that leverages many of the unique features of Acumatica such as the mobile framework, dynamic web services and the test automation framework. All the content used in this showcase is available on GitHub at https://github.com/gmichaud/acumatica-bobrentalldemo, so that you can re-do the same demo in front of your prospects.
2. Goals of this Session
1. Understand what is the Acumatica platform, and
why it is important to you and your customers
2. Review the many ways the platform can be
leveraged to meet unique customers demands
3. Highlight some of the new Acumatica 5.0
features, like MySQL, the mobile framework, and
the versioned web services API
4. Provide you with the tools that you need to make
the same demo with your prospects
5. Acumatica Platform Architecture
Application
AcumaticaStudio
Acumatica
Application
MicrosoftVisualStudioIDE
Data Access
Layer
Business Logic
Layer
Presentation
Data Access
Layer
System Foundation Layer
Report
Management
User
Management
Customization
Tools
Localization
Tools
Application
Frameset
Security
Management
Help
Management
Document
Management
Application Foundation Layer
Report
Management
Localization
Tools
Application
Frameset
Security
Management
Help
Management
Document
Management
Customization
Tools
User
Management
Web Form (ASP.NET) Web Service (WSDL)
Business Logic Container
Data Access Class
Database Web Services Session
BusinessLogicLayerPresentationLayerDataAccessLayer
Entity Model Entity Business Logic
DAC Reference
DAC Reference
DAC Reference
DAC Reference
Actions
-PXSave
-PXDelete
-PXNext
-PXPrev
Events
-Row_Inserted0
-Row_Updated0
-Row_Deleted0
-Field_Verifying0
-Field_Updating0
9. Creating a New Page
• Defining the data access class (DAC)
• Creating the business logic container (BLC)
• Creating the page (ASPX)
• Adding the page to the sitemap
10. Validating Data
• Making the Description field required
• Validating the Serial Number (BOB- prefix)
11. What do we have at this point?
• A rich, interactive page that can be used in all the
popular web browsers, including iPad and other
tablets
• All the Acumatica platform features for “free”
• … and as you’ll see in part 2, the ability to
seamlessly access from web services, external
applications, and our new native iPhone/Android
applications!
12. Part 2 – Testing,
integrating and
mobile-enabling
our page
15. Integrating with the ERP
• Introduce the Extensibility Framework
• Integrate with SO Order (pre-fill rental and
redirect)
16. Using Web Services to Connect
Web Site to ERP
Bob Rent All Web SiteExternal Web Site
User
17. Mobile-Enabling Our Page
• Creating the XML mapping for
the app
• Publishing the mapping
• Accessing from iPhone
• Accessing from Android
18. Wrap-Up
Key Takeaway: Mastering the platform can drive the
success of your Acumatica practice!
All my samples will be posted to GitHub -
https://github.com/gmichaud/acumatica-
bobrentalldemo
To further explore the Acumatica Platform:
• Framework Documentation (online help, PDF)
• T200 Class on Acumatica University
• http://adn.acumatica.com/forums/
• Need help? Acumatica tag on StackOverflow
Questions?
Present myself and my role at Acumatica (the bridge between the engineering team, sales & marketing teams; the voice of the customer and partner for product development and design)
Today I’m here to present you…
Q: who attended
Behind any large construction – whether it is an ERP, or a house – there should be a concern for architecture. Without it, results can be unpredictable.
<VIDEO>
To me, the platform is the most significant portion of the Acumatica ERP, and who that every partner organization should master. Today, I’m going to show you the power of this platform, and how it can help you address your customer’s requirements, grow your ERP practice, and increase the stickiness of your solutions.
Give an overview of the architecture, starting with .NET Framework
Built on the .NET Framework
Clear separation of concerns between the different layers (system foundation, application foundation, application || BLC, DAC)
Support for multiple database systems
So… what can we do with this platform???
Bob Rental specializes in short term rental of tools and heavy machinery. As part of their growth, they are looking at a cloud-based solution which would allow them to manage their accounting and inventory. They have an existing rental management system that is old and unsupported, and they would like to bring this to the cloud.
The first task is to create a screen where I’ll be able to enter the list of tools, serial number, and then enter rental history
DAC: Talk about attributes
PXDefault -> required
PXDB**** -> connected to database
Mention that attributes are extensible and that we’ll cover this later
BLC: Type by hand
ASPX: Introduce numbering concepts (1=setup, 2=maintenance, 3=Data Entry, 5=Processing – to be confirmed)
Making a field required is easy – just flag the field with an attribute, no coding required
The other request that my customer has is to validate serial numbers – all serial numbers at Bob Rentals MUST start with BOB- as a prefix
Attributes can be used for a lot more things – for example there’s an attribute that allows you to encrypt the data, which can be used for sensitive information
Platform features that come for free:
DB Independence (MySQL, MS SQL)
Multi-tenancy
Notes and Attachments
Role-based security (up to the individual fields in the row)
Audit and Notifications
Who is familiar with the concept of REGRESSION TESTING?
In a single sentence, Regression testing is the retesting of a previously tested program following modification to ensure that faults have not been introduced or uncovered as a result of the changes made.
Regression testing helps to ensure that changes made to the software code do not break other previously working parts of the software.
It is important to do regression testing frequently, because the code as a whole may easily "regress" to a lower level of quality after making a change.
Regression testing is necessary, even though a change appears to be working correctly and is believed not to affect the rest of the software.
The good news is that Acumatica has designed a complete test automation framework, that makes your life far easier. Let’s create a simple test scenario to test our screen.
Scenario 1: Create item
Scenario 2: Test validation rule
SERVERUN rental
Bob Rent All has a web site, where suppliers add new tools to the list of the available rentals. They would like to connect it to Acumatica
Existing web app with a few fields, to add tool to screen. Existing app should just accept input and say “Thank you, your tool has been added.”. We’ll connect it to Acumatica
Show that our required field, and custom serial validation works
Talk about dynamic vs static web services
TODO: Add mobile mockup
Explain merging of file
Show that our required field, and custom serial validation works
Summarize what we discussed
Key Takeaway: Mastering the platform can drive the success of your Acumatica practice!
As a Partner, mastering the platform helps you deepen relationships with your clients by delivering more value and increase stickiness of the ERP solution
Development on Acumatica is a core competency any Partner Organization should possess