Friday, September 30, 2005

OFBiz Development SVN r5867

57 new commits this week. SVN 5869 builds and installs successfully. (There is a problem with the entitymodel_odbc for WorldShip, but that should not affect the main part of the code.)

Significant changes this week
  1. New "set" operation in minilang. The old "field-to-field", "field-to-env", "env-to-field," and "env-to-env" are now deprecated.
  2. New quote to order features: ability of ecommerce users to see quotes, request quotes based on shopping lists and carts; in order manager, new screens for managing quotes and quote items; quote items are automatically set to "ordered" when they are ordered.
  3. Lots of clean up of HTML
Thanks to our contributors
This week's contributors include Yannick Thebault, Firras, Ashish Hareet, Hans Bakker, Jacopo, David, Andy, and ourselves.

Entity Model Changes
  • All tax related entities (SimpleSalesTaxLookup, TaxAuthority, TaxAuthorityCategory, TaxAuthorityGlAccount, TaxAuthorityRateProduct, TaxAuthorityRateType, ZipSalesRuleLookup) moved from order to accounting entitymodel.xml (r 5833)
  • TaxAuthority now has new fields "taxIdFormatPattern" and "useMainItemPrice," which is used to determine whether the "main item" on an invoice should be used to calculate all taxes (r 5834)
  • TaxAuthorityRateProduct now uses "taxAuthorityRateSeqId" for its primary key, instead of eight other fields (r 5834)
  • OrderHeader relations to ProductStore and createdByUserLogin now require foreign keys (r 5843)
  • CustRequest now has a "fromPartyId" field (r 5846)
  • PartyContent now has a content purpose enumeration id, to identify what the content is for (r 5848)
  • PartyGroup now has a logoImageUrl property
Seed Data Changes
  • TaxAuthorityRateType moved from order seed data to accounting seed data (r 5848)
  • New enumeration for "Logo" for Party content (r 5848)
  • More data for party groups for generating PDFs (r 5860)
Base and Framework
  • Screen widget now has get-related and get-related-one operations (r 5819)
  • New set operation for simple-method, which allows an explicit type (ie, Double, Long, etc.) (r 5820, 5821, 5822)
  • env-to-env, field-to-field, env-to-field, field-to-env are all now officially deprecated (r 5823, 5824)
  • "set" operation has "set-if-null" and "set-if-empty" attributes which default to false and true, respectively (r 5826)
  • Entity engine - GenericHelper clean up, encryption of incoming values for lookup (r 5831)
  • "Set" operation no longer defaults to String (r 5842)
  • selectAll java script can now pass in the form name or default to the old one if none is passed in (r 5856)
  • Fixed problem with HTML menu rendering where the HTML tags had "style" instead of "class" (r 5864)
Accounting
  • Cleanup and fixes of fixed asset screens (r 5861)
  • Removed redundant or unused pages (r 5862, 5866)
Accounting/GL Implementation
  • Similar cleanup of code as in rest of project.
Content
  • Changed survey response services to use the new set operation (r 5825)
eCommerce
  • New quote screens, which allow logged in users to see their quotes and transform them to orders (r 5838)
  • User can now request a quote based on items in a shopping cart or shopping list (r 5849)
Order
  • Fixed bug of updating prices for products which require an amount as well as quantity by setting amount before calling updatePrice (r 5818)
  • all setQuantity methods now update the price regardless of whether it's a purchase or sales order (r 5818)
  • Order lookup changed from "pack" to "pick" (r 5830)
  • New report for quotes (r 5836)
  • New SECA so that every time an order item is created, there is a check to see if it comes from a quote. If it does, the quote is updated to "ordered." (r 5836)
  • New quote-related ui labels (r 5837)
  • Set a default amount of 1.0 for calculating quotes for items that require an amount (r 5839)
  • Shopping cart now has a "read only" mode so that when it is created from a quote, it cannot be modified (r 5841)
  • OrderServices minilang script now uses set and entity-* operations (r 5844)
  • Fixed bug where adding in bulk from a cart to a shopping list was not passing through the currency (r 5847)
  • createRequest services re-factored to allow the service to be called frome commerce (r 5849)
  • when creating a request from shopping list, the request name is taken from the shopping list name (r 5852)
  • new forms to update quote attributes and coefficients (r 5853)
