Si,
There is certainly room for enhancements in the area of more standard
data imports and exports as far as the user is concerned. For example
questions often arise like "Can I have a list of all products and their
prices?" and soon as you deliver a flattened version of the xml export
files in Excel they come back with "here's the new price list!"
expecting it to magically import back in. Obviously this has
complications as the data structure for OFBiz is very flexible and
something simple like price updates could be difficult with multiple
currencies, date ranges and pricing types but I'm sure for a large
percentage of users a product has a price in a currency so a simplified
import/export feature would be very useful.
I had thought this sort of feature would fall into the "DataIO" tab that
I added in the catalog application for the froogle merchant export:
http://jira.undersunconsulting.com/browse/OFBIZ-886
Ray
Si Chen wrote:
Hi everybody. I've been thinking about importing data into ofbiz.
One of the issues is that we have a highly normalized data model which
would require extensive mapping from external systems. Nevertheless,
I think it is possible to create some standard "template" entities for
importing data and thus create a standard practice and, eventually,
standard tools for doing it. Here's what I'm thinking, given in the
context of importing product data:
1. Create a standard non-normalized "holding" entity which contains
productId, quantity on hand, available to promise, average cost,
reorder point. Note that none of these are linked to any entity in
ofbiz.
2. Add a timestamp fields to identify when the data was loaded into
the "holding" entity and when it was imported into ofbiz.
3. Write a standard datafile xml import template which corresponds to
this "holding" entity.
4. Write some processing script or service which takes new data from
the holding entity and insert it into ofbiz. For example, in this
case it would be to create InventoryItem, ProductAverageCost, and
maybe some AcctgTrans (maybe . . .)
It may be most efficient to write these holding entities corresponding
to popular software programs where people might want to import data
from, so they can mirror those programs' data layout more easily.
Si