<%// SortBars:%>

    <%
    // To sort the bars in a waterfall chart:
    //   1) Specify an ascending or descending sort order on the
    //      constructor for the classification variable that will
    //      provide Category values
    //   2) Call the data model's setCategorySortVariable() method
    //      to specify which variable's values should be sorted
    %>
    <%@page import="com.sas.servlet.tbeans.graphics.html.WaterfallChart,
            com.sas.graphics.components.waterfallchart.WaterfallChartTableDataModel,
            com.sas.graphics.components.AnalysisVariable,
            com.sas.graphics.components.ClassificationVariable,
            com.sas.graphics.components.GraphConstants,
            javax.swing.table.DefaultTableModel"
    %>
    <%
      // Create a WaterfallChart and a data source
        WaterfallChart waterfallChart=new WaterfallChart();
    %>

       <%@ include file="TransactionData.jsp" %>

    <%
      // Create a data model and attach the data source
         WaterfallChartTableDataModel dataModel=
           new WaterfallChartTableDataModel();
         dataModel.setModel(dataTable);

      // 1) Specify a sort order on the classification variable
         dataModel.setCategoryVariable(
           new ClassificationVariable("Id", GraphConstants.SORT_DESCENDING));

      // Assign the Response variable role and apply the NLMNLUSD format so
      // that Transaction amounts in the output are displayed in an
      // internationalized representation of US dollars.
         dataModel.setResponseVariable(
           new AnalysisVariable("TransactionQ1", "nlmnlusd"));

      // 2) Call the data model's setCategorySortVariable() method
      // to sort bars according to the values of the response variable
         dataModel.setCategorySortVariable(dataModel.getResponseVariable());

      // Assign the data model to the WaterfallChart
         waterfallChart.setDataModel(dataModel);

      // Set a graph title
         waterfallChart.getTitle1().setText("BIP Waterfall Chart");

      // Set HTTP-specific response and request functionality
         waterfallChart.setResponse(response);
         waterfallChart.setRequest(request);

      // Set a graph size and write the chart to the display
         waterfallChart.setWidth(600);
         waterfallChart.setHeight(450);
         waterfallChart.write(out);
    %>