Friday, March 30, 2007

OFBIZ Development r524066

146 new commits this week. SVN r 524066 builds and installs successfully. Significant changes this week:
  • Enhancements to accounting FinAccount
  • Support for XML-RPC calls
  • Improvements to MRP
  • New runtime/ folder for log files and such
  • Continued re-working of webtools (still in progress)

Accounting
  • Clean up FinAccount: moved files around, added field from OrderItem to FinAcountTrans, added FinAccountTypeGlAccount entity, postToGlAccountId field on the FinAccount entity, added actualBalance and availableBalance fields to FinAccount, amount field to FinAccountTrans (r 522087, 522089, 522107, 522108, 522187, 522476)
  • Added ownerPartyId to represent the Party that owns the account or is the customer etc, and organizationPartyId field to explicitly denote that, this should always be filled in to represent the internal organization that owns, or is liable for, the FinAccount; these could go in the FinAccountRole, but are important and should always be filled in, so adding explicit fields (r 522588)
  • Moved currencyUomId to FinAccount from FinAccountAuth; the same currency should always be used for a FinAccount, including for FinAccountTrans and FinAccountAuth and this was missing and problematically modelled in the previous model (r 522726, 522926)
  • FinAccount balance maintenance and posting services (r 522728, 522732, 522886)
  • updated financial account data model with new fields for replenishment (r 522733, 522734, 522997, 523012)
  • new services for deposit/withdraw and services to be able to use financial accounts as method of payment; also generic fulfillment service to allow creation of financial accounts from the purchase of an item; implementations still being tested (r 522735)
  • generic financial account creation from a product purchase (fulfillment services) (r 522742)
  • changes to allow financial accounts to be used as payment methods without having to actually create payment records, by using payment method type FIN_ACCOUNT and using the (already existing) finAccountId on OrderPaymentPreference (r 522744)
  • partially working payment services for financial accounts; implements payment processor interfaces and generic deposit/withdraw services (r 522749)
  • updated createFinancialAccountForStore method; will handle any type of financial account; added services for checking balance and if handle freezing/un-freezing accounts (r 522750)
  • fixed currency issues in finaccount balance code (r 522769)
  • added very simple fin account test (will try to add more later) moved entity eca to entitydef (pattern in other applications) added fin account ecas (r 522927)
  • FinAccount now allows auto-replenishment, with capture now allowing the values to go negative (r 522998)
  • added option for running just a single component's test suite: java -jar ofbiz.jar -test -component=[componentName] (r 523053)
  • FinAccount management screens and forms (r 523120, 523172)
  • updated finaccount trans code to include the amount field (as a positive number unless its an adjustment) (r 523121)
  • Some cleanups of the FinAccount forms to avoid explicit display field definitions; fixed issues with calculating availableBalance based on auths (r 523122)
  • Changed code in a bunch of places to use the FinAccount.availableBalance and actualBalance fields; this involved removing the method in FinAccountHelper to get the available and actual balances without a date specified, ie the most current values (r 523131)
  • Updated TransSum view-entity to use FinAccountTrans.amount field, small change to helper method as well (r 523146)
  • Added columns for payment and order info on FinAccountTrans (r 523174)
  • better handling of finaccount payment responses; no more error throwing, but rather return proper gateway messages and response codes (r 523464)
  • added checks to make sure that the balance fields are not null; and use ZERO instead (r 523470, 523475)
  • fixed financount status service, now does the right compareTo; removed code to mark frozen accounts in auth, now accounts are only frozen during withdraws (not auths) and moved the trigger to the eeca (r 523483)
  • added call to replenish from auth service; used when account is frozen; note replenish service will not run if not configured, regardless of how it is called (r 523517)
  • added test cc processor which 1/4 the time will decline (randomly) (r 523494, 523495)
Asset Maintenance
  • Add Orders Tab to FixedAssetMaint and clean up Tab selection (r 522294)
