Friday, August 26, 2005

OFBiz Development SVN r5601

41 new commits this week. SVN 5601 builds and installs successfully.

Significant changes this week
  1. Many new screens in marketing and party application for contact lists and communication events
  2. Enhancements to security permissions for applications
  3. Many bug fixes this week
Thanks to our contributors
This week's contributors include Don Whiting, David, Andy, Leon, and myself.

Entity Model Changes
  • ProductStore now has a "showCheckoutGiftOptions" field. Set it to "N" to disable whether "Order is a gift?" is shown in checkout, order confirmation, and order status/detail pages. (r 5567)
  • JobSandbox is now indexed by "statusId" and "runByInstanceId" (r 5574)
  • OrderAdjustment's "amountPerQuantity" and "percentage" are now "oldAmountPerQuantity" and "oldPercentage" and are considered deprecated (r 5575)
  • Payment now has "actualCurrencyAmount" and "actualCurrencyUomId" to help with reconciliations (r 5576)
  • GlAccountAndOrganization view-entity now has a foreign-key to GlAccount, to help with period closing services (r 5580)
  • PartyAcctgPreference's "COGSMethodId" is now "cogsMethodId" (r 5583)
  • PartyAcctgPreference now has a "invoiceSequenceEnumId" which controls how invoices' sequence numbers are generated (r 5584)
  • New view-entities PaymentMethodAndCreditCard and PaymentMethodAndGiftCard (r 5587)
Seed Data Changes
  • Invoices can now be sequenced in one of three ways (r 5584):
    • Standard - the old way, there may be gaps in sequence numbers
    • Enforced sequence - no gaps, each invoice follows the previous one
    • Restart each year - no gaps, sequence number starts at 1 each fiscal year
  • New SecurityPermissionGroup "OFBTOOLS" to view admin applications (r 5588, 5589, 5590)
  • New tax authority seed data for UT and TX (r 5594, 5601)
Base and Framework
  • RequestHandler now displays error messages when a request returns "error" (5562)
  • Add support for BigDecimal in ObjectType (r 5570)
  • Simple-method "calculate" now supports BigDecimal with a default of 2 decimal places and a "rounding-method" attribute which can be set to Ceiling, Floor, Up, Down, HalfUp, HalfDown, HalfEven (r 5570)
  • UtilHttp now has a stripViewParamsFromQueryString method which automatically retrieves viewIndex and viewSize (r 5571)
  • Simple-method "calculate" changed to use scale more explicitly for more reliable calculation results (r 5573)
  • New methods isDouble and isFloat in UtilValidate, plus clean up of some existing methods (r 5578)
  • Added to code to make "is-enabled" flag actually work for components (r 5579)
  • ComponentConfig supports multiple base permissions, separated by commas (r 5586, 5596)
Accounting
  • Updated accounting transaction services with code from GL component, fixing some problems like setting default reconcile status to "not reconciled (5574)
  • Fix InvoiceWorker methods to get bill to and send from partyIds, based on moving invoice parties from InvoiceRole to Invoice.partyId and .partyIdFrom (5593)
Accounting/GL Implementation
  • Fixed problem with resetting GL account balances
  • Created demo seed data file to import initial balance sheet into GL application, which shows how to set up a company in OFBiz GL
  • The GL application is at Milestone 1 now: it can support core GL needs of most product-oriented companies that deals with purchasing, inventory management, sales, and payments, generate basic financial and tax reports, and export GL entries to outside accounting systems
Content
  • Fix service definition (wrong class name) for findRelatedConent service (r 5600)
eCommerce
  • Many pages modified to determine whether "Order is a gift?" is shown, based on product store setting. (r 5567)
  • Fixed problem with "USERNAME" in the URL when clicking on "Not you?" (r 5572)
  • Clean up of customer settings screen and allow solicitation ("Y" or "N") fix (r 5577)
  • Credit card and EFT options only show up in checkout if set in product store (r 5582)
  • Fixes bug of unknown "checkoutpayment" request after creating a new credit card during checkout (r 5595)