Party
  • Fixed bugs with edit communication page (r 5815)
  • Fixed communication event screens (r 5840)
  • Party lookup will no longer do a search for all parties (without any constraints) unless you specify it (r 5850)
  • Refactored minilang scripts to use "set" and "entity-*" (r 5859)
Product
  • Fixed problem with price rules and promos when the partyId is empty. (r 5811)
  • Fixed Party Group Membership class price rules and promo rules. (r 5811)
  • Implemented Party Classification price rules (r 5811)
  • Clean up of product store and inventory services using new minilang "set" operation (r 5827)
  • New service which polls the shipment staging table to update shipment info (r 5829)
  • Pick list report now shows all items where there are no locations specified (r 5829)
  • Pick list order sheets now show a barcode for each order/shipment group (r 5829)
  • Style and button form changes on product forms (r 5835)
  • Refactoring of minilang scripts to use "set" and "entity-" operations (r 5845)
  • In catalog manager, edit product store roles now does a lookup based on party names (r 5854)
Work Effort
  • Work Effort Communication screens now use the WorkEffortCommEvent view entity (r 5815)
  • Clean up of work effort code, with more use of view entities to make lists more informative (r 5832)
  • Removed old work effort stuff, including project/phase/task, which has been replaced by hierarchical workefforts (r 5863)
Open Travel System
  • From a bank statement file (MT 940), create payments, parties, invoices, payment applications (r 5816)