Base and Framework
  • Fix entity engine's upper function to allow searches for names with an apostrophe in them. (r 521954)
  • This is a fairly complete rework of the UtilCache use and the loading code in the service engine; a reload of service definitions should now be possible by clearing the cache; also removed a bunch of the other caches that were either redundant and annoying, or dangerous because clearing them would break things, perhaps unknowingly; these are some problems and really messy weird code that has been around for quite a while, finally got sick of it and decided it needed to go (r 521999)
  • Added a bit of code to put FALSE in an SQL where clause instead of an empty IN set when that is detected; not sure if this is the best way to go, but it should be close to what we want and avoid a database error as happens now; chose FALSE because even though a value in the db could either always or never match an empty set, the never match seems to make more sense because if you would normally select various values and select none, you would be excluding all, unless you consider selecting none to mean that you want to include everything... (r 522000)
  • fixes the calendarstyles.css file so that it will cascade correctly with maincss.css. (r 522317)
  • Added a new 'runtime' folder, at the same level of 'applications', 'framework' etc..., where all the runtime data such as logs, derby db files and output (such as the pdf report files that can be created with the new service) are created. Removed the logs and data folders from the framework folder. (r 522914, 523010, 523080, 523249)
  • added method to get the total number of defined parameters for a service (r 522929)
  • Changed the calcop element's field-name attribute to NOT be required; this must be another casualty of recent cleanups or something (r 523001)
  • Changed CatalinaContainer and added configuration settings for the cataling runtime directory, which is now under the ofbiz/runtime directory and that is where the work directory and such will go (r 523002)
  • Added svn:ignore to runtime sub-directories to avoid annoyances when doing various svn operations (r 523003)
  • XML-RPC now will accept un-named services parmeters in order which they appear in the servicedef (r 523051)
  • added VERY simple xml-rpc test; however this does not work unless OFBiz is running on port 8080 (r 523057)
  • Small change for detaul font for th and td (r 523170)
  • implemented echo back in XML-RPC; will return back the request in a valid XML-RPC XML message; use the query string ?echo to any request to enable this; note the request will not actually run, just echo (r 523176)
  • fixed so loading data for just a specific component works without having to specify readers (r 523181)
  • updated data loader new command line -help to show all valid arguments (r 523400)
  • RPC calls now return service errors as an XML response; not as an exception (r 523435)
  • Misc fixes to make the datafile tool screen work with after recent migration to the widgets. (r 523767, 523769)
  • fixed problem w/ remove content assoc service (r 523799)
  • small change to get information from other places in ComponentLocationResolver (r 523909)
  • Added disabled/ directory to hide components from being built (r 523953)
Content
  • Misc improvements to the service to send print streams to printers from screen definitions. Added new service to generate file version of the screens; the files are created in the applications/content/output folder but this is configurable thru the config file in the content component. An example of its usage is in the 'find orders' screen. (r 522021, 522024)
  • Small change to the print screen service to allow for a different content name for the content of the printer output stream. (r 522272)
  • added style to the submit button in the genericsurvey.ftl (r 523414)
  • implemented internal email notifications for service invocations; configure groups for notifications, setup templates, email addresses and assign services to groups (serviceengine.xml) all services belong to the default group, in case you want to monitor all errors, failures and/or success (r 523801)
Manufacturing
  • Refactored EditCalendarWeek screen to use widgets instead of ftl/bsh (r 521992)
  • Further improvements to the mrp log (r 522004)
  • Improvements to the MRP algorithm: sales orders ship group dates are now considered, better handling of orders without dates (they are now moved far in the future). (r 522494)
  • Now the mrp better handes of cancelled quantities of ship groups (r 522510)
  • Added new status (and status transition) to production runs to mark them as scheduled. Started refactorting of the production runs screens to support the new status and to be more modern and robust. (r 523027, 523031)
  • Misc refactoring and bug fixes to the edit production run tasks screens. (r 523248, 523253)
  • Misc improvements to the filters for production run tasks and declaration screens. (r 523256, 523275)
  • Implemented status transitions for scheduled production runs. (r 523281)
  • Added one missing status transition for the scheduled production runs. (r 523282)
  • Misc layout cleanups. (r 523393)
  • Marketing packages and production runs: added missing output parameter under certain conditions. (r 523409)
  • Fixed wrong status for requirements removed by the MRP. (r 523668)
  • Misc fixes to the way routings are retrived by the MRP. (r 523700)
  • Misc improvements for the production runs in the scheduled status. (r 523710, 523718)
  • Fix for bug in the service that updates the product's low level codes. (r 523734)
  • Fix for days to ship considered by the mrp. (r 523998)
  • Improved mrp log with start dates of generated requirements. Fixed wrong comparison for isLate events in the mrp log. Small layout improvements to the mrp log screen. (r 524013, 524020, 524025)
Marketing
  • applied tracking code updates patch (r 523819)
  • allow empty marketing campaign or default catalog in the Edit Tracking Code form. (r 523978)
Multiple Components
  • Translation of all modules into Rumanian (r 523091)
  • Added index definitions and fixed entity definition problems (r 520313, 523097)
Order
  • Fixed the 'filter' section of the orderlist and findOrders screen. Both had output formating issues, but orderlist was also checking for wrong field name in bsh file so it would never show any results. (r 521827)
  • Fixed wrong path to the calendar image when ordering FIXED_ASSET_USAGE products (r 522115)
  • Shows "discontinued" against any product that has been in the orderview/edit screen. It's useful for testing but also helpful for the average user to see items that might be a problem. (r 522466)
  • UI to display financial accounts in checkout (for use as payment) (r 522737, 522738)
  • very basic create non-product order service (r 522743)
  • changes to allow financial accounts to be used as payment methods without having to actually create payment records, by using payment method type FIN_ACCOUNT and using the (already existing) finAccountId on OrderPaymentPreference (r 522744)
  • updated to support non-product items (r 522986, 522996, 523446)
  • Updated TransSum view-entity to use FinAccountTrans.amount field, small change to helper method as well (r 523146)
  • new service to wrap creating an order form a shopping cart (r 523440)
  • due to the nature of the checkout helper's payment processing events; it is necessary to disable transaction to appear like we are operating under an event style processing. The actual payment processing code should be reviewed and converted over to a service based structure (r 523465)
