Apache OFBiz: Real-World Open Source Java Platform ERP

–Ean Schuessler –Open for Business Project, Apache Foundation http://ofbiz.apache.org
TS-7900
2007 JavaOneSM Conference | Session XXXX |

Apache OFBiz
Manage your business with Free Software

A quick tour of OFBiz and its features so that you can try it in your own business.

2007 JavaOneSM Conference | Session XXXX |

2

Agenda What is OFBiz? Getting started. Its about Community. Technical overview. 2007 JavaOneSM Conference | Session XXXX | 3 . Using the software.

Using the software.Agenda What is OFBiz? Getting started. Its about Community. 2007 JavaOneSM Conference | Session XXXX | 4 . Technical overview.

2007 JavaOneSM Conference | Session XXXX | 5 .What is OFBiz? ● ● ● OFBiz provides turn-key software for managing the operation of a business. OFBiz is Free Software written for the Java VM. OFBiz is also a library of pre-made processes and data structures that can be used as a kit for building customer business software without starting from scratch.

blogging. tasks. documents.) Accounting (invoice. events. fixed assets) Customer relationship management (Sales force automation) Content management (product content and reviews. order and sales management) Warehouse management and fulfillment (auto stock moves.OFBiz Features ● ● ● ● ● ● Advanced e-commerce (integrated catalog. payment & billing accounts. etc) 2007 JavaOneSM Conference | Session XXXX | 6 . pack & ship) Manufacturing (manufacturing. etc. forums. smart pricing. batched pick.

2007 JavaOneSM Conference | Session XXXX | 7 . 2001 First 6 Months: identified universal data model and basic platform objectives Next 3 Years: community building.A Short History of OFBiz ● ● ● ● ● Conceived May 13th. iterative development and refinement of framework Apache Top Level Project in December 2006 Recent Years: extensive improvement and refactoring and improvement of base enterprise application.

Using the software. Its about Community. 2007 JavaOneSM Conference | Session XXXX | 8 .Agenda What is OFBiz? Getting started. Technical overview.

2007 JavaOneSM Conference | Session XXXX | 9 ./start-ofbiz.. $ . startup messages .apache.A Quick Start ● Pull down the latest from SVN.. build and run $ svn co http://svn...sh ./ant run-install . checkout messages ... ● This will give a base install running on an embedded Derby database and web services listening on port 8080.....org/repos/asf/ofbiz/trunk ofbiz .. $ . build messages ..

Using the software.Agenda What is OFBiz? Getting started. Technical overview. 2007 JavaOneSM Conference | Session XXXX | 10 . Its about Community.

many other features. 2007 JavaOneSM Conference | Session XXXX | 11 . Customers can ship orders to multiple destinations in one shopping session. Products and prices can be configured to appear on specific dates. Many. create or use gift cards.http://localhost:8080/ecommerce OFBiz provides all the functionality you expect in a shopping cart.

2007 JavaOneSM Conference | Session XXXX | 12 .Configurable products This sample product is a configurable PC. Configurable products can drive complex pricing schemes that even include labor costs. The user can specify a variety of options on the product. Configuration of the options impacts the final sale price based on the components included.

Demo 2007 JavaOneSM Conference | Session XXXX | 13 .

2007 JavaOneSM Conference | Session XXXX | 14 . Its about Community. Technical overview. Using the software.Agenda What is OFBiz? Getting started.

The application is completely portable. A caching infrastructure accelerates lookups. The Entity Engine interface is similar to JDBC result sets but is more powerful.Technical Overview ● The Entity Engine ● ● ● ● OFBiz apps work with relational data. Caching behavior can be tuned for each individual data structure. Entity Engine queries are database independent. 2007 JavaOneSM Conference | Session XXXX | 15 .

toMap(“orderId”. 2007 JavaOneSM Conference | Session XXXX | 16 . UtilMisc. “SHIP_TO_CUSTOMER”)). In Java: GenericValue order = delegator. myOrderId)).getRelatedByAnd(“OrderRole”.toMap(“roleTypeId”.. List billingCustomers = order... UtilMisc.Entity Engine OrderHeader orderId orderTypeId orderDate entryDate statusId etc.findByPrimaryKey(“OrderHeader”. OrderRole orderId roleTypeId partyId etc..

JMS). even procedural languages. Services can be written in any BSF (Bean Scripting Framework) language.Technical Overview ● The Service Engine ● ● ● All OFBiz functions are accessed through a single library of named services. 2007 JavaOneSM Conference | Session XXXX | 17 . Services can be delegated to other machines via SOAP or even message passing (ie. as opposed to classes.

</description> <attribute name="orderId" type="String" mode="IN" optional="false"/> <attribute name="originFacilityId" type="String" mode="IN" optional="true"/> <attribute name="setPackedOnly" type="String" mode="IN" optional="true"/> <attribute name="shipmentShipGroupFacilityList" type="List" mode="OUT" optional="false"/> </service> 2007 JavaOneSM Conference | Session XXXX | 18 .Service Engine: An Example Service <service name="quickShipEntireOrder" engine="simple" auth="true" location="org/ofbiz/shipment/shipment/ShipmentServices. All approved order items are automatically issued in full and put into one package. The shipment is created in the INPUT status and then updated to PACKED and SHIPPED.xml" invoke="quickShipEntireOrder"> <description>Quick Ships An Entire Order Creating One Shipment Per Facility and Ship Group.

Service Entity Condition Actions ● Service entity condition actions allow “AOP like” triggering of other orthogonal services when some system service is called. <!-. create invoice --> <eca service="updateShipment" event="commit"> <condition-field field-name="statusId" operator="not-equals" to-fieldname="oldStatusId"/> <condition field-name="statusId" operator="equals" value="SHIPMENT_PACKED"/> <condition field-name="shipmentTypeId" operator="equals" value="SALES_SHIPMENT"/> <action service="createInvoicesFromShipment" mode="sync"/> </eca> 2007 JavaOneSM Conference | Session XXXX | 19 .if new statusId of a SALES_SHIPMENT is SHIPMENT_PACKED.

Agenda What is OFBiz? A quick start. Community is critical. 2007 JavaOneSM Conference | Session XXXX | 20 . Technical overview.

2007 JavaOneSM Conference | Session XXXX | 21 .Agenda What is OFBiz? A quick start. Customized applications. Technical overview. Community is critical.

Apache is a stable and proven organization that businesses can safely trust in the long term. Management through the Apache Foundation ensures that there are not conflicting business interests.Community is Critical ● ● ● Software is a unique way to share successful business practices. 2007 JavaOneSM Conference | Session XXXX | 22 .

2007 JavaOneSM Conference | Session XXXX | 23 . By sharing code. small to medium size businesses can afford the kinds of custom software that is usually for large companies.Community is Critical ● ● ● Most programmers work for companies that do not produce commercial software. accounting) then more energy can be devoted to writing code that improves their specific business. If business programmers share common infrastructures (ie.

Q&A 2007 JavaOneSM Conference | Session XXXX | 24 .

For More Information ● ● http://ofbiz.com 2007 JavaOneSM Conference | Session XXXX | 25 .org ean@brainfood.apache.

Sign up to vote on this title
UsefulNot useful