Misc Changes
  • French localization in accounting, ecommerce, order, product, and common (r 58
  • Replaced all "standardSubmit" CSS button style with "smallSubmit" (r 5855)
  • Clean up of widget forms throughout the application, specifically:
A whole bunch of form and screen cleanups; main thing fixed is the use of property-map in the form def files which somehow has spread all over the place and is not the best place to put it, but worse is that none of these (somehow...) had global=true so they were overriding the uiLabelMap values that already existed which messed up a lot of forms; also did a bunch of changes when using the performFind service to use value=EntityName in the entityName field-map instead of having it parameterized which is an older style and is difficult to read and has unnecessary extra line of code; also various formatting and consistency cleanups

(r 5857)
  • HTML clean up (r 5865)

Friday, September 23, 2005

OFBiz Development SVN r5810

58 new commits this week. SVN 5810 builds and installs successfully.

Significant changes this week
  1. New feature to turn shopping lists to quotes, orders, and request
  2. New feature to send order confirmation email with PDF
  3. Upgraded Apache libraries
  4. Many enhancements to the form widget
Thanks to our contributors
This week's contributors include Buxerolles, Peter Goron, Malin Nicholas, Ashish Hareet, Jacopo, David, Andy, and myself.

Entity Model Changes
  • New view entities for workeffort: WorkEffortPartyAssignView, WorkEffortCommunicationEventView, WorkEffortShoppingListView, WorkEffortQuoteView, WorkEffortOrderHeaderView (r 5763)
  • ProductStoreEmailSetting now has a new field "xslfoAttachScreenLocation" which can be used to specify an XSL:FO template for the email (r 5775)
  • CustRequestItem now has a selectedAmount field to support products that require an amount (r 5803)
Base and Framework
  • Screen widget renderer now allows requestAttributes to override requestParameters, so that the entity engine or service engine can pass values into screen widgets. (r 5754)
  • Truition cookie path and lifespan added to truition.properties in securityext component (r 5755)
  • IDEA files (OFBIZ.iml, .ipr, .iws) added to the svn ignore list (r 5756)
  • "use-cache" attribute in minilang is now set to default to "false" but no longer restricted to "true" or "false" only (r 5757)
  • New "check-pks-on-start" attribute in entity engine's database configuration (r 5759) MySQL set not to check primary keys on start up. (r 5768)
  • Form widget lists can now paginate (r 5760)
  • Form widget reuses field information from the fields (r 5761)
  • Form widget will no longer render a link when there's no link description (r 5764)
  • Form widget fields which have "use-when" conditions will override those without them when the "use-when" conditions are true (r 5788)
  • Upgraded to Apache Jakarta Commons Digester version 1.7. In the future, libraries will have version numbers. (r 5789, r 5790)
  • Upgraded JasperReports version 1.0.2 (r 5792)
  • Updated eclipse .classpath file to reflect new libraries above (r5793, r5794)
  • Fixed dangling characters which caused the form widget's calendar boxes not to work (r 5801)
  • GenericDelegator now has methods to clone and change initialization objects (r 5802)
  • Entity Engine XML now has an "disable-eeca" attribute next to the tag which can be used to disable entity engine ECAs when the data is loaded (r 5803)
Accounting
  • Accounting component's user documentation is now current as of R 5801.
Content
  • Decorator name now changed to "MainContentDecorator" (r 5762)
  • More comprehensive error message when an email can't be sent (r 5769)
Order
  • New services and screens to create WorkEffort for Quotes (r 5753)
  • Order parties can now get the tax exemption benefits of the party group (r 5758)
  • New feature to create a quote from the shopping cart, including a new "createQuoteFromCart" service (r 5766)
  • Link to create an order from a cart (r 5772)
  • Fixed order of "quoteId" attribute for createQuoteWorkEffort service (r 5773)
  • Split up services.xml to services_request.xml, _requirement.xml, _return.xml, and _shopinglist.xml (r 5774)
  • Link from order detail page to requirements points to the page in order manager instead of manufacturing (r 5779)
  • Quote form now displays a "delete" link for promo quote items as well (r 5781)
  • Code cleanup in CheckOutEvents finalize method (r 5782)
  • "custRequestName" field is now optional in the CustRequest services, with a change to "interfaceCustRequest" (r 5783)
  • When a quote item is added to shopping cart, the unit price item is calculated correctly when the quote item has an amount quantity (r 5784)
  • Implemented a quick checkout process for orders created from a quote with a new setDefaultCheckoutOptions method in ShoppingCart (r 5785)
  • Some of the OrderHeader lookup screens are now pre-filled (r 5787)
  • When exploding an order item to its auto-explode marketing package components, the product names of the components are now the correct product name content, instead of "internalName" (r 5791)
  • Fixed problem where payToPartyId was not set in CheckOutHelper's processCaptureResult method (r 5797)
  • Fixed problem with editing the quantities of purchase order items. Now the correct purchasing price from SupplierProduct based on quantity breaks are returned (r 5807, r 5808)
  • New capability to attach a PDF to an order confirmation email (r 5809, r 5810)
Party
  • Clean up of communication event screens (r 5765)
  • CSS clean up of viewprofile screen (r 5767)
  • New feature to create a shopping cart, request, or order from a shopping list (r 5772)
  • Fixed problem with "Expire" link for contact mechs, where the partyId was submitted twice (r 5786)
  • Fixed bug with finding parties by their user login (r 5799)
  • Button look change in party forms (r 5800)
Product
  • Price and promo calculations now correctly use party relationships (no longer two way, but the partyIdFrom is the group and the partyIdTo is the group member) (r 5758)
  • ProductWorker has a new getParaentProduct(productId, delegator) method to find the parent of a product. This is code re-factored out of ShoppingCartItem (r 5776)
  • Fixed catalog manager bug where creating a new carrier shipment method (r 5777, r 5778)
  • Fixed problem where inventory reservations were not setting the correct "quantityNotAvailable" to item inventory reservations (r 5795)
  • Find and edit facility pages in facility manager now have buttontext (r 5796)
  • Formatting changes in facility manager (r 5798)
  • Fixed problem where detailed inventory item records are not created with ATP and QOH values (r 5805)
Work Effort
  • New summary screen of what's related to a work effort (r 5763)
  • Cleanup of work effort screens (r 5806)
Open Travel Systems
  • Bug fixes for creating customer in checkout and error checking code in MT940 import (r 5770, 5771)

Thursday, September 15, 2005

OFBiz Development SVN r5752

73 new commits this week. SVN 5752 builds and installs successfully.

Significant changes this week
  1. "request-redirect" events in the controller will now pass (serializable) attributes, enabling error messages to be displayed.
  2. New feature to allow users to sign up for an email (contact) list, with a confirmation email sent to the customer.
  3. Implementation of "auto-exploded" marketing packages, where marketing packages are automatically replaced with their component items when an order is created.
  4. New feature to mass approve and mass pick a whole list of orders.
  5. New screens to copy one quote to another and better UI for editing quote adjustments and create orders from quotes.
  6. New wizard-based pick and pick features.
  7. New features to associate work efforts with communication events, orders, shopping lists, and quotes and assign work efforts to parties.
Thanks to our contributors
This week's contributors include Andrew Sykes, Al Byers, Adam Heath, Ashish Hareet, Yannick Thebault, Geraud Buxerolles, Hans Bakker, Brent Garnett, Jacques Le Roux, Jacopo, David, Andy, and myself.

Entity Model Changes
  • Clean up of view entities in WorkEffort application to use alias-all instead of naming all the alias fields (r 5692, 5696)
  • New entities OrderHeaderWokEffort and ShoppingListWorkEffort for associating WorkEffort with orders and shopping lists (r 5695)
  • ContactList.contactListName is changed to "name" instead of "id-ne", so it can now be longer than 20 chars. (r 5700)
  • New view entities OrderHeaderItemAndInv, OrderHeaderItemAndInvRoles, currently used to determine which items are back ordered (r 5721)
  • New entity group "org.ofbiz.odbc" with entities OdbcPackageOut, OdbcShipmentOut, OdbcPackageIn used for creating records in staging tables for third party shipping utilities such as WorldShip (r 5724, 5726, 5727)
  • New OrderItem.isModifiedPrice field to keep an order item's price unchanged when an order is modified (r 5751)
Seed Data Changes
  • Changed descriptions of manufacturing StatusItems (r 5705)
  • New demo ContactLists - "New Product Announcements" and "Product Tips Newsletters" (r 5710)
  • French regions now in common data (r 5723)
  • Demo data for party group membership and party classification data: see product WG-1111 for party group "DemoCustCompany" and party person "DemoCustAgent" (r 5740)
Base and Framework
  • Entity ECAs will now print the error message from transactions which cause exceptions, to help users track down source of bugs (r 5681)
  • Minor bug with banners in form widget fixed (r 5682)
  • Fixed bug with caching null generic entities (r 5683) and comparing them (r 5687)
  • EntityFinderUtil.createCondition will now throw an exception with an error message if the entity name is null (r 5706)
  • Better handling of parent/child forms with form-widget's ModelForm (r 5715)
  • Formatting changes in ModelService and ServiceDispatcher (r 5716)
  • New JavaScript in webcommon/includes/lookup.ftl to return multiple values from a popup window (r 5717)
  • getStatusValidChangeToDetails service's input field is corrected from "statusTypeId" to "statusId" (r 5719)
  • Many base and framework classes now changed to "implements Serializable" (r 5720)
  • Fixed "request-redirect" controller events so that serializable attributes are kept between requests, enabling error messages, etc. to be displayed (r 5744)
Accounting
  • Moved Fixed Asset Screens' Decorator from FixedAssetScreens to CommonScreens and cleaned up fixed asset screens (r 5688)
  • Removed "if" which is no longer needed as a result r 5688 in fixed asset screens' tab bar (r 5693)
Content
  • "Content" tab is now highlighted correctly on all screens, and some tabs have been changed to spaces (r 5680)
  • Clean up and conversion of "Data Resource" screens from JPublish to screen widget (r 5748)
  • Parameterized content screens' decorator location in the web.xml file and clean up of screens (r 5749)
eCommerce
  • New screens to support signing up for an email list (r 5707)
  • New feature to send an email when a customer signs up for a mailing list (ContactListParty becomes "pending") (r 5710)
  • Formatting cleanup thaniks to new "buttontext" and "linktext" changes (r 5729)
  • CSS clean up (r 5738)
Manufacturing
  • UI changes - removed [ and ] around labels that now look like buttons with the new "buttontext" CSS class (r 5703, 5711)
Marketing
  • New screens to edit and view contact lists and communication events for those contact lists (r 5685, 5701)
Order
  • New services "copyQuote" and "copyQuoteItem" and new screens to copy one quote to another (r 5689)
  • Quote screens' "Edit" button is only shown for manual adjustments. Forms have been simplified (r 5690)
  • UI changes - removed [ and ] around labels that now look like buttons with the new "buttontext" CSS class (r 5704, 5709)
  • Formatting changes (tabs to spaces) in OrderServices.java (r 5708)
  • New screen to lookup customer request items (LookupCustRequestItem) (r 5712)
  • MARKETING_PKG_AUTO implemented: when a product has MARKETING_PKG_AUTO items associated with it, it is replaced by the associated items when a sales order is created (r 5714)
  • New method OrderReadHelper.getOrderBackorderQuantity which returns a double of the total back ordered quantities on an order. View orders now shows if the order is back ordered (r 5721)
  • New link in order header to "create package" (r 5728)
  • If unit price is not set for a quote item, the price is calculated using calculateProductPrice service after running quote adjustments. If a price is set in quote item, then the price is used as base price. (r 5730)
  • In "Edit quote" screen," "Create Order" button is visible only for accepted quotes. The quote is added to the cart using the "loadCartFromQuote" service. Old servlet events are removed. (r 5731, 5735) When quote has not been approved, "Create Order" is shown in disabled state (r 5743)
  • ShoppingCart's orderPartyId is now correctly set to billFromVendorPartyId for purchase orders and billToCustomerPartyId for all other orders (r 5732)
  • New screens to lookup quote and quote item (r 5733)
  • Corrected where ShoppingCart.CartShipInfo.CartShipItemInfo was getting its information (r 5737, 5739)
  • Fixed Javadoc error introduced by r 5714 (r 5741)
  • New feature to mass approve and mass pick a list of orders on the find screen (r 5746)
  • quickShipEntireOrder now changed back to "request-redirect" (r 5746)
  • New screens to edit and lookup shoping lists (r 5747)
  • New services to create and update OrderHeader, screens to lookup order header (r 5750)
Party
  • Clean up and minor UI bug fixes (r 5698)
  • Clean up of contact list screens (r 5702)
  • New create new employee and create new prospect wizard screens (in addition to "Create Person", etc.) (r 5718)
  • "Show all parties" now hides the lookup box (r 5722)
  • Party Manager documentation is now up to date with revision 5752
Product
  • New wizard-based packing station in facility manager, with ODBC link (r 5724)
  • Formatting changes in shipment screens of facility manager (r 5736)
  • Price and promotion rules now support party group member ship (PRIP_PARTY_GRP_MEM) and party classification conditions (PRIP_PARTY_CLASS) (r 5740)
  • Fixed incorrect definition of "convertPickOrderIdListToHeaders" (r 5745)
Web Tools
  • Fixed problems with protected methods in Entity SQL Processor (r 5752)

Work Effort
  • New screens and services for work effort assignments and for work efforts based on communication events (r 5684, 5686)
  • New screens for adding, editing, and listing WorkEffort Party Assignment (r 5691)
  • New screens, forms, and services for Communication Event-related Work Effort (r 5694)
  • New CustRequestItem screens (r 5712, 5713)
  • New screens and services for work efforts related to quotes (r 5734)
  • New screens to create, edit, view, and delete work effort requirements (r 5742)
  • New screens to add work effort to shopping lists (r 5747)
  • New screens to add, list, and edit work effort associated with order headers (r 5750)
Open Travel Systems
  • Clean up of file layout in hotel back-end and some new accounting screens (r 5697)

Friday, September 09, 2005

OFBiz Development SVN r5679

51 new commits this week. SVN 5679 builds and installs successfully.

Significant changes this week
  1. New ProductPricePurpose entity and modifications to calculateProductPrice to support it.
  2. Significant amount of more work on contact lists and communication events (ie, sending out emails to a marketing list)
  3. Lots of UI enhancements
  4. Lots of bug fixes
  5. New simple hotel reservation demo from Hans.
The ProductPricePurpose change is pretty significant, and fortunately David provide us with detailed comments on is, so I'll copy it here:
... in the past we had an over-use of the productPriceTypeId and have come up with a need to use some of those other price types, but along with the price calculation and such. The solution is to introduce the concept of the ProductPricePurpose, so we have a new table for that and a new field on the ProductPrice entity for the productPricePurposeId. Previous calculated prices are now considered to have the PURCHASE purpose, and for the calculateProductPrice service if you don't pass in the purpose you want it defaults to PURCHASE. Some previous ProductPriceTypes are no longer used as such and are now ProductPricePurposes, namely RECURRING_CHARGE, USAGE_CHARGE, and COMPONENT_PRICE. The real driving force behind this change is a need to support price calculation for RECURRING_CHARGE and COMPONENT_PRICE, and other custom or future price purposes. NOTE: this did require a primary key change for the ProductPrice table, the calculateProductPrice service will still support a null productPricePurposeId so that after an upgrade the whole system won't be useless, but that table or the pk on that table should be rebuilt right away for this change. All ProductPrice seed data has been updated to support this change.

Thanks to our contributors
This week's contributors include Adam Heath, Pierre G., Buxerolles, Tarlika Erika Schmidt, Rupinder Mazara, Andrew Sykes, Hans, Jacopo, David, Andy, and myself.

Entity Model Changes
  • New ProductPricePurpose entity and foreign-key from ProductPrice to ProductPricePurpose (r 5638)
  • Product config entities are regrouped under "org.ofbiz.product.config" and moved around in the entitymodel.xml file (r 5638)
  • OrderPaymentPreference now has a new productPricePurposeTypeId field to record different preferences for different price purposes: ie, cash for an initial purchase, credit card for recurring purchases (r 5644)

Seed Data Changes

  • New UOM data for data size (KB, MB, GB, TB) and transfer speeds (Mbps, etc.) with conversion factors (r 5637)
  • Demo data of GZ-BASKET and GZ-KIT. GZ-BASKET is an auto-exploded marketing package made up of 1 GZ-1000, 2 GZ-1001, and 3 GZ-1004, so its quantity is based on the minimum number of GZ-BASKETs which can be made from the member products (r 5652, 5653)
  • Changes in the description of manufacturing work efforts (r 5672)
  • Fixed the primary key field (geoId) of Geo data for Italy, so for example, Agrigento's id is now "IT-AG" instead of just "AG," in case there are other countries which also have abbreviation "AG." (r 5674)
Base and Framework
  • Entity engine can now figure out if the primary key fields of the data model (defined in entity model XML) are actually primary keys in the database (r 5636)
  • New UtilDateTime.toCalendar method which converts a Timestamp to Calendar (r 5640)
  • Comment about the fileName attribute of the runOfflineEntitySync service - apparently, entity sync can now be saved to a file and run offline with a default name of offline_entitySync-${entitySyncId}-${yyMMddHHmmss}.xml (r 5645)
  • New CSS for buttontext so they now look like little buttons, and new linktext class for links that should look like links (r 5648)
  • Fix to model form to help with reuse (r 5675)
  • Changed attributes of "size," "start," "view-index," "view-size" for simple-methods, widget-form, and widget-tree from integer to strings to be less restrictive (r 5678)
Accounting
  • Fixed bug where a null status could cause display of payments to crash (r 5655)
  • Applying payments' list of tax authorities geoIds can now be null (r 5656)
  • Fixed problem with invoiceItemSeqId - it is now always formatted with UtilFormatOut.formatPaddedNumber (r 5659)
Content
  • Layout change of controller.xml for content manager (r 5647)
  • Fixed titles of pages in the content manager's Data Setup screens (r 5661)
Manufacturing
  • Modified UI labels for actual and estimated times in production run's "Declare" form (r 5671)
Marketing
  • Clean up and enhancements to the contact list UI (r 5650)
  • New screens and services to create contact list communication events (r 5660, r 5673)
Order
  • Fixed bug where return header screen crashes because it's looking for a non-existent field in OrderRole (r 5629)
  • Fixed bug with trying to add an item to an existing order when the payment method is "Offline Payment" (r 5630)
  • Internationalization for "jurisdiction" and telephone number extensions (r 5632)
  • Fixed quote adjustment-related bug when making new shopping cart item (r 5635)
  • Clean up of shipsettings page for purchase orders (r 5641)
  • Fixed bug with sending order change notification caused because UtilValidate.isEmail thinks that null is a valid email (r 5649)
  • Fixed bug where tracking codes of orders were incorrectly displayed (r 5654)
  • Fixed bug with receiving inventory from returns caused by all the items' inventoryItemTypeId being lumped into one input field on the form (r 5657)
  • Fixed bug where inventory from "quick refund entire order" is always received as serialized, which is a problem because serialized inventory is currently not working. Now it looks to the facility and uses its defaultInventoryItemTypeId (r 5658)
  • Fixed problems where if "Quick Ship Entire Order" and "Quick Refund Entire Order" caused errors, those errors were not displayed. This is a temporary fix by switching their responses to "view" instead of "request-redirect." (r 5662)
  • "Quick Ship Entire Order" option is removed for purchase orders. It is only intended for sales orders, and showing it causes confusion. (r 5664)
  • Product detail page in order entry now allows selection of date by calendar (r 5670)
  • Internationalization of the order list page (r 5676)
  • OrderReadHelper now explicitly sorts the order status by datetime (r 5677)
Product
  • Fixed bug where shipment labels could not be viewed due to a type cast exception by using the GenericValue .getBytes() method on ShipmentPackageRouteSeg's labelImage field, instead of using .get() and force casting into ByteWrapper (r 5631)
  • Added warning messages to log when a shipment is created without origin or destination contact information (r 5633)
  • Removed "label here" debugging message from shipment route segment page in Facility Manager's shipping tab (r 5634)
  • calculateProductPrice service now uses ProductPricePurpose but still works if it is absent to be backwards compatible (r 5638)
  • Clean up to ProductForms' AddSupplierProduct (r 5641)
  • calcualteProductPrice now has a termUomId parameter which is used to specify that the right recurring term (daily, weekly, monthly, etc.) is supported (r 5642, 5643)
  • UI clean up for catalog manager's product content and product forms (r 5646)
  • getProductInventoryAvailable now calculates the inventory ATP and QOH quantities based on the inventory of the underlying products if the item is a MARKETING_PKG_AUTO (auto-exploded marketing package) (r 5651)
  • In catalog manager, inventory items with negative quantities are now shown that the total ATP/QOH at the top match the list of inventory items on the bottom. (r 5663)
  • Catalog manager now has a mainDecoratorLocation defined in web.xml and used through all the screens, to make re-defining the decorator template easier (r 5679)
Travel Systems
  • There is now a demo of a super simple hotel reservation site, "HotelSimple." For more information, see the README.txt/.pdf/.sxw files in specialized/opentravelsystem/ (r 5666, 5667, 5668, 5669)

Friday, September 02, 2005

OFBiz Development SVN r5628

27 new commits this week. SVN 5628 builds and installs successfully.

Significant changes this week
  1. New Quote Adjustment feature which allows promotions and other order adjustments to be stored with quotes and then added back to create orders.
  2. Lots of bug fixes.
  3. Ability to combine BSH scripts into strings like this: ${bsh:...}
Thanks to our contributors
This week's contributors include Jack Hung, Hans Bakker, Jacopo, David, Andy, and myself.

Entity Model Changes
  • PartyAcctgPreference has new fields fiscalYearStartMonth, fiscalYearStartDay, invoiceIdPrefix, lastInvoiceNumber, lastInvoiceRestartDate to help create invoices to government standards (r 5607)
  • ProductPrice now has a timeFreqUomId field to record frequency of recurring charge (r 5611)
  • OrderPaymentPreference now has an orderItemSeqId which is used optionally, in case preference should be associated with order items rather than just the entire order (r 5612)
  • OrderItem now has unitRecurringPrice and recurringFreqUomId to track recurring charges better (r 5612)
  • Fixed view-entity definition for GlAccountAndOrganization. The postedBalance is now explicitly defined to be from GlAccountOrganization. (r 5614)
  • Quote entity has a new productStoreId field (r 5620)
  • QuoteItem has a new isPromo field (r 5620)
  • new QuoteAdjustment entity (r 5620)

Seed Data Changes

  • New invoice status "Received" and valid changes for sending and receiving invoices (r 5608)
  • Removed duplicate ORDERMGR_SEND_CONFIRMATION permission in security data (r 5613)
Base and Framework
  • widget-form now accepts a "target-parameter" field (r 5603)
  • new UtilDateTime.getYearStart method which includes a third parameter for yearsLater (r 5604)
  • UI label formatting errors for minilang fixed (r 5605)
  • Fixed minilang if/else-if tag problem (r 5606)
  • ModelForm now uses an Iterator instead of a ListIterator (r 5621)
  • appbar changed so that "default-server" is the name of webapp server if no _serverId is present in the parameter (r 5623)
  • FlexbileStringExpander, which handles ${} syntax in OFBiz, can now accept BSH scripts, so you can put in ${bsh:...}, and a BSH script will run right there. (r 5624)
  • Error message clean up in FindServices (r 5625)
Accounting/GL Implementation
  • More work done on manual invoice and payment entry
eCommerce
  • Fixed missing import statement in login.bsh (r 5618)
Marketing
  • Marketing campaign roles is now ordered by partyId, not orderId (r 5602)
  • New pages to support contact lists, including links in party manager (r 5603)
Order
  • Fixed problem getting ownerPartyId from destination facility on order returns (r 5609)
  • Fixed bad links to party manager from order manager. Now using "partyId" instead of "party_id," so the party manager's header bar comes up (r 5615)
  • Quote items are now added to cart in the same order as the quote (r 5619)
  • New quote adjustment features--order adjustments such as promotions can be stored with quotes and then added to the cart at once. (r 5620)
  • Order entry product detail page handling of parameters cleaned up (r 5622)
  • Cart can now be created from a quote in order entry with just one click (r 5626, 5627)
  • New screens to edit quote adjustments (r 5628)
Product
  • Fixed problem with viewing facilities when "isVirtual" flag is null as well as when it is "Y" or "N" (r 5610)
  • Fixed bad error message with DHL shipping (r 5616)
  • Fixed bug where [update] link next to shipping addresses for purchase orders do not show up (r 5617)