Party
  • Migrate createPartyRole and deletePartyRole service from Java to Simple method (r 522474)
  • fixes a recent bug related to party role services permission checks (r 522794)
Product
  • added store related payToParty ID methods found in many places into one central location (r 522582)
  • New finaccount product store settings to control replenishment (r 522736)
  • adding missing catalog price maint permission to catalog admin security group (r 522985)
  • Some refactoring in ProductSearchSession so that you can override or set a default VIEW_SIZE or even VIEW_INDEX in a screen definition, plus an example of the default setting (r 523206)
  • changed picklist and stock move screen to use buttontext (r 523829, 523901)
  • Migrated product's Facilities and Locations subscreens to widgets. (r 524033, 524066)
Seed Data
  • update Ukranian currency from UAK (out of validity since 1996) to UAH. (r 522765)
  • initial set of financial account associated product data; purchase an account activation (r 522915)
  • Associate AA/AE/AP state codes with USA (r 523521)
Web Tools
  • Refactoring of the webtools application: all the remaining region pages have been migrated to screen widgets, with jsp artifacts transformed in bsh/ftl ones (r 522793, 522799, 522802, 523094)
  • updated runService to be part of the other service related screens (r 523418)
Work Effort
  • The deleteWorkEffort service now deletes also the keywords to avoid fk violation errors. (r 523242)
  • Production run in the created status are not shown in the calendars because they are still not scheduled. (r 523286)
eCommerce
  • Clean up the main decorator (r 521911)
  • Added section to the profile page to show account histories; this should probably go on another page as histories could get long, but will do that later (r 523171)
  • Some refactoring in ProductSearchSession so that you can override or set a default VIEW_SIZE or even VIEW_INDEX in a screen definition, plus an example of the default setting (r 523206)
  • Fixed problem with correspondingPoId not being set during ecommerce checkout (r 523639)

Friday, March 23, 2007

OFBIZ Development r521887

68 new commits since last week. Key improvements:
  1. Improved MRP and Usage reports
  2. PDF for order ship group contents
  3. New remote printing capability for orders
  4. Support for XML RPC

Asset Maintenance
  • In asset maintenance orders, default to first item on PO (r 521333)
Base and Framework
  • Enabled support to 'screenfop' view definitions for several output types supported by FOP; they are defined using the content-type attribute in the controller's view definition (application/pdf is the default)); try for example: application/postscript application/x-pcl ... This is the first step toward providing print support for laser/barcode printers. (r 519268)
  • Allow naming of attachment PDF in send mail from screen (r 519583)
  • Fix assignment bugs and potential NPE's (r 519584, 519589)
  • Added new field ('authUserlLoginId') to the JobSandbox entity to store the user login of the user that submitted the async job. The content for the field is retrieved from the context (using the 'userLogin' object, if available). (r 520300)
  • implemented new data loading arguement -component to limit data loading to a single component (by name) example: java -jar ofbiz.jar -install -component=mycomponent -readers=seed,ext,demo (r 520902)
  • implemented XML-RPC to service engine (r 521060, 521311)
  • Fix drag and drop funcitonality in dojo table rows. these are fixed in a different way in dojo 0.4.2, but instead of upgrading to new dojo we just fixed it here. (r 521520)
  • Fixed extra equals sign in tomcat session rep config (r 512871)
Content
  • First draft of the service that can be called as async to create a (PDF, Postscript, PCL etc...) output from a screen definition and send it to a lan printer. (r 520359, 521601)
  • Added script to select all the printers available in the server. (r 521619)
Manufacturing
  • Now the mrp screen used to manually run the MRP will submit the job as async since it can be a long running job; the user can now monitor the status of the process from the new screen in the WorkEffort application. (r 520324)
  • Fix for the MRP process to better handle WIP products. (r 520340)
  • Fix for an issue with the MRP, that was coonsidering the promised units from canceled production runs. (r 520901)
  • The days set in ProductFacility.daysToShip are taken into account by the MRP even for manufactured items: the time is added to the standard time of the routing. (r 521722)
  • Improved MRP logs, with the isLate flag set in the events. (r 521780, 521806, 521847)
Multiple Components
  • Enabled support to 'screenfop' view definitions for several output types supported by FOP; they are defined using the content-type attribute in the controller's view definition (application/pdf is the default)); try for example: application/postscript application/x-pcl ... This is the first step toward providing print support for laser/barcode printers. (r 519268)
  • Layout fixes (r 519269, 519270, 519307, 519580)
  • Arabic translations (r 519306, 519309)
  • Fix assignment bugs and potential NPE's (r 519584, 519589)
  • Add content-type for PDF FOP view requests (r 520504, 520526)
