proc template; define tagset tagsets.ExcelXP_Mod; parent=tagsets.excelxp; define event tabcolor; set $tabcolor $options['TABCOLOR']; set $tab_color["black" ] "0"; set $tab_color["white" ] "1"; set $tab_color["red" ] "2"; set $tab_color["green" ] "3"; set $tab_color["blue" ] "4"; set $tab_color["yellow" ] "5"; set $tab_color["magenta" ] "6"; set $tab_color["cyan" ] "7"; set $tab_color[] lowcase($options['TABCOLOR']); do / if $tab_color[$tabcolor]; put "" $tab_color[$tabcolor]; else; put "" $tabcolor; done; put "" NL /if $tabcolor; done; end; define event worksheet; start: do /if ^$doing_blank; trigger do_blank_worksheet /if $blank_sheet_name; done; trigger get_global_margins; do /if $proclist[proc_name]; putlog "Excel XML does not support output from Proc:" proc_name; putlog "Output will not be created."; break; done; break /if $worksheet_started; unset $cellwidths; unset $worksheet_widths; unset $worksheet_has_panes; unset $worksheet_has_autofilter; unset $worksheet_has_titles; unset $possible_row_repeat_start; unset $possible_row_repeat_end; unset $possible_col_repeat_start; unset $possible_col_repeat_end; do /if ^$worksheet_row; eval $worksheet_row 0; done; eval $numberOfWorksheets $numberOfWorksheets +1; trigger worksheet_label; trigger clean_worksheet_label; trigger contents_entry /if ^cmp( event_name, "byline"); do /if cmp( $worksheetname, " "); eval $numberOfWorksheets $numberOfWorksheets -1; done; do /if $debug_level = -8; putlog "!!!!!!!!" Event_name " Worksheet: |" $ worksheetname "| " $numberOfWorksheets; done; unset $$worksheet_start; open worksheet_start; put "" NL; do /if $fittopage; put "" NL; done; put "" NL; put "" NL; trigger do_paperSize; do /if $scale; put ""; put $scale; put "" NL; done; put "" $pages_fitwidth "" NL; put "" $pages_fitheight "" NL; put "" NL /if $left_to_right; put ""; put $print_dpi; put "" NL; put ""; put $print_dpi; put "" NL; put "" NL /if $gridlines; put "" NL /if $blackandwhite; put "" NL /if $draftquality; put "" NL /if $RowColHeadings; put "" NL; trigger tabcolor; put "" $Zoom "" NL /if $Zoom; put "" $PageLayoutZoom "" NL /if $PageLayoutZoom; put "" NL; put $$page_setup; do /if ($embedded_titles & ^ $system_title_setup) | ^ $ system_title_setup; do /if $print_header & ^ $xheader; putq "" NL; unset $xheader; done; done; unset $system_title_setup; do /if ($embedded_footnotes & ^ $system_footer_setup) | ^ $system_footer_setup; do /if $print_footer & ^ $xfooter; putq "" NL; unset $xfooter; done; done; unset $system_footer_setup; do /if any( $landscape, $center_horizontal, $center_Vertical ); put "" NL; done; do /if any( $marginbottom, $marginleft, $marginright, $ margintop); put "" NL; done; put "" NL; close; open worksheet; set $worksheet_started "True"; finish: break /if $proclist[proc_name]; break /if ^$worksheet_started; unset $worksheet_started; do /if ^$$worksheet; do /if ^$doing_blank; do /if ^cmp( $worksheetname, " "); eval $numberOfWorksheets $numberOfWorksheets -1; done; break; done; done; trigger write_contents_entries; trigger worksheet_tab; unset $tabname_is_done; open master_worksheet; putq "" NL; trigger print_repeats; set $current_worksheet $worksheetName; unset $tempWorksheetName; unset $worksheetName; put $$worksheet_start; unset $$worksheet_start; trigger worksheet_head_end; trigger table_start; put $$worksheet; putl ""; eval $table_count 0; unset $$worksheet; unset $byGroupLabel; putl ""; eval $worksheet_row 0; end; end; run;