SAS Institute Alert Note SN-008930

From: SAS Technical Support (tsdlist@unx.sas.com)
Date: Tue Jan 14 2003 - 07:34:57 EST

  • Next message: SAS Technical Support: "SAS Institute TS: New Hot Fix Releases"

    SN-008930 ***Alert Note***

    Data is incorrect after drilling down when sorting on statistic values

      Product: AppDev Studio
    Component: WebEIS
     Priority: ALERT

      Data values may be incorrect on a webEIS or webAF multidimensional
      report when applying a sort on the statistic values and then drilling
      down on the across hierarchy. The sort order changes to data order even
      if ascending or descending was selected. Only the statistic values
      change to data order. The down dimension labels remain in ascending or
      descending order.

      This problem only occurs using a webEIS applet report or a webAF applet
      project.

      A possible circumvention when using webAF is to subclass the
      DrillListener class and call the refreshTable method on the model. An
      example follows.

      /* Copyright (c) 2002 by SAS Institute */
      package de.sas.support;

      public class DrillListener implements com.sas.mdtable.DrillListener
      {
      transient com.sas.sasserver.mdtable.MultidimensionalTableV3Interface
      model;

        public DrillListener
        (com.sas.sasserver.mdtable.MultidimensionalTableV3Interface model)
        {
           this.model = model;
        }

        public void drill(com.sas.mdtable.DrillEvent p0)
        {
           try {
               if (p0.getSource() == model) {
                  // When multidimensionalTableV3Interface1 fires drill
                  // call multidimensionalTableV3Interface1DrillHandler1().
                  multidimensionalTableV3Interface1DrillHandler1 (p0);
                  return;
               }

           }
           catch (java.lang.Exception ex) {
               // Default exception action
               ex.printStackTrace();
           }
        }

        // multidimensionalTableV3Interface1DrillHandler1
        // When multidimensionalTableV3Interface1 fires drill call
        // multidimensionalTableV3Interface1DrillHandler1().
        public void multidimensionalTableV3Interface1DrillHandler1
           (com.sas.mdtable.DrillEvent event)
        {
           // NOTE: Add new code here
           // System.out.println("drillevent: "+event.toString());
           // RDO: model needs to be refreshed for sortbug
           model.refreshTable();
        }

      }

      One way to use your DrillListener class is to build the webEIS report
      and view it in a Document Viewer component within a webAF applet. You
      could then add your DrillListener in the Paint method. For example,

      private long sectionID = 0;
      com.sas.sasserver.mdtable.MultidimensionalTableV3Interface model = null;
      public void paint(java.awt.Graphics g)
      {
         super.paint(g);
         // may have more than one model per section, so if in a different
         // section, add DrillListener to new model
         if (sectionID!=documentView1.getCurrentSectionID()) {
            sectionID = documentView1.getCurrentSectionID();
            model=(com.sas.sasserver.mdtable.MultidimensionalTableV3Interface)
                  documentView1.getCurrentSection().getModel();

            // add your DrillListen from your package
            model.addDrillListener(new de.sas.support.DrillListener(model));
         }
      }

      Additionally, if you do not want to implement the above circumvention,
      you can force a refresh of the model manually while running the report
      by displaying the Totals dialog from the popup menu over the report and
      select OK. This will cause the refreshTable method to run and, clear up
      any label-value mismatches displayed in the table.

    Keywords:
      appdev studio webeis webaf model mddb eis server olap sort drill down
      analysis measure statistic values order across hierarchy applet
      data is incorrect after drilling down when sorting on statistic values
      008930 8930

    SAS Note Revised On: Wed, 27 Nov 2002

    System Version Reported Version Fixed

    Windows NT 2.0
    Windows 2000 Professional 2.0
    Windows 95 2.0
    Windows 98 2.0

    No Fixes Available

    +-------------------------------------------------------------------------
    + NOTE: To unsubscribe you must send mail to: LISTSERV@VM.SAS.COM with
    + "SIGNOFF tsnews-l"
    + as the only text in the body of the message (without the double quotes).
    + If you have any questions please send them to TSDLIST@SAS.COM
    +-------------------------------------------------------------------------



    This archive was generated by hypermail 2b29 : Tue Jan 14 2003 - 07:35:38 EST