Order
  • Added PDF for ship groups. It displays the contents of each ship group on a page by page basis. (r 519117, 519118, 519145, 519155)
  • 'Created' status is the default one for newly created requirements. (r 519271)
  • Fix order item corresponding PO ID (r 519570, 519571)
  • New feature to force complete a purchase order, which would cause all remaining items to be cancelled and new requirements to be created for them. (r 520120)
  • Added from/thru dates to the list of fields returned by the query on SupplierProduct to the LookupBulkAddSupplierProducts script. (r 520784, 521232)
  • Improved business rules to automatically assign a (product) requirement to a supplier: now validity dates are considered against the requirement date, and also minimum order quantity, and the supplier with the minimum last price and higher preference is selected. (r 520857)
  • Fix bug where in some cases the payment methods for the order party was missing, preventing new payment methods from being added to order. (r 520980)
  • Few minor adjustments to not fail and added ability to refresh order page (r 521360)
  • There is now a 'print' option in the select box in the header of the find order list. By selecting it and submitting the form all the orders with the checkbox set will be submitted as async jobs: the user can monitor the status of the print jobs (one per order) in the WorkEffort->Submitted Jobs screen (the status will move from Pending to Running to Finished). The system will render one postscript stream for each order (out of the screen definition) and send it to the first printer (that can handle postscript streams) that the server's JVM can locate. (r 521616, 521812)
  • Now the 'approve requirement' screen shows both created and proposed requirements. (r 521688)
Party
  • Changed some of the links to create new person/party group to redirect to viewprofile (r 521051)
  • commented out the loyalty points section of the party manager viewprofile page (r 521053)
Point Of Sales
  • clean up (r 520812)
Product
  • Improve packing slip PDF so header and gift message footer are uniform across pages. (r 519101)
  • Provide 'Usage' column to the Facility inventory report, based on sales usage plus production usage. Sales usage is assembled via OrderItem/OrderHeader/ItemIssuance/InventoryItem, and production usage via WorkEffortInventoryAssign/WorkEffort/InventoryItem. (r 519102)
  • Changed feature type description to default to ID when there is no description in virtual product inventory summary (r 520343)
  • Changed advanced search page in catalog manager to support list price from/thru, feature and category include/exclude/always (r 520479)
  • Cleanup of bsh that gets inventory for variants of virtual products (r 520492)
  • Screen for receiving inventory against POs in a shipment will now the back ordered orders and load the correct unit prices (r 520554)
  • Added form to the 'inventory item detail' screen to show information about order's reservations. (r 520846)
  • Fix bug in inventory xfer where completed transfers for serialized items were not being set to AVAILABLE status. (r 521005)
  • Log when picklist skips a back ordered/no tin stock item (r 521506)
  • Null checking when getting product store locale (r 521506)
  • Fix orderby in inventory reservation services (r 521508)
Seed Data
  • Fix Typo in stateProvinceAbbr (r 521700)
  • better demo data (r 521887)
Work Effort
  • Added first version of a screen that the user can visit to monitor the status of the async jobs that he/she has submitted. (r 520301)
  • Cancelled work effort (both calendar events and production runs/tasks) are no longer shown in the calendar screens. (r 520917)
eCommerce
  • Fix wrong method call on show cart page (r 519523)
  • removed dojo.js from quick anonymous checkout links, as it is already part of the decorator (r 519534)
  • clean up file formatting (r 519566)

Friday, March 16, 2007

OFBIZ Development r519070

140 new commits over the last two weeks. The SVN has undergone some significant fluctuations but appears to have stabilized. SVN r 519070 builds and installs successfully. Key changes were:
  1. Changes to framework and service engine and new testing XML tools.
  2. New content management driven CMS Site example.
  3. New features to receive against purchase orders in facility shipping
  4. Improved support for serialized inventory



Accounting
  • cleanup the code that creates a refNum for payment transactions. (r 514204)
  • Removed mainAccountingDecorator and replaced references to it with "main-decorator", as it doesn't appear to serve any purpose. (r 514294)
  • Fixed bug where expired cc cards associated to a billing address, prevented the billing address to be updated. (r 516004, 516005)
  • Support rollback of shipping on failed credit card capture, controlled by the ProductStore.shipIfCaptureFails (r 517342)
Asset Maintenance
  • printing a fixed asset maint (r 516580)