Marketing
  • Screens to create contact lists and communication events (r 5569, 5598)
Order
  • Removed "Payment already received" from checkout sequence in order entry, though code to support it still exists (r 5564)
  • Null pointer checks in ShoppingCart and CheckOutHelper (r 5585)
  • Fix bad links back to party manager from shipment settings in order creation process (r 5599)
Party
  • Tab to space changes (SVN r 5561)
  • Fixed problem of createPersonAndUserLogin not encrypting passwords (
Product
  • Format clean ups (SVN r 5563, 5581)
Community
  • Fixed appbar (r 5597)

Friday, August 19, 2005

OFBiz Development SVN r5560

39 new commits this week. SVN 5560 builds and installs successfully.

Significant changes this week
  1. Lots of new UI changes in the order manager and in the party manager's communications events function.
  2. Orders now have bill-from vendor and bill-to customer created for all orders.
  3. Invoices now use the Invoice.partyIdFrom and .partyId fields instead of InvoiceRole for primary invoice parties.
  4. New entities in preparation for work managing marketing lists and sending out marketing information.
Thanks to our contributors
This week's contributors include Jean-Luc Malet, Jacques Le Roux, Jacopo, David, Andy, and myself.

Entity Changes
  • More products added to the default search category (r 5533)
  • New entities: QuoteWorkEffort, CustRequestCommEvent, CustRequestWorkEffort (r 5545)
  • ContactList now has a contactMechTypeId field but no longer createdDate or lastModifiedDate (r 5545)
  • ContactListParty has statusId (r 5545)
  • Status valid change for communications events (r 5545)
  • Facility now has a defaultInventoryItemTypeId field (r 5546)
Seed Data Changes
  • ContactListType seed data: Marketing, Newsletter, Announcement (r 5545)
  • New product category type of "TAX_CATEGORY" (r 5527)
  • Blog seed data clean up (r 5534)
  • New "COMMENT_NOTE" communication event type (r 5536)
Demo Data Changes
  • New webstorew arehouse defaults to non-serialized inventory (r 5547)
  • Product images for ecommerce demo (r 5548)
Base and Framework
  • auto-field-map attribute for widget-form, widget-screen, and widget-screen can now be set to "true," "false," or the name of a Map to be for service input parameters (r 5522)
  • new UI labels (r 5524)
  • entity engine will only show query time messages if the query exceeds 100 ms (r 5525)
  • entity engine will log error message if a field is set with a value of a type which is incompatible with Java type of the field (r 5535)
  • fixed EntityCrypto that caused infinite loop on initial install (r 5554)
Accounting
  • Invoice parties are now stored in the Invoice.partyIdFrom and .partyId fields, and InvoiceRole is only used for additional parties involved in the invoice and is empty for most invoices now. (r 5553)
Accounting/GL Implementation
  • UI label changes (r 5541)
eCommerce
  • Demo now has images! (r 5548, r 5555)
Manufacturing
  • the link to confirm a production run is now "Confirm" instead of "Print Docs" (r 5529)
  • other UI changes for "Edit Production Run" page (r 5532)
Order
  • HTML clean up of editorderitems (r 5539)
  • UI label fix for requirements tab (r 5544)
  • Bill-from vendor and bill-to customer are now explicitly created for both sales and purchase orders, rather than implicitly assumed based on the order's productStoreId (r 5549, 5552)
  • storeOrder service is only retrieving ProductStore for sales orders now. (r 5550, 5551)
  • new "order list" page for order manager, showing all orders, which is also the main page for order manager now (r 5556, 5557)
  • removed "Payment Already Received" option from order manager checkout. The code for it is still around. (r 5558)
  • UI change of send email link (r 5559)
  • New link to mark orders as completed on the order view page. This shows up when all the items are completed. (r 5560)
Party
  • new findParty service which moves the logic of the old findParty.bsh to the service layer from the view layer (r 5523)
  • extensive formatting changes to communication screens (r 5526, 5542, 5543)
  • communication events can now be viewed (as HTML) with a link to edit (r 5530, 5531)
Product
  • error message when product feature can't be found shows product Id (r 5528)
  • clean up of product screens screen-widget code, changing field-map from env-name to field-name (r 5537)
  • fixed problems with field type conversions in update product keyword servlet (r 5538)
  • facilities now supports a default inventory item type (r 5546)
  • returns can now be received as serialized or non-serialized (r 5546)

Friday, August 12, 2005

OFBiz Development SVN r5521

62 new commits this week. SVN 5521 builds and installs successfully.

Significant changes this week
  1. New screens and services to manage production runs.
  2. Ability to save emails sent (order confirmations, etc.) as communication events in the party manager.
  3. Lots of entity and service cleanups.
Thanks to our contributors
This week's contributors include Jacopo, David, Andy, and myself.

Entity and Seed Data Changes
  • PaymentApplication now has a taxAuthGeoId so a payment to a tax authority can be spread across all the geographic areas for which the authority is responsible (r 5461)
  • New view entities: UomAndType (r 5475), TaxAuthorityGlAccountBalance (r 5481), PartyAndPostalAddress and PartyAndTelecomNumber (r 5500)
  • New fields for view entities: AcctgTransAndEntries (r 5482),
  • InvoiceItem.taxGeoId changed to taxAuthGeoId for consistency (r 5483)
  • AcctgTrans.returnId added to link accounting transactions back to returns (r 5483)
  • New entities for FixedAssetStdCost and FixedAssetStdCostType (r 5477)
  • "Customer Returns" is an EXPENSE not REVENUE GL account. This has been corrected in the demo chart of accounts (r 5491)
  • Person now has a companyName field to record company name of a person, for use when that's all you need (r 5503)
  • New contact mech purposes: PRIMARY_PHONE and PRIMARY_LOCATION (r 5503)
  • CommunicationsEvent now has a contactListId to link to ContactList (r 5505)
  • ContactListParty entity now has a preferredContactMechId to link to ContactMech (r 5506)
  • New ProductCalculatedInfo entity. The totalQuantityOrdered, totalTimesViewed, averageCustomerRating fields are removed from Product and moved here. (r 5510, 5521)
Base and Framework
  • More examples (r 5475, 5485)
  • Small modifications to performFind services (r 5485)
  • and directives for screen- and form-widgets now have the ability to compare field-name, env-name, and values ("value="), with field-name being the only required attribute (r 5494)
  • If timing is turned on for debugging, GenericDAO will now flag queries which take longer than 50 milliseconds (r 5502)
  • Entity engine test suite is done. Try "ant run-tests" on your favorite database and tell us what if all the tests pass (r 5504)
  • Html menu rendering tool fixed - checks that style is not empty before creating a div tag (r 5511)
  • ModelTree fixed to avoid EntityListIterator exceptions that came from using .hasNext on an EntityListIterator. Now checks what kind of iterator it is and uses the right .hasNext/.next methods (r 5512)
  • The EntityExpr(lhs, leftUpper, operator, rhs, rightUpper) construction is no longer considered deprecated (r 5521)
Accounting
  • UI labels (r 5465, 5478, 5480,
  • Carry over tax information (taxAuthPartyId, overrideGlAccountId, taxGeoId) from OrderAdjustment to InvoiceItem (r 5466)
  • New UI and services for managing fixed asset standard costs (ie, setup and usage costs at this point) (r 5477)
Accounting/GL Implementation
  • Tax posting and payments completed
  • Most of the manual invoice entry completed, thanks to Hans Bakker
  • Brett Palmer's gotten started on check printing (via PDF)
Content
  • Menu widget now uses CSS instead of tables for layout. Also clean ups and fixes (r 5469, 5470)
eCommerce
  • Map processors and simple methods moved from src/ to script/
Manufacturing
  • Product with billOfMaterialLevel of null is now treated as same as level of zero (r 5496)
  • Fixed bug in inventory event plan screen (r 5497)
  • Changed order of routing tabs (r 5498) and removed some old tabs (r 5515)
  • New services to quick run a production task and quick run all the tasks of a production run (r 5516)
  • New screens and services to manage production run status quickly (r 5517)
  • New service to cancel a production run, but only if it is just created or just printed and if no other production runs depend on it (r 5518)
Order
  • Fixed problem with rounding errors when returning items, because returnablePrice from the getReturnableQuantity service has more significant digits than the returnPrice from user (r 5464)
  • Order reports header item set in screen widget (r 5473)
  • New security permission for quote price manager, ORDERMGR_QUOTE_PRICE (r 5487)
  • Pop up menu to lookup facilities during purchase order entry, allowing purchase orders to be shipped to any facility (r 5488)
  • Better handling of errors during the order creation process (r 5489)
  • Small modifications to OrderReadHelper: getTaxTotal() is now getHeaderTaxToal(), using getOrderHeaderAdjustments. The new getTaxTotal() uses getAdjustments for all order items. (r 5490)
  • productStoreId is now set into session so the order entry screens are for the right screen. Not necessarily a long term solution, but now multi-store order taking is done correctly. (r 5499)
  • Link on order view page to send a manual order confirmation email with a custom note for an order (r 5514)
Party
  • Communication events and screens changes (r 5471, 5501) - Note this causes a bug which has subsequently been fixed
  • Menu tab bars fixed (r 5509)
  • Emails now saved as CommunicationEvents, so you can view a history of emails, etc. sent to a customer (r 5514, r 5520)
Product
  • Product content caching added back in, with a default of 5 minute timeout set in base/config/cache.properties (product.content.rendered.expireTime and product.content.rendered.useSoftReference) (r 5467)
  • Clean up of product config caching code (r 5472) and new settings (product.config.expireTime and product.config.useSoftReference) in base/config/cache.properties (r 5474)
  • Catalog manager now can duplicate product categories and edit product category attributes (r 5476)
  • Pull down menus for product store form (r 5495)
  • Services for searching and counting products now use the ProductCalculatedInfo entity (r 5510)
Web Tools
  • main page clean up (r 5484)
Work Effort
  • Fixed bug when project's phase does not have a fromDate (r 5486)

Friday, August 05, 2005

OFBiz Development SVN r5458

40 new commits this week. SVN 5458 builds and installs successfully.

Significant changes this week
  1. Ability to disable OFBiz components and SECA, EECA, Service MCA rules.
  2. Screen decorators can now be defined in web.xml and used as parameters in the screen definitions of an application, allowing greater flexibility in customizing.
  3. Significant refactoring of data model for sales tax (see below in "Entity and seed data" section.) In the meantime, we've created a patch which will allow existing installations to be compatible with the future sales tax handling.
Thanks to our contributors
This week's contributors include Olivier Heintz, Chris Howe, Les Austin, Jacopo, David, Andy, and myself.

Entity and Seed Data Changes
  • New "autoInvoiceDigitalItems" indicator field on the ProductStore entity (r 5422, 5436, 5441) in case the store should not invoice the items in OFBiz but uses an outside system to fulfill orders.
  • CustRequestItem now has one-to-one relation back to CustRequest (r 5425)
  • InvoiceItem now has fields for taxAuthPartyId, taxGeoId for tracking tax authority for sales tax line items. The account of the sales tax line item will be in "overrideGlAccountId." (r 5430, r 5440)
  • GlReconciliation now has fields for GL account id, organization, reconciled balance, reconciled date to track a history of GL account reconciliations (r 5431)
  • AcctgTransAndEntries view entity got some new fields for display purposes (r 5431)
  • Removed erroneous seed data for a sales tax collected revenue account. Sales tax collection should be a liability account only. (r 5443)
  • New entities for modeling sales, use, and VAT taxes on products:
    • TaxAuthority
    • TaxAuthorityCategory
    • TaxAuthorityGlAccount
    • TaxAuthorityRateProduct
    • TaxAuthorityRateType
    • PartyTaxAuthorityInfo
  • Existing entities such as PartyTaxInfo, SimpleSalesTaxLookup, ZipSalesTaxLookup will be replaced.
  • OrderAdjustment has new fields for recording tax authority info (r 5447)
  • OrderItem and OrderAdjustment now both have overrideGlAccountId fields. This is intended for recording tax-related GL accounts but can have some other uses later as well. (r 5451)
  • Samples tax authorities are now in ecommerce/data/DemoTaxAuthority.xml (r 5452, r 5453)
  • New TAX_PAYMENT and SALES_TAX_PAYMENT payment types (r 5454)
Base and Framework
  • For PostgreSQL, "blob" is now an "OID" rather than a "BYTEA" (r 5432)
  • New service to create "UomConversionDated" entities (r 5433)
  • ofbiz-component tags in ofbiz-component.xml files now has an "enabled" flag which defaults to true but allows you to turn components off by setting it to false. (r 5437)
  • EntityEcaRule, ServiceEcaRule, and ServiceMcaRule (for mail) now have a setEnabled(boolean enabled) method which allows you to turn EECA, SECA, and SMCA rules on and off. (r 5438)
  • EntityEcaUtil, ServiceEcaUtil, ServiceMcaUtil now have methods (getEntityECARules, getServiceEventRules, getServiceMcaRules) to generate a list of the rules. (r 5438)
  • icu4j version 3.4 has been added to the framework. (r 5442, 5448) Currency amounts can now be spelled out by using:
    <@ofbizAmount amount=number format="spelled-out"/>
  • New UI label for "Type" (r 5445)
  • Newfoundland Geo added, along with translations of French Canadian Geos (r 5450)
  • Derby has been upgraded to 10.1.10 (r 5457)
Accounting
  • New UI labels (r 5429, 5444)
  • When creating an invoice, sales tax line items are no longer marked "taxable" (r 5440)
  • checkGiftCertificateBalance service now requires a PIN (r 5434)
  • Fixed gift certificates bug where customer could not use gift certificate if amount of gift certificate were equal the amount of the transaction (could only do it if it were greater than) (r 5439)
  • New security permission "ACCOUNTING_FX_ENTRY" for entering foreign exchange conversion rates into system (r 5454)
Accounting/GL Implementation
  • Trial balance report
  • GL account reconciliation screen and services
  • Foreign currency entry screen
  • Posting of sales tax liability
  • Sales tax payments
Content
  • Product content is no longer cached (r 5424)
  • ScreenRenderer and ContextFilter now allow a screen definition to defined in a web.xml file and reused as a parameter in a screen-widget XML file, rather than directly specified to a file. This allows easier customization of web sites. See example in ecommerce applications (r 5426)
eCommerce
  • Return and gift card email now use screen-based email sending (r 5423)
  • Main decorator pattern is now specified as a parameter in web.xml and reused as a parameter in the screen definitions (r 5426)
Examples
  • Drop downs in ExampleForms (r 5427)
Marketing
  • Removed entity-group definition for entity that's no longer there (r 5446)
  • Clean up of marketing segment scripts (r 5455)
Order
  • Return PDF now also uses the logo defined in OrderPrintForms.xml's "CompanyLogo" screen. (r 5418)
  • Fixed bug where requirements from ATP service was causing orders to fail when user did not ORDERMGR_CREATE permissions (r 5419)
  • Fixed bad form name on quickReturn.ftl. It must be called "selectAllForm" (r 5420, 5421)
  • Fixed bug with purchase order entry prompting user to create a new address all the time (r 5428)
  • Fixed bug with resetting payment methods amounts in shopping cart (r 5435)
Product
  • Fixed bug with log messages in product store inventory reservations (r 5449)
  • Removed bad link to create product price rule at top of screen (r 5458)