When you are asked to describe what is Sage ERP X3 Development Platform at a high level there is usually a long pause, then a few starts and stops, followed by various interpretations of what it is. I am not an expert on this subject in way, yet. We have other folks on our team who cover this area. I am however, on paper a Sage ERP X3 Certified Developer but just a beginner in terms of what I would consider to be a true veteran in the subject matter.
This is not to provide any in-depth Sage ERP X3 Developer knowledge or skills but just to summarize the various SAFE X3 components from a high level. First of all what is SAFE X3 Technology. It is the Sage Application Framework for the Enterprise. It is a strategic development platform for midsize enterprise applications by Sage.
The diagrams in this post are from various resources created and released by Sage over the past 2 years in various documents and publications. They are all property of Sage and just used in this post to serve as a visual aid for you.
SAFE X3 Development
- 4GL Integrated Development Environment provided at no extra cost
- Meta data managed, with a clear differentiation of the standard, industry-specific and custom development layers
- IDE includes documentation and delivery tools
- Multi-lingual components and data management
- Protection of enterprise-specific modifications from standard updates or upgrades
- 4GL code independent from both the execution environment (Windows, Linux, Unix) and the user interface (Windows client, web browser, portable terminals …)
Development Principles
- A standard, integrated set of development tools
- Meta data construction (standard library for database and BI
design, UI descriptions, actions, parameters, reports, documentation…) - Final code (p-code, XML description) generated from meta data
- Standard program editor
- Optimization, debugging, packaging and transport tools
- Online documentation generator
- Meta data construction (standard library for database and BI
- Specific elements added to X3 dictionary are signed with an Activity Code
- Activation or de-activation of the specific element
- Identification for patch extraction and transport
- Protection from standard upgrades or patches
- Custom developments can be identified as :
- Industry-specific (packaged and reusable)
- Enterprise-specific (can overwrite industry-specific developments)
- The standard patch generation tool can ship and/or upgrade :
- Vertical modules, specific developments
- Data, Parameters
- Documentation …
Multi-Language Support
- A choice of language at user's connection: English, French, Spanish, Chinese, Italian, Portuguese and German (they are constantly adding to this list as well)
- Translation tools are available as part of the SAFE X3 platform
- Fully UNICODE (UTF8 / UCS2) development tools
- Translations managed by the development and deployment tools
- Including Crystal™ Reports components and Business Objects™ dictionaries
- Supporting multi-language data (product designations, incoterms, reminders, etc.)
- Localization support
- Prebuilt demo folders per country
- Localization elements may be activated individually
- Dedicated tools for custom localization developments
Web Services simplify connectivity to external applications
- SOAP/WSDL publication
- Templates models able to expose:
- The Safe X3 object model (CRUD)
- Any Safe X3 method (subprogram with arguments)
- Based on a Web application of the Safe X3 web server, that manages the services requests and the connection to SAFE X3 server
- Simply manage dynamic web applications through "tokens" integrated in the HTML code
- Leverage prebuilt Web Services connections for e-commerce
- As users request a given URL, Sage Xtend analyzes the request, calls the corresponding SAFE X3 service, replaces the tokens with the actual X3 application data and displays the HTML page.
NOTE: Web service is today using SOA/WSDL and generic connectors; but the next version (already integrated in Xtend) will also allow an REST integration through the support of Sage sdata (sage open standard based on REST protocol, on ATOM (RSS) data flows, that used by every sage solution in the future).
SAFE X3 Java Bridge Library
In order to add easily technical functionalities to the X3 platform, a new component was added: the Java Bridge server. In order to avoid developments in the traditional X3 engine, it was decided to make available a request for a processing to be carried out in another Adonix server. The component « Sage X3 Java server » has the same presence as a traditional X3 engine: it listens to a port just as the "deamon adxd" does.
The component "Safe X3 Java Bridge Server" is an extensible server which publishes technical functionalities for the application server of the "Sage MGE X3" software. The component "Safe X3 Java Bridge Server" is now developed in Java around an OSGI framework. The published functionalities are implemented in the form of "OSGI bundles".
Database back-end
- Microsoft SQL Server
- Oracle