Base and Framework
  • updated widget xsd's to reflect recent changes (r 514191)
  • fix string comparison in multi-service event handler. (r 514196)
  • Changed default for the optional attribute on the implements element from false to true, because as is ALL attributes are being set to optional (r 514243)
  • Changed the service ECA and MCA attribute runAsUser to run-as-user. The runAsUser attributes will still be parsed. (r 514251, 514602, 514603)
  • Changed minilang xsd to represent the fact that calcop -> field-name is optional (r 514617)
  • Added stub and xsd file extension for entity-xml-assert test case in minilang and in entity engine for testing (r 515235, 515285, 515340, 515391)
  • fix error message list handling in minilang; small change to use FastList instead of LinkedList (r 515870)
  • ServiceTest implementation (r 515876)
  • UtilValidate.isEmpty for Object (r 515877)
  • changed resourceDescription for permissionInterface to optional; will get set if not passed in the service engine BUT needs to get passed validation first (r 515902)
  • Added simple-method-test to call a simple-method as a service, without a service definition (r 516253)
  • Changed service dispatcher name to not interfere with main name for service engine tests (r 516258)
  • Changed the way form widget checkboxes worked. (r 516317)
  • Implemented form widget multi select (r 516319)
  • Added a bunch of stuff to do a pseudo converstion from objects to List and Set by creating a List or Set and putting the object in it (r 516321)
  • Enhance CSS styles (r 516473)
  • Layout improvements (r 516468, 516478)
  • created a simple string output stream class (r 516635)
  • layout improvements for htmlformrenderer (r 516668)
  • Changed ofbizContentUrl to not NPE when there is no request in the context; now tries to do its best with the standard content prefix from url.properties; this was happening in the Order PDF with an image URL which should probably not use ofbizContentUrl in the first place, but now will at least work (r 517731)
Content
  • Fixed extraneous relationship definitions (r 514599)
  • fixed createContent error view (r 515886)
  • fixed optional fields on permission services (r 515903)
  • refactored renderContentAsText to invoke content services when called; now requires a dispatcher to render content; older methods have been removed. (r 516158, 516167)
  • Added RenderContentTransform which does both content and subcontent rendering. Linked to it in FreeMarkerWorker, but did not remove other transform defs. (r 516168)
  • Added "dataResourceTypeId" as unnneeded parameter to "updateElectronicText" so that "updateDataText" seca will work. (r 516200, 516207)
  • implemented (first pass) ContentMapFacade; used in the context of all content rendering. now can use id_CONTENTID for numeric content Ids (r 516199, 516228)
  • fixed updating data resource and update content (r 516234, 516252)
  • added quick way to create publish points for websites (r 516320)
  • updated facade/worker to support decorator content; added datamodel for decorator content (r 516516)
  • added menu container content type and added default page - website content assoc (r 516520, 516522)
  • implemented default page WS content type; changed URL_RESOURCE to support component:// resources (r 516536)
  • New CMS Site specialized application which is a demo application of a site driven by the content management application (r 516537, 516549, 516567, 516594, 516642, 516670)
  • updated a CMS content to include decorator content; (r 516548)
  • added support for URL_RESOURCE types (r 516574)
  • Added toString method that renders the content, ie default behavior when printed or treated as a String (r 516593)
  • Some cleanups, including more consistent use of cache settings; started add of link entry (r 516640)
  • Various cleanups in the cmsssite templates and data; implemented a change to support rendering the Content instead of the DataResource when it is decorated, which is necessary in order for the thisContent object to exist and function, which is necessary for including sub-content and such; also implemented the content map facade link element to get a link out of the context that the cms event puts in it (r 516669)
Manufacturing
  • Improved information in the MRP log with a new field (in the InventoryEventPlanned entity) to keep track of the event (order, requirement etc...) that originated the request. (r 515981, 515982)
  • Improved support for WIP (Work In Process) components in bill of materials, MRP and requirements. (r 516229)
  • Fixed production run screens and calendar screens. (r 516232, 516461, 516876, 516882, 517583)
  • Added support for facility groups in MRP: if a facility group is specified (instead of a facility id) the MRP will use the facilities in the group as warehouse facility (WAREHOUSE) and manufacturing facility (PLANT). (r 516798)
  • Improved the mrp event log with information about facilityId: - new facilityId field in the InventoryEventPlanned entity - removed the facility drop down box from the find event screen, now the correct facility is pulled by the event (r 516875)
  • Cleanup the bom simulation screen with better handling of tree levels. (r 516887)
  • Fix a bug where the MRP was considering cancelled components in the simulation. (r 517235)
  • Added to production runs support for serialized inventory creation. (r 517636)
  • Added new status of "proposed" to Requirement, that is the initial status of all the requirements proposed by the mrp. (r 519005)
Marketing
  • Removed unused includes and templates directories (r 518587)
Multiple Components
  • Remove some unused imports (r 514200)
  • Change null/empty validation method (r 514366)
  • Changed the service ECA and MCA attribute runAsUser to run-as-user. The runAsUser attributes will still be parsed. (r 514251, 514602, 514603)
  • Implemented new ProductStore.autApproveInvoice to control whether sales invoices are automatically approved (set to READY) (r 515660)
  • Cleanup of LocalDispatcher creation through the GenericDispatcher object; consolidates a bunch of code and hopefully simplifies a things; should also more permanently fix the weird problem we were having with the testing services a bit ago (r 516271)
  • Clean up redundant css settings in forms (r 516672)
  • extend support for parametric mainDecoratorLocation to all the screens. (r 516675)
  • fix layout issues (r 518696, 519046, 519070)
