Welcome! The Developer Zone is the place to learn about extending and modifying xTuple ERP.
The xTuple ERP application is written using Qt development tools, so it is helpful to know something about Qt before you begin. Qt is an application framework written in C++ and used to develop multiplatform applications. With version 3.0 of the xTuple Application we have also added support for Javascript extensions. This, in conjunction with a number of other design tools, constitute a toolkit to build xTuple extensions without modifying core source code.
|

|

|
|
The extension method is the right way to change xTuple ERP in the following cases:
- You are modifying xTuple ERP for a particular industry
- Your solution applies mostly to your local situation
- You are a "casual programmer" comfortable with scripting languages but not C++
- You are a third-party developer who would like to sell your extensions in the xChange
|
Altering core source code is the right way to change xTuple in the following cases:
- You want your code to be documented as part of the main software and supported in future upgrades
- You want to give back to the PostBooks user community
- The feature you are adding would useful to the general user base
- You are an accomplished programmer comfortable with coding in C++
|
What can you do with extensions?
- Change existing core screens
- Build new screens from scratch
- Customize business logic
- Create customized reports
- Create customized menus
- Integrate with web services
- Bundle extensions into a loadable package.
Learn more...
|
What might be candidates for changes to the core?
- Fundamental changes to business logic, such as a new costing method
- Changes that affect general application behavior, look or feel.
- General accounting features that automate transaction flow
- Improving extension capabilities
- Integration with widely used products or services such as office documents or online banking
Learn more...
|
It's important to understand the difference between writing extensions to the software and modifying the core. We provide a fully-documented mechanism for extending the software and we generally recommend this method.
Changing existing core screens
Currently I am interested in modifying the core screen of xTuple to streamline it as an import/export startup.
I've looked over the files and I believe the core screens are hardcoded into the client, so I believe that there might be a error when it is claimed that the extensions are able to
1. Change existing core screens
Keep reading. You can write
Keep reading. You can write Javascript to modify core screens.
Regarding import/export, you might want to look at what we're doing with embedding the CSV import tool into the client, and expanding XML import/export capabilities, before taking on anything big in that area. Can you describe what you're looking to do? (Ideally in the New Development forum?)