Thank you Ashish.Maybe a simpler way to submit the service could be to run it from this screen:
https://localhost:8443/webtools/control/runService (with Service = productImportFromSpreadsheet) Jacopo On Jun 5, 2009, at 11:33 AM, Ashish Vijaywargiya wrote:
Updated document is provided on http://docs.ofbiz.org/display/OFBIZ/Import+Data+Using+Apache+POI+api Thanks ! -- Ashish On Fri, Jun 5, 2009 at 12:21 PM, <[email protected]> wrote:Author: ashish Date: Fri Jun 5 06:51:03 2009 New Revision: 781926 URL: http://svn.apache.org/viewvc?rev=781926&view=rev Log: Wrong location was specified for this service. Minor fix in code to return error and success message.I will create the "How To" docs for this in next few hours on the OFBizconfluence. As the present document is present in OFBIZ-1810. Modified: ofbiz/trunk/applications/product/servicedef/services.xmlofbiz/trunk/applications/product/src/org/ofbiz/product/ spreadsheetimport/ImportProductServices.javaModified: ofbiz/trunk/applications/product/servicedef/services.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/servicedef/services.xml?rev=781926&r1=781925&r2=781926&view=diff= = = = = = = = = ===================================================================== --- ofbiz/trunk/applications/product/servicedef/services.xml (original) +++ ofbiz/trunk/applications/product/servicedef/services.xml Fri Jun 506:51:03 2009 @@ -1235,7 +1235,7 @@ </service> <service name="productImportFromSpreadsheet" engine="java" - location="org.ofbiz.poi.ImportProductServices" invoke="productImportFromSpreadsheet" auth="true"> + location="org.ofbiz.product.spreadsheetimport.ImportProductServices" invoke="productImportFromSpreadsheet" auth="true"> <description>Create product and inventory item</description> <attribute name="dirName" type="java.lang.String" mode="IN" optional="true"/> </service> Modified:ofbiz/trunk/applications/product/src/org/ofbiz/product/ spreadsheetimport/ImportProductServices.javaURL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/spreadsheetimport/ImportProductServices.java?rev=781926&r1=781925&r2=781926&view=diff= = = = = = = = = =====================================================================---ofbiz/trunk/applications/product/src/org/ofbiz/product/ spreadsheetimport/ImportProductServices.java(original) +++ofbiz/trunk/applications/product/src/org/ofbiz/product/ spreadsheetimport/ImportProductServices.javaFri Jun 5 06:51:03 2009 @@ -60,7 +60,6 @@ */ public static Map<String, Object>productImportFromSpreadsheet(DispatchContext dctx, Map<String, ? extendsObject> context) { GenericDelegator delegator = dctx.getDelegator(); - Map<String, Object> responseMsgs = FastMap.newInstance();// System.getProperty("user.dir") returns the path upto ofbiz home// directory String path = System.getProperty("user.dir") + "/spreadsheet"; @@ -78,17 +77,14 @@ } } } else {- Debug.logWarning("Directory not found or can't be read",module); - return responseMsgs;+ return ServiceUtil.returnError("Directory not found or cannot be read"); } } else {- Debug.logWarning("No path specified, doing nothing", module);- return responseMsgs; + return ServiceUtil.returnError("No path specified, doing nothing"); } if (fileItems.size() < 1) {- Debug.logWarning("No spreadsheet exists in " + path, module);- return responseMsgs;+ return ServiceUtil.returnError("No spreadsheet exists in" +path); } for (File item: fileItems) { @@ -102,7 +98,7 @@ wb = new HSSFWorkbook(fs); } catch (IOException e) { Debug.logError("Unable to read or create workbook from file", module); - return responseMsgs;+ return ServiceUtil.returnError("Unable to read or createworkbook from file"); } // get first sheet @@ -113,18 +109,17 @@ if (row != null) {// read productId from first column "sheet column index// starts from 0" - HSSFCell cell1 = row.getCell((int) 1); - cell1.setCellType(HSSFCell.CELL_TYPE_STRING); - String productId = cell1.getRichStringCellValue().toString(); + HSSFCell cell2 = row.getCell((int) 2); + cell2.setCellType(HSSFCell.CELL_TYPE_STRING); + String productId = cell2.getRichStringCellValue().toString(); // read QOH from ninth column - HSSFCell cell8 = row.getCell((int) 8); + HSSFCell cell5 = row.getCell((int) 5); BigDecimal quantityOnHand = BigDecimal.ZERO; - if (cell8 != null && cell8.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) - quantityOnHand = new BigDecimal(cell8.getNumericCellValue()); + if (cell5 != null && cell5.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) + quantityOnHand = new BigDecimal(cell5.getNumericCellValue());// check productId if null then skip creating inventoryitem // too. - boolean productExists = ImportProductHelper.checkProductExists(productId, delegator); if (productId != null && !productId.trim().equalsIgnoreCase("") && !productExists) { @@ -137,8 +132,7 @@ .getNextSeqId("InventoryItem"))); } int rowNum = row.getRowNum() + 1; - if (row.toString() != null && !row.toString().trim().equalsIgnoreCase("") && products.size() > 0 - && !productExists) { + if (row.toString() != null && !row.toString().trim().equalsIgnoreCase("") && productExists) {Debug.logWarning("Row number " + rowNum + " notimported from " + item.getName(), module); } } @@ -162,6 +156,6 @@ if (products.size() > 0)Debug.logInfo("Uploaded " + uploadedProducts + " productsfrom file " + item.getName(), module); } - return responseMsgs; + return ServiceUtil.returnSuccess(); } }
smime.p7s
Description: S/MIME cryptographic signature