Order
  • Removed cvvNumber from CreditCard, added comment about use of securityCode on the OrderPaymentPreference which is where this should really be stored (r 515393)
  • small improvement in lead time display when not in stock changed to use availableToPromiseTotal; added caching support for productsummary call to make it perform reasonably (r 515648)
  • Fix potential bug with drop ship when a user accidentally selects a supplier party for a ship group but none of the items are actually drop shipped by that supplier (r 516192)
  • Fix bug in OrderReadHelper with wrong field (r 516965)
  • Small layout fix of OrderEntryTabBar (r 517135)
  • Fixed bug that was preventing the cancellation of an order item if the the ATP of the item was 0 or if the discontinuation date was passed. An order should be editable even if there are discontinued items in it. (r 517183, 517230)
  • Implementing ProductStore.autoApproveOrder (indicator) to govern whether orders are automatically approved during processPayment execution when payment is authorized. If empty or Y, orders will be approved. (r 517347)
  • show quantity picked on orderView screen to indicate quantity modifications to the order that could cause problems. (r 517520, 518496)
  • Implemented new service which creates Requirements for all the products in a facility with QOH under the minimum stock level (r 517602)
  • added orderName field to OrderHeaderItemAndRoles (r 518217)
  • The updateOrderStatusFromReceipt service was checking for completion of orderItems via the ITEM_RECEIVED status, which doesn't exist. Changed it to look for ITEM_COMPLETED instead. (r 518264)
  • Set purchase shipment status to PURCH_SHIP_SHIPPED in the updatePurchaseShipmentFromReceipt service, so that the shipment can be marked received if necessary, since the existence of a shipment receipt logically indicates that the shipment was shipped. (r 518321)
  • Add an amount total to the list of approved product requirements. (r 518369)
  • Changed facilityId to a required field in ApprovedProductRequirements. (r 518695)
  • Improvements to add/remove payment methods in order view. The payment amount field defaults to the open order amount, and it is now done with request-redirect (r 518702)
  • fix bad renderProductContentWrapper.getProductContentAsText in ordermgr show cart items. (r 518800, 518937)
Party
  • Fixed bad entity model definition (r 514255)
  • Links to quotes from party manager. Lookup by address now also shows city and state in addition to zip code. (r 515823, 515828, 515835)
  • Layout improvements (r 516468, 516478)
  • Fix bug where specifying a userLoginId in party manager viewProfile page doesn't display the corresponding party (r 518125)
Product
  • Initially complete implementation of the include/exclude/alwaysInclude variations for categories and features in ProductSearch; this has been tested for basic cases, but needs some testing for more complex conditions; note that UI layer things and such still need to be implemented (r 514609)
  • Added code to fill in list price range search parameter for search string (r 514624)
  • NPE protection in PackingSession.setPackageWeight() (r 514747)
  • Passing a list of package weights to UPS rate inquire services will override the splitting of packages and calculation of package weights via shippableItemInfo (r 514748)
  • Making the calcPackSessionAdditionalShippingCharge.additionalShippingCharge OUT parameter optional so that downstream service errors aren't masked (r 514895)
  • UPS rate estimate support Canada addresses - UPSServices.upsRateInquire now inserts CountryCode element based on origin and destination CountryGeo (r 514926)
  • balance inventory supports serialized inventory - Extend balanceInventoryItems service to take serialized inventory into account - If serialized inventory is received and non-serialized inventoryItems exist with negative or empty values, the service will attempt to apply the serialized inventory to the first inventoryItem found - ATP and QOH of the non-serialized will be increased by the serialized quantity - statusId of the serialized item will be set to INV_PROMISED - If OrderItemShipGrpInvRes values exist related to the non-serialized item, the service will reduce the quantity of the first found by the serialized quantity and create a new OrderItemShipGrpInvRes for the serialized quantity based on the non-serialized reservation (r 514929)
  • Converted FindFacility.ftl to a form widget and FindFacility.bsh to an entity-and and cleared the editLink title field in FindFacility (r 515474, 515498, 517582)
  • small improvement in lead time display when not in stock changed to use availableToPromiseTotal; added caching support for productsummary call to make it perform reasonably (r 515648)
  • Added link to show requested inventory transfers. This link causes the list to become a multi-form with use-row-submit so that completing the transfers can be done in bulk. (r 515693, 517425)
  • Fix problem with adding line items to packing session when the item has no weight (r 516193)
  • Receive inventory verified against purchase order - Adding a tab in shipment screens to receive purchase order items one unit at a time, while checking quantities against ordered quantity and previously received quantity for the purchase order (r 517398)
  • Converted FindProductStore to use a form widget (r 517576)
  • made default for internal name on product lookup to contains (r 517930)
  • Get around some problems with packing sessions due to mis-allocation of inventory across quantities by packing against the largest quantity inventory item first (r 517954)
  • Receive inventory against PO: - Add a back-ordered quantity column - JS alerts and error/info messages on: attempt to receive product/goodId not in order; attempt to receive > order quantity; part or all of qty to receive going to back-order - If productId to receive is not in the order, check for goodIds (r 518237)
  • When receiving inventory against a PO, issue order item quantity and receive the same inventory quantity in sequence via a service group, to eliminate redundant steps (r 518349)
  • Improve the packing slip PDF so that it's organized as one page per package. (r 518682)
