Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: Trunk
    • Fix Version/s: 12.04.06
    • Component/s: birt
    • Labels:
      None

      Description

      Following are results of testing BIRT across four revisions in an effort to identity where BIRT reports work and where they do not.

      Four critical revisions were identified:
      1. r1003469 introduced BIRT reports in accounting which no longer work.
      2. r1293999 upgraded the BIRT version after which some reports no longer worked
      3. r1361130 moved BIRT from framework to specialpurpose breaking other reports
      4. r1407740 is the current release for compairson

      In the current release the BIRT ofbiz-component.xml was altered to mount BIRT reports and the BIRT Examples (which are no longer in the Example ment) were invoked manually (https://localhost:8443/birt/control/main).

      Test results follow:

      Revision BIRT Report Name WIDGET Test Result Comment
      r1003469 11/01/2010 Hans Bakker added accounting reports
      AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign ReportFinancialSummaryScreens.xml Pass
      PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Pass
      BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Pass
      HTML example.rptdesign ExampleMenus.xml Pass
      PDF example.rptdesign ExampleMenus.xml Pass
      HTML chart.rptdesign ExampleMenus.xml Pass
      PDF chart.rptdesign ExampleMenus.xml Pass

      r1293999 2/26/2012 Hans Bakker upgrade BIRT to 3.7.2
      AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Pass
      BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      HTML example.rptdesign ExampleMenus.xml Pass
      PDF example.rptdesign ExampleMenus.xml Pass
      HTML chart.rptdesign ExampleMenus.xml Pass
      PDF chart.rptdesign ExampleMenus.xml Pass

      r1361130 7/13/2012 jacopoc Moved the "birt" component from framework to specialpurpose
      AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Fail Form opens without data
      BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      HTML example.rptdesign ExampleMenus.xml Fail Table (id = 10):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleId"] (Element ID:10)
      PDF example.rptdesign ExampleMenus.xml Fail Form opens without data
      HTML chart.rptdesign ExampleMenus.xml
      Table (id = 32):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:32)

      Chart (id = 49):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:49)

      Chart (id = 50):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:50)
      PDF chart.rptdesign ExampleMenus.xml Fail Form opens without data

      r1407740 Trunk As Of 11/10/2012
      AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Fail Form opens without data
      BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
      HTML example.rptdesign ExampleMenus.xml Fail Table (id = 10):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleId"] (Element ID:10)
      PDF example.rptdesign ExampleMenus.xml Fail Form opens without data
      HTML chart.rptdesign ExampleMenus.xml
      Table (id = 32):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:32)

      Chart (id = 49):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:49)

      Chart (id = 50):
      + A BIRT exception occurred. See next exception for more information.
      Invalid javascript expression: dataSetRow["exampleTypeId"] (Element ID:50)
      PDF chart.rptdesign ExampleMenus.xml Fail Form opens without data

        Issue Links

          Activity

          Hide
          taher Taher Alkhateeb added a comment -

          Hi, I could be wrong but the error messages seem to be due to OFBIZ-4849 in which the YUI compressor library is conflicting with BIRT. Can you confirm the above errors even when removing the YUI jar?

          Show
          taher Taher Alkhateeb added a comment - Hi, I could be wrong but the error messages seem to be due to OFBIZ-4849 in which the YUI compressor library is conflicting with BIRT. Can you confirm the above errors even when removing the YUI jar?
          Hide
          brettonwoods Tom Burns added a comment -

          Taher,

          YUI accounts for the problem in 5 out of the 7 tested reports. The remaining two failures (there are likely more in untested reports) appeared in r1293999 2/26/2012 Hans Bakker upgrade BIRT to 3.7.2 After that upgrade the reports broken by YUI (which was introduced two months later in r1310983 4/8/2012) were still working.

          The yuicompressor-2.4.6.jar does not appear to be used in OFBiz. There is only a reference in the main build file task minifyJsCss which is incomplete and does nothing. yuicompressor-2.4.6.jar could be removed as part of the Slim Down effort.

          Test Results
          r1411196 Trunk As Of 11/19/2012
          AcctgTrans...Payment.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
          PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Pass
          BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank
          HTML example.rptdesign ExampleMenus.xml Pass
          PDF example.rptdesign ExampleMenus.xml Pass
          HTML chart.rptdesign ExampleMenus.xml Pass
          PDF chart.rptdesign ExampleMenus.xml Pass

          Thanks for the suggestion,

          Tom

          Show
          brettonwoods Tom Burns added a comment - Taher, YUI accounts for the problem in 5 out of the 7 tested reports. The remaining two failures (there are likely more in untested reports) appeared in r1293999 2/26/2012 Hans Bakker upgrade BIRT to 3.7.2 After that upgrade the reports broken by YUI (which was introduced two months later in r1310983 4/8/2012) were still working. The yuicompressor-2.4.6.jar does not appear to be used in OFBiz. There is only a reference in the main build file task minifyJsCss which is incomplete and does nothing. yuicompressor-2.4.6.jar could be removed as part of the Slim Down effort. Test Results r1411196 Trunk As Of 11/19/2012 AcctgTrans...Payment.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank PaymentAcctgTransEntry.rptdesign AccountingMenus.xml Pass BalanceSheet.rptdesign ReportFinancialSummaryScreens.xml Fail Page Blank HTML example.rptdesign ExampleMenus.xml Pass PDF example.rptdesign ExampleMenus.xml Pass HTML chart.rptdesign ExampleMenus.xml Pass PDF chart.rptdesign ExampleMenus.xml Pass Thanks for the suggestion, Tom
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          I added the YUI compressor and agree to remove it

          Show
          jacques.le.roux Jacques Le Roux added a comment - I added the YUI compressor and agree to remove it
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          Let's get lean

          Show
          jacques.le.roux Jacques Le Roux added a comment - Let's get lean
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          Or also YAGNI

          Show
          jacques.le.roux Jacques Le Roux added a comment - Or also YAGNI
          Hide
          brettonwoods Tom Burns added a comment -

          Some of the problem with BIRT really are problems with BIRT see:
          http://www.eclipse.org/forums/index.php/m/369012/?srch=setDisplayValue+problem#msg_369015

          Many of the BIRT accounting reports use BIRT setDisplayValue in "if" statements.
          The effects are very inconsistent. One report renders correctly, others render incorrectly or blank.
          Testing is made more difficult by having the accounting component mounted twice - in Accounting and in BIRT.
          There are some BIRT reports that have been replaced in accounting with FOP reports.
          The FOP reports render data but this is masked by the BIRT mounting which redirects the request to a BIRT report that does not work.

          Here are some test notes.

          BIRT Reports with setDisplayValue:
          1. AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign
          Has screenfop replacement? No
          Launch From:
          https://localhost:8443/accounting/control/FindAcctgTransEntries?organizationPartyId=Company
          Click find
          Click Export with Invoice and Payment as PDF opens blank screen
          Request: /accounting/control/AcctgTransEntriesSearchResultsInvoiceAndPaymentPdf.pdf
          Note: request is not in accounting is only in BIRT accounting webapp
          If BIRT disabled will return request not found
          If BIRT enabled opens a blank screen

          2. BalanceSheet.rptdesign
          Has screenfop replacement? Yes
          Screenfop renders report? Only if BIRT components disabled.
          Launch From: https://localhost:8443/accounting/control/BalanceSheet?organizationPartyId=Company
          Request: /accounting/control/BalanceSheet.pdf
          Note: If BIRT enabled a blank screen is rendered

          3. IncomeStatement.rptdesign
          Has screenfop replacement? Yes
          Screenfop renders report? Only if BIRT components disabled.
          Launch From: https://localhost:8443/accounting/control/IncomeStatement?organizationPartyId=Company
          Request: /accounting/control/IncomeStatementListPdf.pdf
          Note: If BIRT enabled a blank screen is rendered

          4. InvoiceAcctgTransEntry.rptdesign
          Has screenfop replacement? No
          Launch From: https://localhost:8443/accounting/control/invoiceOverview?invoiceId=8008
          Request: /accounting/control/InvoiceAcctgTransEntriesPdf
          Note: Report runs but information is not accurate. Debits and Credits are not distributed correctly. See PDF Reports 8008 8009

          5. PaymentAcctgTransEntry.rptdesign
          Has screenfop replacement? No
          Launch From: https://localhost:8443/accounting/control/paymentOverview?paymentId=8004
          Request: /accounting/control/PaymentAcctgTransEntriesPdf
          Note: This is the only report that appears to work with setDisplayValue

          6. TrialBalance.rptdesign
          Has screenfop replacement? Yes
          Screenfop renders report? Only if BIRT components disabled.
          Launch From: https://localhost:8443/accounting/control/TrialBalance?organizationPartyId=Company Click Submit
          Request: /accounting/control/TrialBalanceSearchResultsPdf.pdf

          In addition there are the BIRT reports for facility and order manager which do not seem to be accessible in the trunk.

          If all of the above are correct then the options are:
          1. Fix the broken BIRT reports and remove or comment out BIRT request to reports that are supported by FOP. Replace BIRT reports not supported by FOP with FOP reports. Send BIRT to attic or extras
          2. Remove or comment out the BIRT webapp mountings and remove or comment out the launch points in trunk to broken reports. Remove broken BIRT reports that can not be fixed and send BIRT to attic or extras.
          3. Revert to the previous version of the BIRT lib, the last version were everything worked. Test BIRT reports, replace BIRT reports not supported by FOP with FOP reports. Send BIRT to attic or extras.
          4. Something else TBD

          Correct me if I am wrong but the only BIRT report that appears to be working correctly is PaymentAcctgTransEntry.rptdesign.

          If BIRT is to be removed from the trunk, then I think 3 is the best approach. Go back to the last known good and dump.

          Tom

          Show
          brettonwoods Tom Burns added a comment - Some of the problem with BIRT really are problems with BIRT see: http://www.eclipse.org/forums/index.php/m/369012/?srch=setDisplayValue+problem#msg_369015 Many of the BIRT accounting reports use BIRT setDisplayValue in "if" statements. The effects are very inconsistent. One report renders correctly, others render incorrectly or blank. Testing is made more difficult by having the accounting component mounted twice - in Accounting and in BIRT. There are some BIRT reports that have been replaced in accounting with FOP reports. The FOP reports render data but this is masked by the BIRT mounting which redirects the request to a BIRT report that does not work. Here are some test notes. BIRT Reports with setDisplayValue: 1. AcctgTransEntriesSearchResultsInvoiceAndPayment.rptdesign Has screenfop replacement? No Launch From: https://localhost:8443/accounting/control/FindAcctgTransEntries?organizationPartyId=Company Click find Click Export with Invoice and Payment as PDF opens blank screen Request: /accounting/control/AcctgTransEntriesSearchResultsInvoiceAndPaymentPdf.pdf Note: request is not in accounting is only in BIRT accounting webapp If BIRT disabled will return request not found If BIRT enabled opens a blank screen 2. BalanceSheet.rptdesign Has screenfop replacement? Yes Screenfop renders report? Only if BIRT components disabled. Launch From: https://localhost:8443/accounting/control/BalanceSheet?organizationPartyId=Company Request: /accounting/control/BalanceSheet.pdf Note: If BIRT enabled a blank screen is rendered 3. IncomeStatement.rptdesign Has screenfop replacement? Yes Screenfop renders report? Only if BIRT components disabled. Launch From: https://localhost:8443/accounting/control/IncomeStatement?organizationPartyId=Company Request: /accounting/control/IncomeStatementListPdf.pdf Note: If BIRT enabled a blank screen is rendered 4. InvoiceAcctgTransEntry.rptdesign Has screenfop replacement? No Launch From: https://localhost:8443/accounting/control/invoiceOverview?invoiceId=8008 Request: /accounting/control/InvoiceAcctgTransEntriesPdf Note: Report runs but information is not accurate. Debits and Credits are not distributed correctly. See PDF Reports 8008 8009 5. PaymentAcctgTransEntry.rptdesign Has screenfop replacement? No Launch From: https://localhost:8443/accounting/control/paymentOverview?paymentId=8004 Request: /accounting/control/PaymentAcctgTransEntriesPdf Note: This is the only report that appears to work with setDisplayValue 6. TrialBalance.rptdesign Has screenfop replacement? Yes Screenfop renders report? Only if BIRT components disabled. Launch From: https://localhost:8443/accounting/control/TrialBalance?organizationPartyId=Company Click Submit Request: /accounting/control/TrialBalanceSearchResultsPdf.pdf In addition there are the BIRT reports for facility and order manager which do not seem to be accessible in the trunk. If all of the above are correct then the options are: 1. Fix the broken BIRT reports and remove or comment out BIRT request to reports that are supported by FOP. Replace BIRT reports not supported by FOP with FOP reports. Send BIRT to attic or extras 2. Remove or comment out the BIRT webapp mountings and remove or comment out the launch points in trunk to broken reports. Remove broken BIRT reports that can not be fixed and send BIRT to attic or extras. 3. Revert to the previous version of the BIRT lib, the last version were everything worked. Test BIRT reports, replace BIRT reports not supported by FOP with FOP reports. Send BIRT to attic or extras. 4. Something else TBD Correct me if I am wrong but the only BIRT report that appears to be working correctly is PaymentAcctgTransEntry.rptdesign. If BIRT is to be removed from the trunk, then I think 3 is the best approach. Go back to the last known good and dump. Tom
          Hide
          brettonwoods Tom Burns added a comment -

          Examples of BIRT setDisplayValue behaving badly.

          Show
          brettonwoods Tom Burns added a comment - Examples of BIRT setDisplayValue behaving badly.
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          OK then not only remove the YUI compressor but also Birt, et voilà!

          Show
          jacques.le.roux Jacques Le Roux added a comment - OK then not only remove the YUI compressor but also Birt, et voilà!
          Hide
          taher Taher Alkhateeb added a comment -

          to my understanding fop cannot completely replace BIRT given that it's just an xslt pdf generator whereas BIRT is a full reporting engine with css like formatting, cubes ... you name. add to that the full integration with eclipse that makes sending it to attic an unappealing idea. I'm new in here so not sure if the project has proper replacement ?

          Show
          taher Taher Alkhateeb added a comment - to my understanding fop cannot completely replace BIRT given that it's just an xslt pdf generator whereas BIRT is a full reporting engine with css like formatting, cubes ... you name. add to that the full integration with eclipse that makes sending it to attic an unappealing idea. I'm new in here so not sure if the project has proper replacement ?
          Hide
          brettonwoods Tom Burns added a comment -

          Taher,

          I agree with you. My choice was qualified by "If BIRT is to be removed from the trunk..." which seems to be the way the community is heading.

          I would rather see BIRT as the preferred reporting solution for the reasons you point out. BIRT reports are superior to FOP reports and I offer attachments of two similar reports form r 1003469 as an example. A print out of the BIRT report AcctgTransEntriesSearchResultsInvoiceAndPaymentPdf.pdf) is readable centered on the page while the FOP report (AcctgTransEntriesSearchResultsPdf.pdf) font is too small and left side of the report is outside the print area.

          But no one is supporting BIRT so...

          Tom

          Show
          brettonwoods Tom Burns added a comment - Taher, I agree with you. My choice was qualified by "If BIRT is to be removed from the trunk..." which seems to be the way the community is heading. I would rather see BIRT as the preferred reporting solution for the reasons you point out. BIRT reports are superior to FOP reports and I offer attachments of two similar reports form r 1003469 as an example. A print out of the BIRT report AcctgTransEntriesSearchResultsInvoiceAndPaymentPdf.pdf) is readable centered on the page while the FOP report (AcctgTransEntriesSearchResultsPdf.pdf) font is too small and left side of the report is outside the print area. But no one is supporting BIRT so... Tom
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          I reverted the YUI compressor library which was conflicting with BIRT (OFBIZ-4849) at r1416358

          Show
          jacques.le.roux Jacques Le Roux added a comment - I reverted the YUI compressor library which was conflicting with BIRT ( OFBIZ-4849 ) at r1416358
          Hide
          jacopoc Jacopo Cappellato added a comment -

          This issue has been originally reported by Tom Burns.

          Show
          jacopoc Jacopo Cappellato added a comment - This issue has been originally reported by Tom Burns.
          Hide
          jacques.le.roux Jacques Le Roux added a comment -

          Thanks for Chatree's reminder in OFBIZ-5876, closes OFBIZ-4849 and OFBIZ-5070 for R12.04 where the yuicompressor-2.4.6.jar was still present

          Completed: At revision: 1642656

          If there are still issue with Birt please open new Jira issues, thanks!

          Show
          jacques.le.roux Jacques Le Roux added a comment - Thanks for Chatree's reminder in OFBIZ-5876 , closes OFBIZ-4849 and OFBIZ-5070 for R12.04 where the yuicompressor-2.4.6.jar was still present Completed: At revision: 1642656 If there are still issue with Birt please open new Jira issues, thanks!

            People

            • Assignee:
              jacques.le.roux Jacques Le Roux
              Reporter:
              jacopoc Jacopo Cappellato
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development