Changeset 9427

Show
Ignore:
Timestamp:
04/22/08 14:00:31 (6 months ago)
Author:
erickson
Message:

added support for defining pivot data and label columns

Location:
branches/rel_1_2/Open-ILS/web/reports
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • branches/rel_1_2/Open-ILS/web/reports/oils_rpt_editor.xhtml

    r7320 r9427  
    3535                        <tr> 
    3636                                <th>Report Columns:</th> 
    37                                 <td><b id='oils_rpt_report_editor_cols'/></td> 
    38                         </tr> 
     37                                <td nowrap='nowrap'><b id='oils_rpt_report_editor_cols'/></td> 
     38                        </tr> 
     39                        <tr class='hide_me' id='oils_rpt_editor_pivot_label_row'> 
     40                                <th>Pivot Label Column:</th> 
     41                                <td> 
     42                    <select id='oils_rpt_editor_pivot_label'> 
     43                        <option selected='selected' value=''> -- Select One (optional) -- </option> 
     44                    </select> 
     45                </td> 
     46                        </tr> 
     47                        <tr class='hide_me' id='oils_rpt_editor_pivot_data_row'> 
     48                                <th>Pivot Data Column:</th> 
     49                                <td> 
     50                    <select id='oils_rpt_editor_pivot_data'> 
     51                    </select> 
     52                </td> 
     53                        </tr> 
     54 
    3955                        <!-- 
    4056                        <tr><td colspan='2'><hr/></td></tr> 
  • branches/rel_1_2/Open-ILS/web/reports/oils_rpt_report_editor.js

    r7320 r9427  
    2121                } 
    2222        ); 
     23 
     24/* 
     25oils_rpt_editor_pivot_label 
     26oils_rpt_editor_pivot_data 
     27*/ 
     28 
     29    var hasAgg = false; 
     30    iterate(rptObject.def.select,  
     31        function(i) { 
     32            if(OILS_RPT_TRANSFORMS[i.column.transform].aggregate)  
     33                hasAgg = true;  
     34        } 
     35    ); 
     36 
     37    while(DOM.oils_rpt_editor_pivot_label.getElementsByTagName('option').length > 1) 
     38        DOM.oils_rpt_editor_pivot_label.removeChild(DOM.oils_rpt_editor_pivot_label.lastChild); 
     39 
     40    while(DOM.oils_rpt_editor_pivot_data.lastChild) 
     41        DOM.oils_rpt_editor_pivot_data.removeChild(DOM.oils_rpt_editor_pivot_data.lastChild); 
     42 
     43    if(hasAgg) { 
     44        unHideMe(DOM.oils_rpt_editor_pivot_label_row); 
     45        unHideMe(DOM.oils_rpt_editor_pivot_data_row); 
     46 
     47        for(var i in rptObject.def.select) { 
     48            var col = rptObject.def.select[i]; 
     49            if(OILS_RPT_TRANSFORMS[col.column.transform].aggregate)  
     50               insertSelectorVal(DOM.oils_rpt_editor_pivot_data, -1, col.alias, parseInt(i)+1); 
     51            else 
     52               insertSelectorVal(DOM.oils_rpt_editor_pivot_label, -1, col.alias, parseInt(i)+1); 
     53        } 
     54 
     55    } else { 
     56        hideMe(DOM.oils_rpt_editor_pivot_label_row); 
     57        hideMe(DOM.oils_rpt_editor_pivot_data_row); 
     58    } 
     59  
    2360 
    2461        if( rpt ) { 
     
    102139                data[par.key] = val; 
    103140        } 
     141 
     142    if(getSelectorVal(DOM.oils_rpt_editor_pivot_data)) { 
     143        data.__pivot_label = getSelectorVal(DOM.oils_rpt_editor_pivot_label); 
     144        data.__pivot_data = getSelectorVal(DOM.oils_rpt_editor_pivot_data); 
     145    } 
     146 
    104147 
    105148        data = js2JSON(data);