Seed Data
  • Added dutch provinces (r 515405, 515408)
  • Added billing location purpose to the PostalAddress of NY and CA tax authorities. (r 517942)
  • Replace productStoreShipmentMethId by productStoreShipMethId in the demo product store data (r 518064)
Web Tools
  • Changed to create the service input map for the call to parseEntityXmlFile in the entityImportDir service for each file, rather than preparing it once and changing it each time; it appears that the userLogin is getting removed from the Map somewhere, probably by the Service Engine, which is rather bad actually, but this should fix it (r 514253)
  • changed delete files box on import dir to not be checked, regardless of whether or not the path has_content; also changed the import page to have entity-engine-xml open and close tags by default (r 514945)
Work Effort
  • Assigned tasks no longer shown in work effort task list (r 515777)
eCommerce
  • fix bad renderProductContentWrapper.getProductContentAsText in ordermgr show cart items. (r 518800, 518937)
  • changed ecommerce header to get title from internal context values (r 518984)
opentaps Financials
  • Improved granularity of security for Sarbanes-Oxley compliance. Now it is possible to create separate permissions for users who can create and modify invoices but only view payments or users who can view invoices and create and apply invoices.
  • Improved printing of invoices and checks.
opentaps CRM
  • Significantly improved order entry and management capabilities.

Saturday, March 03, 2007

OFBIZ Development r514134

72 new commits this week. SVN r 514134 builds and installs successfully. Significant changes this week:
  1. Improvements to content management module
  2. Improvements to use of CSS in form, screen, menu widgets
  3. Support for automatically creating ship groups for drop ship orders
  4. Fixed problems with request-redirect
  5. opentaps Financials now supports recurring invoices, scheduled transaction postings, and multi-vendor payment screens.
Accounting
  • Clean up form widget headers (r 511769)
  • Added a new field of scheduledPostingDate to AcctgTrans and modified postAcctgTrans not to post if the current date time is before is before the scheduled posting time (r 511942)
  • Updated check PDF for FOP 0.93 and beyond. (r 513886)
  • Avoid null return adjustment amounts when creating return invoices (r 514056)
Asset Maintenance
  • Improved returning parts issued to a fixed asset maintenance and the services for issuing parts (r 510920)
Base and Framework
  • default-request now gets included in webapp ConfigXMLReader (r 510376)
  • Fix misplaced action tags in CommonScreens (r 510763)
  • Put a test on the "this.args" to prevent lookup_popup2 from blowing up if there are none. (r 510849)
  • Fixed an odd bugg in some decorator (screen and template) code where the screens object was pointing to the wrong context, making certain variables that should have been available not available, especially in cases where the ScreenRenderer screens object is used (r 510962, 510964)
  • Fix the screen renderer to prevent the creation of empty elements when there is no text to display. (r 511239)
  • Small improvements to the way Long are transformed to Strings in StringUtil. (r 511260)
  • fixed bug in route engine not returning proper OUT parameters (r 512458)
  • added div ID to the messages area in CommonScreens; so we can utilize this in ajax requests (r 512513)
  • Added hhfacility and assetmaint src directories for eclipse classpath file (r 512601)
  • fixed javadoc error in UtilHttp (r 512865)
  • added method to UtilHttp to send file name to browser when streaming data (r 512946)
  • removing RequestHandler from request attributes before a request-redirect. Now request-redirect works again. (r 513430)
  • refactor/reorganize according to best practices the backoffice cascading stylesheets definitions (r 514097)
  • refactor form, menu, tree widget styles management (now mostly all the styles are defined externally using css) (r 514099)
  • Html form renderer now escapes special caracters in text boxex (r 514110)
  • The widget form field action attribute is now stored with a flexible string; very useful to specify dynamic javascripts (such as an automatic row selection script for multiforms). (r 514118)
  • action and event attributes can be used in multi form to trigger the auto selection of the record when the user enters data; however it is still not optimal because I have hardcoded the _o_ suffix index separator. (r 514128)
  • Removed no more needed style definitions from form widgets (r 514134)
Content
  • better handling of websites w/ no publish points and of content w/ no data resources (r 510737)
  • now setting the dataResourceName in website cms (r 510741)
  • Removed request-redirect returns in the content manager controller (r 510756)
  • Refactored content upload service to support other data resource types and use mimetype. Data resource services now moved to DataServices.xml (r 512356, 512510)
  • Put results of ECAs to context with DataText services (r 512458)
  • implemented new data resource types for AUDIO/VIDEO content (r 512471)
  • added meta-data for content "pages" (quick entry, creates sub-content records); added new data types to CMS, Image, Object, Video, etc (r 512581)
  • added sub-content rendering so CMS can render HTML meta-tags (r 512592)
  • added isPublic to CMS creation; changed isPublic from checkbox to default select so we can actually turn it off once it is enabled (r 512841, 513018)
  • now upload services returns the decided mimeTypeId so it is properly reflected on the content record (r 513020)
  • Big content rendering refactor; condensed methods used for rendering content into one, flagged to cache or not. This will make maintaining this much easier. Implemented new streaming event which will send all type of files not just images (deprecating the img event); added mime-type templates to remove the hard coded templates in DataResourceWorker; now supports additional types besides image/*; updated all code using the old methods; however left them in place (deprecated) until we are sure no BSH files use these old methods (r 513985, 513986)
Entity Model
  • Pretty important change to data model to allow more flexible shipping rules per store. ProductStoreShipmentMeth's primary key is no longer composed of productStoreId, shipmentMethodTypeId, partyId, roleTypeId but just productStoreShipMethId (r 511250)
Multiple Components
  • remove unnecessary casts and import statements in some java code. (r 511251, 511254)
  • Making standard hourly rate the default entry in party rate and timesheet dropdowns (r 511343)
  • Fix bad fieldlookup image urls (r 512472)
Order
  • Fix wrong form tag for requirement form (r 510764)
  • Fix potential NPE on approved requirements screen (r 510827)
  • Find requirements screen will now return all requirements if no parameters are specified (r 510841)
  • Get requirements for supplier now assumes a default quantity of 1 to avoid NPEs (r 510846)
  • Use productCategoryId from screen widget instead of request attributes in categorydetail bsh (r 510965)
  • Implemented automatic creation of drop ship groups during checkout - If a product is set to always drop ship (Product.requirementMethodEnumId == 'PRODRQM_DS'). - If a product is set to drop ship when inventory is low (Product.requirementMethodEnumId == 'PRODRQM_DSATP'). In this case, item quantities > ATP will be drop shipped. - Items are reassigned to ship groups based on supplier. - Ship groups are created if necessary. - Suppliers are determined using by ProductSupplier.canDropShip == Y, and ProductSupplier.supplierPrefOrderId - main suppliers are used in preference to alternate suppliers. - Changing Enumeration.enumId PRODRQM_DSQOH to PRODRQM_DSATP in ProductTypeData.xml. (r 512373)
  • Cleaned up set ship item groups page in order checkout to display drop ship items better (r 512376)
  • made the create return button same as the others on the screen on the orderview screen (r 512503)
  • Changed a getRelatedOne for basically seed data to be cached in the product detail page of order entry (r 512505)
  • Disable updating of shipping method for purchase orders. (r 512870)
Party
  • New French translations (r 510864)
  • fixed up some css styles in viewprofile page (r 512348)
  • refactor the layout of the partymgr application according to the new css/patterns (r 514106)
Product
  • Improved isBinComplete method to better handle empty bins during order picking (r 510992)
  • Added support for deleting empty bins and for removing items from bins during order picking (r 511011)
  • Pretty important change to data model to allow more flexible shipping rules per store. ProductStoreShipmentMeth's primary key is no longer composed of productStoreId, shipmentMethodTypeId, partyId, roleTypeId but just productStoreShipMethId (r 511250)
  • Set default available from date of now and default min order qty of 0 for new supplier products (r 512502, 512876)
  • Added the capability to filter product searches by Product.introductionDate and Product.salesDiscontinuationDate. Adding the AVAILABILITY_FILTER="true" form parameter results in the addition of an AvailabilityDateConstraint object to the ProductSearchSession. Not currently used in any forms. (r 513916)
  • calcshipmentcostestimate service now returns carrier party id and shipment method type if it actually fails (r 513933)
  • Fixed tab bar selection for facility inventory screen (r 514124)
Seed Data
  • Added some demo data for CAT_ID type links (r 510932)
  • added additional mime types for audio/video (r 513008, 513056)
Web Tools
  • Moved ViewLog link to the main page of webtools (r 511243)
  • Webtools entity import directory will now re-try failed files (r 513211)
eCommerce
  • Fixed an odd bugg in some decorator (screen and template) code where the screens object was pointing to the wrong context, making certain variables that should have been available not available, especially in cases where the ScreenRenderer screens object is used (r 510962, 510964)
  • Added an option configured on the ProductStore to not require a shipping address when purchasing only digital products, ie no physical products; this is supported right now only in the long anonymous checkout process (r 510976)
  • Implemented the rest of the ListPriceRangeConstraint ProductSearch constraint (r 512532, 512564)
opentaps Financials
  • Support for recurring invoices
  • Support for scheduled transaction postings at a future date
  • New AP check run feature to pay multiple vendors on one screen
  • Improved settlements and reconciliations page
opentaps CRM
  • Fixed all links in order entry and view