Using ODS Object Oriented Features To Produce A Formatted Record Layout

Size: px
Start display at page:

Download "Using ODS Object Oriented Features To Produce A Formatted Record Layout"

Transcription

1 Using ODS Object Oriented Features To Produce A Formatted Record Layout Suzanne M. Dorinski, US Census Bureau, Washington DC ABSTRACT This paper uses the Fiscal Year 2005 State Library Agencies Survey to demonstrate the usefulness of storing the survey metadata in an Excel spreadsheet. The metadata were originally stored in a Word document, and not easily available to the programmer. When the metadata are stored in a spreadsheet, we can read it with SAS and have it available to produce the required database documentation. We can also produce the formatted record layout as RTF, which looks almost identical to the original Word document. To produce the formatted record layout, we use the new data _null_ ODS object oriented features experimentally available in SAS We note that when changes are made to the metadata in the Excel spreadsheet, they easily flow to both the formatted record layout and the database documentation. INTRODUCTION The U.S. Census Bureau is the data collection agent for the State Library Agencies Survey (StLA). For fiscal year 2005 (FY 2005), the sponsor was the National Center for Education Statistics (NCES). The survey collects data about staffing, collections, revenue, and expenditures. The first data collection was FY The record layout was stored in a Word document, formatted with tab stops. For FY 2005, 103 variables were removed from the survey. This is when we noticed that storing the record layout in a Word document was not very efficient. The survey analyst had to remove variables by hand, and then update the start positions for the variables in the sections following the removed variables. Frank DiIorio and Jeff Abolafia presented a paper at SESUG in 2006 ( The Design and Use of Metadata: Part Fine Art, Part Black Art ) that discussed why file layouts should not be stored in Word. We were intrigued by their arguments, but we were stymied by the requirement that the file layout in future years have the exact same format as the FY 2005 file layout contained in the public use data file documentation. Daniel O Connor presented a paper at SUGI 28 ( Next Generation Data _NULL_ Report Writing Using ODS OO Features ) that showed how to use ODS object oriented features to produce custom output. We studied his paper in detail to figure out how we could use those techniques to produce a file layout matching the format in the FY 2005 data file documentation. We created an Excel spreadsheet with all the information shown in the file layout. The main advantage of using an Excel spreadsheet is that if we add or remove survey items in the future, the start position can be updated automatically in Excel. We used the FY 2005 record layout for this paper, which is shown in Appendix A of the public use data file documentation, available at DISCUSSION OF THE PARTS OF THE FILE LAYOUT The first page of the record layout from the data file documentation is shown in Figure 1. I ve noted the parts of the file layout in blue text in Figure 1. * * * * * * * * * * * * * * * 1

2 Figure 1. First page of record layout from data file documentation 2

3 The file layout consists of the following parts: Page header, which is the Appendix A text and the line below it. Table header, which shows the names of the columns in the table. Explanatory text, which describes the file (source, number of records, number of fields, record size). Variable name, which is column 1 in the table. Survey part, which is column 2 in the table. Data item, which is column 3 in the table. Data type, which is column 4 in the table. Field length, which is column 5 in the table. Start position, which is column 6 in the table. Description, which is column 7 in the table. Part name, which is the section of the questionnaire where the survey variable is located. Description header, which is information that prints in the row above a survey variable, if there is information to print. Footer information, which is information that prints in the rows below a survey variable, if there is information to print. A variable in the data collection must have a value for columns 1 through 7 in the table. If a data item has been removed from the survey, it is now reserved for future use. Columns 1 through 6 in the table are all blank for such items, but we want a special note in column 7 that states that the item is reserved for future use. The ODS object oriented features allow us to make the part name span the entire page (from columns 1 through 7), and force the first 6 columns to be blank when we insert a special note in column 7. We are also printing two variables in column 7, description header (if it exists) and description. * * * * * * * * * * * * * * * 3

4 DISCUSSION OF THE FILE LAYOUT SPREADSHEET We developed a spreadsheet that contains two sheets with all the information needed for the record layout. The file_layout sheet contains the survey metadata for each variable. See Figure 2 for an example. Figure 2. Survey metadata for BRANCH The file_layout sheet contains the following variables: database_doc_output_exclude is a flag with a default value of blank. If the analyst wants to exclude the variable from the database documentation tables, the analyst sets this variable to X. This variable was created for use in other SAS programs, which will be included in the online proceedings version of this paper. variable_name is the name of the survey variable. This variable is printed in column 1 in the formatted record layout in Figure 1. survey_part is the section of the questionnaire in which the survey variable is located. This variable is printed in column 2 in the formatted record layout in Figure 1. data_item is a sequence code for the survey variable response. This variable is printed in column 3 in the formatted record layout in Figure 1. 4

5 data_type indicates whether the survey variable is alphanumeric or numeric. This variable is printed in column 4 in the formatted record layout in Figure 1. field_length is the length of the survey variable. This variable is printed in column 5 in the formatted record layout in Figure 1. start_position is the column in the ASCII file where the survey variable begins. This variable is printed in column 6 in the formatted record layout in Figure 1. description_header is text that should be printed above a survey variable row, in column 7, if it exists. description is the text that explains the survey variable. This variable is printed in column 7 in the formatted record layout in Figure 1. footer1 through footer10, if they exist, are printed in column 7 in the formatted record layout in Figure 1, after the survey variable row. The footer variables are generally used to explain in further detail what the values of the survey variable represent. The spreadsheet is designed to require no updating from year to year if the variables have not changed. The description_header for BRANCH, Location in state government as of October 1, &cy, ^n whom the agency reports to, and selection methods, has a macro variable, &cy. The analyst will set the value for &cy in the program that creates the formatted record layout. The program uses ^ as the ODS escape character, and the ^n in the description_header for BRANCH causes whom the agency reports to, and selection methods to be printed on the line below Location in state government as of October 1, &cy,. If you specify text that is longer than the column, the text will wrap. Forcing the new line is simply a way to control where the line breaks. We allow up to 10 footnotes, simply for ease of data entry. If we force new lines with ^n, it should be possible to have all the footnotes stored in one footnote field. The footnotes are used to produce other parts of the data file documentation. The other sheet in the file layout spreadsheet is the survey_part_description sheet, which contains two variables: survey_part and survey_part_description. See Figure 3 for the screen shot of the survey_part_description sheet. Figure 3. Screen shot of survey_part_description sheet 5

6 DISCUSSION OF O CONNOR S SUGI PAPER O Connor briefly covered quite a few techniques in his SUGI paper. He started off with an example that shows tabular data, similar to the kind of output you get from PROC PRINT. Then he discussed using the object oriented technique to create a report one item at a time. His examples for non-tabular output include creating customer account statements, where the format of the account statement is non-tabular, and you want to repeat that output for each customer in your data set. O Connor has posted more information at The examples from his SUGI paper are at I downloaded the examples and worked with those programs before figuring out what I needed to do to produce the formatted record layout. GETTING STARTED ON THE FORMATTED RECORD LAYOUT The SAS program discussed in this paper will be part of the online proceedings, along with the spreadsheet that serves as input for the program. See Figure 4 for the beginning of the data _null_ that produces the formatted record layout. We read the spreadsheet into a SAS data set called file_layout. We process the data set by survey_part, because we want blank lines between each part of the survey in the record layout. Before we print the table, we set up a two-line title with the obj.title function. When you open the output in Word, the two-line title is the first header in the document. We have specified ^ as the ODS escape character, so the ^n causes the title to take up two lines. The obj.head_start function is the beginning of the table header. Anything specified here will be a table header that repeats across the pages of the table. Note that we can specify the column width in the obj.format_cell function. We use ^n to cause the column header to take up two lines in the output. There are several lines of explanatory text at the top of the record layout that we do not want to repeat across the pages of the table. The obj.head_end function is the end of the table header. Our table has 7 columns, and we want the explanatory text to start in column 3 (Data item) and end in column 7 (Description). We specify that the first two cells in that row are blank with the obj.format_cell(' ', column_span: 2)statement. Then the following obj.format_cell function specifies the text, and column_span is set to 5 to indicate that the text starts in column 3 and continues through column 7. * * * * * * * * * * * * * * * 6

7 Figure 4. Beginning of the data _null_ data _null_; length description_header_text description_text footer1_text footer2_text footer3_text footer4_text footer5_text footer6_text footer7_text footer8_text footer9_text footer10_text $ &long_text_length ; set file_layout end=eof; by survey_part; if _n_=1 then dcl odsout obj(); obj.open_dir(); obj.title(text: "Appendix A Record Layout of State Library Agencies Data File, FY &CY^n (istla&cy_2_digits.a.mdb and istla&cy_2_digits.a.txt)", overrides: "font_style= " ); obj.table_start(); obj.head_start(); obj.row_start(type: "Header"); obj.format_cell(text: "Variable^n name", overrides: "cellwidth=1in just=l"); obj.format_cell(text: "Survey^n part", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Data^n item", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Data^n type", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Field^n length", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Start^n position", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Description", overrides: "cellwidth=3.3in just=l"); obj.head_end(); /* now add notes at very top of record layout! */ obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Data Source: State Library Agencies Survey, Fiscal Year &cy", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Number of records = %trim(&num_records) (one record per observation)", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Number of fields = %trim(&num_fields)", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); obj.format_cell(text: "ASCII file (istla&cy_2_digits.a.txt) is fixed width; record size = %trim(&rec_size) ", column_span: 5, overrides: "just=l"); 7

8 PRODUCING ONE SURVEY PART IN THE RECORD LAYOUT See Figure 5 for the code. As we encounter each distinct value of survey_part for the first time, we want to print out the description of that survey part and have it take up the entire line. Then we check the description_header variable for the record. If it has text, we print it in column 7 (Description). We use the resolve function here because the value of description_header may contain macro variables. The resolve function causes the macro variable &cy to display as Then we check variable_name. If variable_name is blank, we print a note in the Description column stating that the item or items are blank and reserved for future use. Figure 5. Processing each survey part if first.survey_part then obj.format_cell(text: survey_part_description, column_span: 7, overrides: "just=l"); * if description_header has text, print it out in column 7 after printing * a blank line. ; if description_header ne '' then description_header_text=resolve(description_header); obj.format_cell(' ', column_span: 6); obj.format_cell(text: description_header_text, description_text=resolve(description); * if variable_name is blank, there should be a note in the description * field explaining that the item is reserved for future use. want a * blank line before and after that note. ; if variable_name='' then obj.format_cell(' ', column_span: 6); obj.format_cell(text: description_text, PRINTING ALL THE DETAILS FOR A SURVEY VARIABLE See Figure 6 for the code. We use the obj.format_cell function repeatedly to print the variable_name, survey_part, data_item, data_type, field_length, start_position, and description_text. In Figure 5, description_text is the result of the resolve function on the description variable. We use the resolve function because description may contain macro variables. Once we have printed all the details for the survey variable, we need to check for footnotes, called footer1 through footer10 in the spreadsheet. The %check_footers macro is checking each footer variable. If the footer variable is not blank, it gets printed in column 7 (Description). If the next footer variable is blank, we print a blank line. If we have finished processing the last record for that survey_part, we print a blank line. If there are more survey_parts to process, we continue. If we have reached the end of the file, we use the appropriate functions to close our table. 8

9 Figure 6. Printing all the details for a variable * otherwise the observation in the data set is an entire row that should * be printed out. ; else obj.format_cell(text: variable_name, obj.format_cell(text: survey_part, obj.format_cell(text: data_item, obj.format_cell(text: data_type, obj.format_cell(text: trim(put(field_length, 10.)), obj.format_cell(text: trim(put(start_position, 10.)), obj.format_cell(text: description_text, * check to see if footer1, footer2, footer3, etc exist. if they do, * print in column 7 ("description") in output, and put a blank line * after last bit of text. ; %check_footers if footer10 ne '' then footer10_text=resolve(footer10); obj.format_cell(' ', column_span: 6); obj.format_cell(text: footer10_text, if last.survey_part then ; if eof then obj.table_end(); obj.title(clear: 2); obj.close_dir(); run; NOTES AT THE VERY END OF THE RECORD LAYOUT At the end of the record layout, we want to print four notes. The first note gives the definition for N in the record layout, the second note gives the definition for A in the record layout, the third note gives the definition for the daggers in the record layout, and the fourth note tells the reader that the survey instrument is in another appendix. We use RTF text statements to place these notes after the table created with ODS object oriented programming. ODS RTF TEXT="N\tab Numeric field."; ODS RTF TEXT="A\tab Alpha character field."; ODS RTF TEXT=" \tab Not applicable."; ODS RTF TEXT="NOTE: The survey instrument is in appendix C."; 9

10 A FEW PROBLEMS STILL REMAIN The formatted record layout is one appendix in the data file documentation. The RTF output from this program is added to a longer Word document that contains the user s guide, state codes, survey instrument, imputation flag frequencies, and frequencies and distributions of the variables. We have had problems with the page number code on other RTF outputs when inserted into existing Word documents, so we do not handle page numbering in the SAS program. This may not be an issue in SAS 9.2. We used ODS RTF output in this program to create the output file. ODS RTF output lets Word handle page breaks. The original record layout in Word was manually edited to prevent variable groups from splitting across pages, and to ensure that the survey part description was not stranded on one page with the first variable in that section on the following page. Variable groups do split across pages and survey part descriptions are sometimes stranded in the output from this program. SAS 9.2 with the RTF tagset may be able to avoid these problems. OTHER PROBLEMS NOW SOLVED Now that we have the survey metadata in an Excel spreadsheet, it is available for use in other programs. Specifically, we can now use the footer1 through footer10 variables when we produce PROC FREQ output for the database documentation. The online proceedings will contain the other programs used to produce some of the appendices for the public use file database documentation. WARNING ON EXPERIMENTAL METHOD Let me emphasize that the object oriented features are experimental in SAS Figure 7 is a screen shot from the log when you run this program. Note that the message in green is important, so I spotlighted it here. Figure 7. Warning that method is experimental in SAS * * * * * * * * * * * * * * * 10

11 REFERENCES DiIorio, Frank and Abolafia, Jeff The Design and Use of Metadata: Part Fine Art, Part Black Art, Proceedings of the 14 th Annual Southeast SAS Users Group Conference. Atlanta, GA. Available at O Connor, Daniel Next Generation Data _NULL_ Report Writing Using ODS OO Features, Proceedings of the Twenty-Eighth Annual SAS Users Group International Conference. Seattle, WA. Available at O Connor has posted more information at and ACKNOWLEDGEMENTS SAS is a Registered Trademark of the SAS Institute, Inc. of Cary, North Carolina. Other brand and product names are trademarks of their respective companies. The author wishes to thank Cindy Sheckells for asking if SAS could produce this type of output. The author wishes to thank Chris Boniface, James Clement, Carma Hogue, Johnny Monaco, Rita Petroni, Cindy Sheckells, and Freda Spence for reading the draft of this paper and providing helpful comments. DISCLAIMER This report is released to inform interested parties of research and to encourage discussion. The views expressed on technical issues are those of the author and not necessarily those of the U.S. Census Bureau. CONTACT INFORMATION Your comments and questions are valued and encouraged. Contact the author at: Suzanne M. Dorinski U.S. Census Bureau OSMREP, Room 7K042E Washington, DC (301) Suzanne.Marie.Dorinski@census.gov * * * * * * * * * * * * * * * 11

12 APPENDIX COMPLETE PROGRAM dm 'cle log; cle out'; *********************************************************************************; * this is create_stla_file_layout_document_from_spreadsheet_object_oriented.sas *; * *; * Program creates file layout from spreadsheet, using ODS object oriented *; * features. See SUGI paper by Daniel O'Connor of SAS for more details. *; * Output is RTF. TECHNIQUE IS EXPERIMENTAL FOR SAS *; * *; * suzanne m. dorinski 7/6/08 *; *********************************************************************************; **************** MACRO VARIABLES **************************************; * cy is the current year in 4 digit format; * py is the prior year in 4 digit format; * cy_2_digits is the last 2 digits of current year; * long_text_length is used in length and attrib statements so that we can deal with * really long text fields; * num_records is the number of states that responded for StLA; * num_fields is the number of fields shown in the record layout; * rec_size is physical size of the fixed-width file; * input_dir_spreadsheet is the directory where the spreadsheet is stored; * spreadsheet_name is the name of the file layout spreadsheet -- do NOT include.xls extension; * dsn_dir is the directory where the permanent data set will be stored; * output_dir is the directory where the RTF will be stored; * output_file_name is the name of the RTF output -- do NOT include.rtf extension; %let cy=2005; %let py=2004; %let cy_2_digits=05; %let long_text_length=1000; %let num_records=51; %let num_fields=468; %let rec_size=103 KB; %let input_dir_spreadsheet=c:\users\suzanne\documents\nesug_2008_stla; %let spreadsheet_name=stla_2005_file_layout_in_excel_object_oriented; %let output_dir=c:\users\suzanne\documents\nesug_2008_stla; %let output_file_name=&cy._example_file_layout_from_spreadsheet_object_oriented; **************** END MACRO VARIABLES **********************************; options missing=' ' linesize=132 pagesize=60 nodate nonumber mprint; title; footnote; ODS ESCAPECHAR='^'; ODS LISTING CLOSE; * do not show output in listing window ; ODS RESULTS OFF; * do not open up Word viewer in SAS session ; ODS PATH WORK.TEMPLAT(UPDATE) SASHELP.Tmplmst(READ); proc template; define style styles.newprinter; parent=styles.printer; replace color_list 12

13 "Colors used in the default style" / 'link'= blue 'bgh'= white /* bgh was graybb */ 'fg' = black 'bg' = white; replace fonts / 'TitleFont2' = ("Arial",12pt,Bold) /* this is font used for titles in ODS OO output! */ 'TitleFont' = ("Arial",12pt,Bold ) /* default is Times Roman 13pt bold italic */ 'StrongFont' = ("Times Roman",12pt,Bold) /* default is 10 pt */ 'EmphasisFont' = ("Times Roman",10pt,Italic) 'FixedEmphasisFont' = ("Courier",9pt,Italic) 'FixedStrongFont' = ("Courier",9pt,Bold) 'FixedHeadingFont' = ("Courier",9pt,Bold) 'BatchFixedFont' = ("SAS Monospace, Courier",6.7pt) 'FixedFont' = ("Courier",9pt) 'headingemphasisfont' = ("Times Roman",12pt,Bold Italic) /* default is 11 pt */ 'headingfont' = ("Arial",9pt,Bold) /* default is Times Roman 11 pt bold */ 'docfont' = ("Arial",9pt); /* default is Times Roman 10 pt */ style body from document / leftmargin=0.8in rightmargin=0.5in topmargin=0.8in bottommargin=1in; style rowheader from rowheader / background=_undef_ font=fonts('headingfont') just=left protectspecialchars=off; /* allow me to insert RTF control words */ style table from table / rules=groups /* only line inside table is below header */ frame=above /* put line above header */ cellpadding=0pt /* minimize space inside cells */ outputwidth=100%; /* outputwidth=100% forces all tables to use entire width of page */ style data from data / protectspecialchars=off; /* allow me to use RTF control words in data cells */ style UserText from UserText "Controls the TEXT= style" / outputwidth=100% /* force ODS RTF TEXT= cells to use entire width of page */ protectspecialchars=off; style systemtitle from systemtitle / protectspecialchars=off; /* allow me to insert RTF control words */ run; %macro print_blank_line; obj.format_cell(' ', column_span: 7); %mend print_blank_line; %macro check_footers; 13

14 %do i=1 %to 9; if footer&i ne '' then footer&i._text=resolve(footer&i); obj.format_cell(' ', column_span: 6); obj.format_cell(text: footer&i._text, if footer%eval(&i+1)='' then % %mend check_footers; PROC IMPORT OUT= WORK.file_layout DATAFILE= "&input_dir_spreadsheet\&spreadsheet_name..xls" DBMS=EXCEL REPLACE; SHEET="file_layout"; GETNAMES=YES; MIXED=NO; SCANTEXT=YES; USEDATE=YES; SCANTIME=YES; RUN; PROC IMPORT OUT= WORK.part_description DATAFILE= "&input_dir_spreadsheet\&spreadsheet_name..xls" DBMS=EXCEL REPLACE; SHEET="survey_part_description"; GETNAMES=YES; MIXED=NO; SCANTEXT=YES; USEDATE=YES; SCANTIME=YES; RUN; * at the moment, we assume that the file layout spreadsheet * DOES have survey_part for items reserved for future use. need to * do that to make sure that the merge works properly. ; data file_layout; merge file_layout(in=f) part_description(in=p); by survey_part; run; * description_header is currently longer than description field, * so we need to use ATTRIB statement below, because description * is the column where description_header will be printed. * we also have to add extra length to account for any special * RTF control words and style formats applied inside description. * remember that ATTRIB statement needs to be done before set * statement, and you have to specify both the length and the format! ; data file_layout; attrib description length=$&long_text_length format=$&long_text_length..; set file_layout; 14

15 run; options orientation=portrait center; ODS RTF FILE="&output_dir\&output_file_name..rtf" STYLE=newprinter; * RESOLVE FUNCTION! need it here to get SAS to resolve the macro variables that * are used in description_header and description variables. as far as i can tell, * this is the only way to get the &cy in the Excel spreadsheet to show up as the * value specified in the %let statement at the top of this program. ; * also using resolve function to resolve macro variables used in footer variables; data _null_; length description_header_text description_text footer1_text footer2_text footer3_text footer4_text footer5_text footer6_text footer7_text footer8_text footer9_text footer10_text $ &long_text_length ; set file_layout end=eof; by survey_part; if _n_=1 then dcl odsout obj(); obj.open_dir(); obj.title(text: "Appendix A Record Layout of State Library Agencies Data File, FY &CY^n (istla&cy_2_digits.a.mdb and istla&cy_2_digits.a.txt)", overrides: "font_style= " ); obj.table_start(); obj.head_start(); obj.row_start(type: "Header"); obj.format_cell(text: "Variable^n name", overrides: "cellwidth=1in just=l"); obj.format_cell(text: "Survey^n part", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Data^n item", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Data^n type", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Field^n length", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Start^n position", overrides: "cellwidth=0.5in just=l"); obj.format_cell(text: "Description", overrides: "cellwidth=3.3in just=l"); obj.head_end(); /* now add notes at very top of record layout! */ obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Data Source: State Library Agencies Survey, Fiscal Year &cy", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Number of records = %trim(&num_records) (one record per observation)", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); obj.format_cell(text: "Number of fields = %trim(&num_fields)", column_span: 5, overrides: "just=l"); obj.format_cell(' ', column_span: 2); 15

16 obj.format_cell(text: "ASCII file (istla&cy_2_digits.a.txt) is fixed width; record size = %trim(&rec_size) ", column_span: 5, overrides: "just=l"); if first.survey_part then obj.format_cell(text: survey_part_description, column_span: 7, overrides: "just=l"); * if description_header has text, print it out in column 7 after printing a blank * line. ; if description_header ne '' then description_header_text=resolve(description_header); obj.format_cell(' ', column_span: 6); obj.format_cell(text: description_header_text, description_text=resolve(description); * if variable_name is blank, there should be a note in the description field * explaining that the item is reserved for future use. want a blank line before * and after that note. ; if variable_name='' then obj.format_cell(' ', column_span: 6); obj.format_cell(text: description_text, overrides: "just=l font_weight=medium" ); * otherwise the observation in the data set is an entire row that should be printed * out. ; else obj.format_cell(text: variable_name, obj.format_cell(text: survey_part, obj.format_cell(text: data_item, obj.format_cell(text: data_type, obj.format_cell(text: trim(put(field_length, 10.)), obj.format_cell(text: trim(put(start_position, 10.)), obj.format_cell(text: description_text, * check to see if footer1, footer2, footer3, etc exist. if they do, print in * column 7 ("description") in output, and put blank line after last bit of text. ; %check_footers if footer10 ne '' then footer10_text=resolve(footer10); 16

17 obj.format_cell(' ', column_span: 6); obj.format_cell(text: footer10_text, if last.survey_part then ; if eof then obj.table_end(); obj.title(clear: 2); obj.close_dir(); run; ODS RTF TEXT="N\tab Numeric field."; ODS RTF TEXT="A\tab Alpha character field."; ODS RTF TEXT=" \tab Not applicable."; ODS RTF TEXT="NOTE: The survey instrument is in appendix C."; ODS RTF CLOSE; proc template; delete styles.newprinter; run; * now open the listing window again ; ODS LISTING; 17

Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA

Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA Pros and Cons of Interactive SAS Mode vs. Batch Mode Irina Walsh, ClinOps, LLC, San Francisco, CA ABSTRACT It is my opinion that SAS programs can be developed in either interactive or batch mode and produce

More information

Creating Customized Patient Profiles using SAS ODS RTF and PROC TEMPLATE. Andrea Ritter, Biostatistics, Quintiles Inc.

Creating Customized Patient Profiles using SAS ODS RTF and PROC TEMPLATE. Andrea Ritter, Biostatistics, Quintiles Inc. PharmaSUG2011 Paper TT03 Creating Customized Patient Profiles using SAS ODS RTF and PROC TEMPLATE Andrea Ritter, Biostatistics, Quintiles Inc., Morrisville, NC ABSTRACT Patient profiles (a.k.a. case report

More information

How to Create a Custom Style

How to Create a Custom Style Paper IS04 How to Create a Custom Style Sonia Extremera, PharmaMar, Madrid, Spain Antonio Nieto, PharmaMar, Madrid, Spain Javier Gómez, PharmaMar, Madrid, Spain ABSTRACT SAS provide us with a wide range

More information

DESCRIPTION OF THE PROJECT

DESCRIPTION OF THE PROJECT Skinning the Cat This Way and That: Using ODS to Create Word Documents That Work for You Elizabeth Axelrod, Abt Associates Inc., Cambridge, MA David Shamlin, SAS Institute Inc., Cary, NC ABSTRACT By supporting

More information

SESUG Paper RIV An Obvious Yet Helpful Guide to Developing Recurring Reports in SAS. Rachel Straney, University of Central Florida

SESUG Paper RIV An Obvious Yet Helpful Guide to Developing Recurring Reports in SAS. Rachel Straney, University of Central Florida SESUG Paper RIV-156-2017 An Obvious Yet Helpful Guide to Developing Recurring Reports in SAS Rachel Straney, University of Central Florida ABSTRACT Analysts, in particular SAS programmers, are often tasked

More information

Combining Text and Graphics with ODS LAYOUT and ODS REGION Barbara B. Okerson, HMC, Richmond, VA

Combining Text and Graphics with ODS LAYOUT and ODS REGION Barbara B. Okerson, HMC, Richmond, VA Paper SIB-097 Combining Text and Graphics with ODS LAYOUT and ODS REGION Barbara B. Okerson, HMC, Richmond, VA ABSTRACT Through the Output Delivery System (ODS), SAS Software provides a means for creating

More information

Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS

Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS Tips and Tricks to Create In-text Tables in Clinical Trial Repor6ng Using SAS By Rafi Rahi - by Murshed Siddick 1 Overview In-text tables in CTR Produc

More information

ODS/RTF Pagination Revisit

ODS/RTF Pagination Revisit PharmaSUG 2018 - Paper QT-01 ODS/RTF Pagination Revisit Ya Huang, Halozyme Therapeutics, Inc. Bryan Callahan, Halozyme Therapeutics, Inc. ABSTRACT ODS/RTF combined with PROC REPORT has been used to generate

More information

Data Presentation ABSTRACT

Data Presentation ABSTRACT ODS HTML Meets Real World Requirements Lisa Eckler, Lisa Eckler Consulting Inc., Toronto, ON Robert W. Simmonds, TD Bank Financial Group, Toronto, ON ABSTRACT This paper describes a customized information

More information

Programming Beyond the Basics. Using the DATA Step to Create Bar Charts: The ODS Report Writing Interface Randy Herbison, Westat

Programming Beyond the Basics. Using the DATA Step to Create Bar Charts: The ODS Report Writing Interface Randy Herbison, Westat Using the DATA Step to Create Bar Charts: The ODS Report Writing Interface Randy Herbison, Westat ABSTRACT Introduced in SAS 9.0, the ODS Report Writing Interface is an object-oriented addition to the

More information

My Reporting Requires a Full Staff Help!

My Reporting Requires a Full Staff Help! ABSTRACT Paper GH-03 My Reporting Requires a Full Staff Help! Erin Lynch, Daniel O Connor, Himesh Patel, SAS Institute Inc., Cary, NC With cost cutting and reduced staff, everyone is feeling the pressure

More information

Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating

Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating L.Fine Formatting Highly Detailed Reports 1 Formatting Highly Detailed Reports: Eye-Friendly, Insight-Facilitating Lisa Fine, United BioSource Corporation Introduction Consider a highly detailed report

More information

Essential ODS Techniques for Creating Reports in PDF Patrick Thornton, SRI International, Menlo Park, CA

Essential ODS Techniques for Creating Reports in PDF Patrick Thornton, SRI International, Menlo Park, CA Thornton, S. P. (2006). Essential ODS techniques for creating reports in PDF. Paper presented at the Fourteenth Annual Western Users of the SAS Software Conference, Irvine, CA. Essential ODS Techniques

More information

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International

Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International Abstract Generating Customized Analytical Reports from SAS Procedure Output Brinda Bhaskar and Kennan Murray, RTI International SAS has many powerful features, including MACRO facilities, procedures such

More information

Run your reports through that last loop to standardize the presentation attributes

Run your reports through that last loop to standardize the presentation attributes PharmaSUG2011 - Paper TT14 Run your reports through that last loop to standardize the presentation attributes Niraj J. Pandya, Element Technologies Inc., NJ ABSTRACT Post Processing of the report could

More information

Paper PO07. %RiTEN. Duong Tran, Independent Consultant, London, Great Britain

Paper PO07. %RiTEN. Duong Tran, Independent Consultant, London, Great Britain Paper PO07 %RiTEN Duong Tran, Independent Consultant, London, Great Britain ABSTRACT For years SAS programmers within the Pharmaceutical industry have been searching for answers to produce tables and listings

More information

Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China

Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China ABSTRACT PharmaSUG China 2017 - Paper 19 Streamline Table Lookup by Embedding HASH in FCMP Qing Liu, Eli Lilly & Company, Shanghai, China SAS provides many methods to perform a table lookup like Merge

More information

Paper SIB-096. Richard A. DeVenezia, Independent Consultant, Remsen, NY

Paper SIB-096. Richard A. DeVenezia, Independent Consultant, Remsen, NY Paper SIB-096 Tag Clouds - A list of tokens, sized by relative frequency Richard A. DeVenezia, Independent Consultant, Remsen, NY Abstract A tag cloud is a list of tokens, wherein the text size of a token

More information

Data Presentation. Paper

Data Presentation. Paper Paper 116-27 Using SAS ODS to Enhance Clinical Data Summaries: Meeting esub Guidelines Steven Light and Paul Gilbert, DataCeutics, Inc. Kathleen Greene, Genzyme Corporation ABSTRACT SAS programmers in

More information

footnote1 height=8pt j=l "(Rev. &sysdate)" j=c "{\b\ Page}{\field{\*\fldinst {\b\i PAGE}}}";

footnote1 height=8pt j=l (Rev. &sysdate) j=c {\b\ Page}{\field{\*\fldinst {\b\i PAGE}}}; Producing an Automated Data Dictionary as an RTF File (or a Topic to Bring Up at a Party If You Want to Be Left Alone) Cyndi Williamson, SRI International, Menlo Park, CA ABSTRACT Data dictionaries are

More information

A Generalized Macro-Based Data Reporting System to Produce Both HTML and Text Files

A Generalized Macro-Based Data Reporting System to Produce Both HTML and Text Files A Generalized Macro-Based Data Reporting System to Produce Both HTML and Text Files Jeff F. Sun, Blue Cross Blue Shield of North Carolina, Durham, North Carolina Abstract This paper will address the inter-connection

More information

RWI not REI a Robust report writing tool for your toughest mountaineering challenges.

RWI not REI a Robust report writing tool for your toughest mountaineering challenges. Paper SAS2105 RWI not REI a Robust report writing tool for your toughest mountaineering challenges. Robert T. Durie SAS Institute ABSTRACT The degree of customization required for different kinds of reports

More information

Beginning Tutorials. bt006 USING ODS. Ban Chuan Cheah, Westat, Rockville, MD. Abstract

Beginning Tutorials. bt006 USING ODS. Ban Chuan Cheah, Westat, Rockville, MD. Abstract bt006 USING ODS Ban Chuan Cheah, Westat, Rockville, MD Abstract This paper will guide you, step by step, through some easy and not-so-easy ways to enhance your SAS output using the Output Delivery System

More information

Overview 14 Table Definitions and Style Definitions 16 Output Objects and Output Destinations 18 ODS References and Resources 20

Overview 14 Table Definitions and Style Definitions 16 Output Objects and Output Destinations 18 ODS References and Resources 20 Contents Acknowledgments xiii About This Book xv Part 1 Introduction 1 Chapter 1 Why Use ODS? 3 Limitations of SAS Listing Output 4 Difficulties with Importing Standard Listing Output into a Word Processor

More information

Presentation Quality Bulleted Lists Using ODS in SAS 9.2. Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD

Presentation Quality Bulleted Lists Using ODS in SAS 9.2. Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD Presentation Quality Bulleted Lists Using ODS in SAS 9.2 Karl M. Kilgore, PhD, Cetus Group, LLC, Timonium, MD ABSTRACT Business reports frequently include bulleted lists of items: summary conclusions from

More information

Tips and Tricks for Creating Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS. Vincent DelGobbo, SAS Institute Inc.

Tips and Tricks for Creating Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS. Vincent DelGobbo, SAS Institute Inc. Tips and Tricks for Creating Multi-Sheet Microsoft Excel Workbooks the Easy Way with SAS Vincent DelGobbo, SAS Institute Inc., Cary, NC ABSTRACT Transferring SAS data and analytical results between SAS

More information

Running head: WORD 2007 AND FORMATING APA PAPERS 1. A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American

Running head: WORD 2007 AND FORMATING APA PAPERS 1. A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American Running head: WORD 2007 AND FORMATING APA PAPERS 1 A Brief Guide to using Word 2007 to Format Papers in the Publication Style of the American Psychological Association (6 th Ed.) Jeff Aspelmeier Department

More information

Sign of the Times: Using SAS to Produce Conference Signage Daniel K. Downing, Caremark, Scottsdale, Ariz.

Sign of the Times: Using SAS to Produce Conference Signage Daniel K. Downing, Caremark, Scottsdale, Ariz. Sign of the Times: Using SAS to Produce Conference Signage Daniel K. Downing, Caremark, Scottsdale, Ariz. ABSTRACT Sign, sign, everywhere a sign. Are you at the right place at the right time? Who knows?

More information

The Impossible An Organized Statistical Programmer Brian Spruell and Kevin Mcgowan, SRA Inc., Durham, NC

The Impossible An Organized Statistical Programmer Brian Spruell and Kevin Mcgowan, SRA Inc., Durham, NC Paper CS-061 The Impossible An Organized Statistical Programmer Brian Spruell and Kevin Mcgowan, SRA Inc., Durham, NC ABSTRACT Organization is the key to every project. It provides a detailed history of

More information

Statistics, Data Analysis & Econometrics

Statistics, Data Analysis & Econometrics ST009 PROC MI as the Basis for a Macro for the Study of Patterns of Missing Data Carl E. Pierchala, National Highway Traffic Safety Administration, Washington ABSTRACT The study of missing data patterns

More information

A Way to Work with Invoice Files in SAS

A Way to Work with Invoice Files in SAS A Way to Work with Invoice Files in SAS Anjan Matlapudi and J. Daniel Knapp Pharmacy Informatics, PerformRx, The Next Generation PBM, 200 Stevens Drive, Philadelphia, PA 19113 ABSTRACT This paper illustrates

More information

Lesson 19 Organizing and Enhancing Worksheets

Lesson 19 Organizing and Enhancing Worksheets Organizing and Enhancing Worksheets Computer Literacy BASICS: A Comprehensive Guide to IC 3, 5 th Edition 1 Objectives Hide, show, and freeze columns and rows. Create, rename, and delete worksheets. Change

More information

Accessible Formatting for MS Word

Accessible Formatting for MS Word BAKERSFIELD COLLEGE WEB GUIDE Accessible Formatting for MS Word Version 1.0 User Level: Faculty/Staff Introduction Bakersfield College promises our students to use accessible documents and materials for

More information

DOCUMENTATION CHANGE NOTICE

DOCUMENTATION CHANGE NOTICE DOCUMENTATION CHANGE NOTICE Product/Manual: WORDPERFECT 5.1 WORKBOOK Manual(s) Dated: 12/90, 6/91 and 8/91 Machines: IBM PC and Compatibles This file documents all change made to the documentation since

More information

ACT! Calendar to Excel

ACT! Calendar to Excel Another efficient and affordable ACT! Add-On by ACT! Calendar to Excel v.6.0 for ACT! 2008 and up http://www.exponenciel.com ACT! Calendar to Excel 2 Table of content Purpose of the add-on... 3 Installation

More information

Symbol Table Generator (New and Improved) Jim Johnson, JKL Consulting, North Wales, PA

Symbol Table Generator (New and Improved) Jim Johnson, JKL Consulting, North Wales, PA PharmaSUG2011 - Paper AD19 Symbol Table Generator (New and Improved) Jim Johnson, JKL Consulting, North Wales, PA ABSTRACT In Seattle at the PharmaSUG 2000 meeting the Symbol Table Generator was first

More information

How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., MarkTab Consulting, Atlanta, GA Associate Faculty, University of Phoenix

How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., MarkTab Consulting, Atlanta, GA Associate Faculty, University of Phoenix Paper PO-09 How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., MarkTab Consulting, Atlanta, GA Associate Faculty, University of Phoenix ABSTRACT This paper demonstrates how to implement

More information

Making an RTF file Out of a Text File, With SAS Paper CC13

Making an RTF file Out of a Text File, With SAS Paper CC13 Making an RTF file Out of a Text File, With SAS Paper CC13 David Franklin Independent SAS Consultant While you are waiting, some trivia. Q is the only letter in the alphabet that does not appear in the

More information

Microsoft Excel 2010

Microsoft Excel 2010 Microsoft Excel 2010 omar 2013-2014 First Semester 1. Exploring and Setting Up Your Excel Environment Microsoft Excel 2010 2013-2014 The Ribbon contains multiple tabs, each with several groups of commands.

More information

Acadia Psychology Thesis Template Guide

Acadia Psychology Thesis Template Guide Acadia Psychology Thesis Template Guide Last Revised: Oct 14, 2016 The purpose of this guide is to provide information to honours students on how to use our provided template for theses, and on how to

More information

Using the SAS Output Delivery System Report Writing Interface to Produce Codebooks for Survey Data

Using the SAS Output Delivery System Report Writing Interface to Produce Codebooks for Survey Data Using the SAS Output Delivery System Report Writing Interface to Produce Codebooks for Survey Data Nancy Cole & Cassandra Baxter, Mathematica Policy Research, Cambridge, MA ABSTRACT Codebooks provide critical

More information

Directions for Using the Canvas-Based Online Instructor Evaluation Tool

Directions for Using the Canvas-Based Online Instructor Evaluation Tool Directions for Using the Canvas-Based Online Instructor Evaluation Tool Table of Contents How to Complete an Online Instructor Evaluation If You Are the Evaluator... 2 Part I: Evaluator Completes Webform

More information

Chapter 6 Creating Reports. Chapter Table of Contents

Chapter 6 Creating Reports. Chapter Table of Contents Chapter 6 Creating Reports Chapter Table of Contents Introduction...115 Listing Data...115 ListDataOptions...116 List Data Titles...118 ListDataVariables...118 Example:CreateaListingReport...119 Creating

More information

Taming a Spreadsheet Importation Monster

Taming a Spreadsheet Importation Monster SESUG 2013 Paper BtB-10 Taming a Spreadsheet Importation Monster Nat Wooding, J. Sargeant Reynolds Community College ABSTRACT As many programmers have learned to their chagrin, it can be easy to read Excel

More information

An Introduction to PROC REPORT

An Introduction to PROC REPORT Paper BB-276 An Introduction to PROC REPORT Kirk Paul Lafler, Software Intelligence Corporation, Spring Valley, California Abstract SAS users often need to create and deliver quality custom reports and

More information

Macro Quoting: Which Function Should We Use? Pengfei Guo, MSD R&D (China) Co., Ltd., Shanghai, China

Macro Quoting: Which Function Should We Use? Pengfei Guo, MSD R&D (China) Co., Ltd., Shanghai, China PharmaSUG China 2016 - Paper 81 Macro Quoting: Which Function Should We Use? Pengfei Guo, MSD R&D (China) Co., Ltd., Shanghai, China ABSTRACT There are several macro quoting functions in SAS and even some

More information

Microsoft Word 2010 Intermediate

Microsoft Word 2010 Intermediate Microsoft Word 2010 Intermediate Agenda 1. Welcome, Introduction, Sign-in 2. Presentation 3. a. Advanced Formatting i. Review: Use Select All to change alignment, font style, spacing ii. Headers and Footers

More information

Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA

Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA Paper SBC-123 Data Manipulations Using Arrays and DO Loops Patricia Hall and Jennifer Waller, Medical College of Georgia, Augusta, GA ABSTRACT Using public databases for data analysis presents a unique

More information

FILE FORMAT: Did you save the document/presentation as the most current file format (i.e.,.docx,.pptx, or.xlsx)

FILE FORMAT: Did you save the document/presentation as the most current file format (i.e.,.docx,.pptx, or.xlsx) GENERAL DOCUMENT REQUIREMENTS FILE FORMAT: Did you save the document/presentation as the most current file format (i.e.,.docx,.pptx, or.xlsx) Yes No FILE NAME: Does the filename identify the document or

More information

Formatting a Report with Word 2010

Formatting a Report with Word 2010 Formatting a Report with Word 2010 The basics Although you can use Word to do a great many formatting tasks, here we will concentrate on the basic requirements for good presentation of a report. These

More information

Web-Application Bar Charts without SAS/GRAPH. Steve James, Centers for Disease Control and Prevention, Atlanta, GA

Web-Application Bar Charts without SAS/GRAPH. Steve James, Centers for Disease Control and Prevention, Atlanta, GA Web-Application Bar Charts without SAS/GRAPH Steve James, Centers for Disease Control and Prevention, Atlanta, GA ABSTRACT A picture is worth 1000 words it s said. And while that may be true, producing

More information

THE EXCEL ENVIRONMENT... 1 EDITING...

THE EXCEL ENVIRONMENT... 1 EDITING... Excel Essentials TABLE OF CONTENTS THE EXCEL ENVIRONMENT... 1 EDITING... 1 INSERTING A COLUMN... 1 DELETING A COLUMN... 1 INSERTING A ROW... DELETING A ROW... MOUSE POINTER SHAPES... USING AUTO-FILL...

More information

How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., Atlanta, GA

How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., Atlanta, GA How to Implement the One-Time Methodology Mark Tabladillo, Ph.D., Atlanta, GA ABSTRACT This tutorial will demonstrate how to implement the One-Time Methodology, a way to manage, validate, and process survey

More information

Leveraging SAS Visualization Technologies to Increase the Global Competency of the U.S. Workforce

Leveraging SAS Visualization Technologies to Increase the Global Competency of the U.S. Workforce Paper SAS216-2014 Leveraging SAS Visualization Technologies to Increase the Global Competency of the U.S. Workforce Jim Bauer, SAS Institute Inc., Cary, NC ABSTRACT U.S. educators face a critical new imperative:

More information

Word 2010: Preparing Your Dissertation. May 18, 2011

Word 2010: Preparing Your Dissertation. May 18, 2011 Word 2010: Preparing Your Dissertation May 18, 2011 Author: Anne Kolaczyk, Maureen Hogue Editor: Maureen Hogue, Anne Kolaczyk, Susan Antonovitz 2008, 2010. 2011 Office of Information Technologies, University

More information

HAVE YOU EVER WISHED THAT YOU DO NOT NEED TO TYPE OR CHANGE REPORT NUMBERS AND TITLES IN YOUR SAS PROGRAMS?

HAVE YOU EVER WISHED THAT YOU DO NOT NEED TO TYPE OR CHANGE REPORT NUMBERS AND TITLES IN YOUR SAS PROGRAMS? HAVE YOU EVER WISHED THAT YOU DO NOT NEED TO TYPE OR CHANGE REPORT NUMBERS AND TITLES IN YOUR SAS PROGRAMS? Aileen L. Yam, PharmaNet, Inc., Princeton, NJ ABSTRACT In clinical research, the table of contents

More information

And Now, Presenting... Turn the Tables on Boring Reports with SAS 9.2 and RTF Tagset Options Louise S. Hadden, Abt Associates Inc.

And Now, Presenting... Turn the Tables on Boring Reports with SAS 9.2 and RTF Tagset Options Louise S. Hadden, Abt Associates Inc. Turn the Tables on Boring Reports with SAS 9.2 and RTF Tagset Options Louise S. Hadden, Abt Associates Inc., Cambridge, MA ABSTRACT SAS 9.2 offers new ways to create presentation quality RTF documents

More information

Exam Name: MOS: Microsoft Office Word 2010

Exam Name: MOS: Microsoft Office Word 2010 Vendor: Microsoft Exam Code: 77-881 Exam Name: MOS: Microsoft Office Word 2010 Version: DEMO 1.You type a document and you want to insert header from third page. Which of the following technique will you

More information

ODS DOCUMENT, a practical example. Ruurd Bennink, OCS Consulting B.V., s-hertogenbosch, the Netherlands

ODS DOCUMENT, a practical example. Ruurd Bennink, OCS Consulting B.V., s-hertogenbosch, the Netherlands Paper CC01 ODS DOCUMENT, a practical example Ruurd Bennink, OCS Consulting B.V., s-hertogenbosch, the Netherlands ABSTRACT The ODS DOCUMENT destination (in short ODS DOCUMENT) is perhaps the most underutilized

More information

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA

Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA SESUG 2012 Paper HW-01 Getting Up to Speed with PROC REPORT Kimberly LeBouton, K.J.L. Computing, Rossmoor, CA ABSTRACT Learning the basics of PROC REPORT can help the new SAS user avoid hours of headaches.

More information

Getting Started Guide. Chapter 3 Using Styles and Templates

Getting Started Guide. Chapter 3 Using Styles and Templates Getting Started Guide Chapter 3 Using Styles and Templates Copyright This document is Copyright 2005 2009 by its contributors as listed in the section titled Authors. You may distribute it and/or modify

More information

An Introduction to SAS/SHARE, By Example

An Introduction to SAS/SHARE, By Example Paper AD01 An Introduction to SAS/SHARE, By Example Larry Altmayer, U.S. Census Bureau, Washington, DC ABSTRACT SAS/SHARE software is a useful tool for allowing several users to access and edit the same

More information

Microsoft Certified Application Specialist Exam Objectives Map

Microsoft Certified Application Specialist Exam Objectives Map Microsoft Certified Application Specialist Exam s Map This document lists all Microsoft Certified Application Specialist exam objectives for (Exam 77-602) and provides references to corresponding coverage

More information

Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas

Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas PharmaSUG 2015 - Paper QT40 Regaining Some Control Over ODS RTF Pagination When Using Proc Report Gary E. Moore, Moore Computing Services, Inc., Little Rock, Arkansas ABSTRACT When creating RTF files using

More information

DATA PROCESSING PROCEDURES FOR UCR EPA ENVIRONMENTAL CHAMBER EXPERIMENTS. Appendix B To Quality Assurance Project Plan

DATA PROCESSING PROCEDURES FOR UCR EPA ENVIRONMENTAL CHAMBER EXPERIMENTS. Appendix B To Quality Assurance Project Plan DATA PROCESSING PROCEDURES FOR UCR EPA ENVIRONMENTAL CHAMBER EXPERIMENTS Appendix B To Quality Assurance Project Plan DRAFT Version 1.3 April 25, 2002 William P. L. Carter Atmospheric Processes Group CE-CERT

More information

Survey Design, Distribution & Analysis Software. professional quest. Whitepaper Extracting Data into Microsoft Excel

Survey Design, Distribution & Analysis Software. professional quest. Whitepaper Extracting Data into Microsoft Excel Survey Design, Distribution & Analysis Software professional quest Whitepaper Extracting Data into Microsoft Excel WHITEPAPER Extracting Scoring Data into Microsoft Excel INTRODUCTION... 1 KEY FEATURES

More information

Creating Your Own Worksheet Formats in exporttoxl

Creating Your Own Worksheet Formats in exporttoxl SIB-103 Creating Your Own Worksheet Formats in exporttoxl Nathaniel Derby, Statis Pro Data Analytics, Seattle, WA ABSTRACT %exporttoxl is a freely available SAS R macro which allows the user to create

More information

EVALUATION COPY. Unauthorized Reproduction or Distribution Prohibited

EVALUATION COPY. Unauthorized Reproduction or Distribution Prohibited INTRODUCTION TO MICROSOFT EXCEL 2016 Introduction to Microsoft Excel 2016 (EXC2016.1 version 1.0.1) Copyright Information Copyright 2016 Webucator. All rights reserved. The Authors Dave Dunn Dave Dunn

More information

Creating a Newsletter

Creating a Newsletter Chapter 7 Creating a Newsletter In this chapter, you will learn the following to World Class standards: Setting the Margins Changing the Font and Font Size Inserting a Table Inserting a Picture Adding

More information

Using Big Data to Visualize People Movement Using SAS Basics

Using Big Data to Visualize People Movement Using SAS Basics ABSTRACT MWSUG 2016 - Paper DV09 Using Big Data to Visualize People Movement Using SAS Basics Stephanie R. Thompson, Rochester Institute of Technology, Rochester, NY Visualizing the movement of people

More information

Excel Shortcuts Increasing YOUR Productivity

Excel Shortcuts Increasing YOUR Productivity Excel Shortcuts Increasing YOUR Productivity CompuHELP Division of Tommy Harrington Enterprises, Inc. tommy@tommyharrington.com https://www.facebook.com/tommyharringtonextremeexcel Excel Shortcuts Increasing

More information

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ

Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ Paper 74924-2011 Exporting Variable Labels as Column Headers in Excel using SAS Chaitanya Chowdagam, MaxisIT Inc., Metuchen, NJ ABSTRACT Excel output is the desired format for most of the ad-hoc reports

More information

The Demystification of a Great Deal of Files

The Demystification of a Great Deal of Files SESUG 2016 ABSTRACT Paper -AD239 The Demystification of a Great Deal of Files Chao-Ying Hsieh, Southern Company Services, Inc. Atlanta, GA Our input data are sometimes stored in external flat files rather

More information

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects.

This paper describes a report layout for reporting adverse events by study consumption pattern and explains its programming aspects. PharmaSUG China 2015 Adverse Event Data Programming for Infant Nutrition Trials Ganesh Lekurwale, Singapore Clinical Research Institute, Singapore Parag Wani, Singapore Clinical Research Institute, Singapore

More information

Word Tutorial 3. Creating a Multiple- Page Report COMPREHENSIVE

Word Tutorial 3. Creating a Multiple- Page Report COMPREHENSIVE Word Tutorial 3 Creating a Multiple- Page Report COMPREHENSIVE Objectives Format headings with Quick Styles Insert a manual page break Create and edit a table Sort rows in a table Modify a table s structure

More information

Superlock II. Manual for Printing / Exporting Excel Reports for

Superlock II. Manual for Printing / Exporting Excel Reports for Manual for Printing / Exporting Excel Reports for Superlock II 1 Table of Content Manual for for Superlock II... 1 Revisions... 3 Requirements... 3 Generate default reports... 4 Types of reports... 4 Print/Export

More information

Corel Ventura 8 Introduction

Corel Ventura 8 Introduction Corel Ventura 8 Introduction Training Manual A! ANZAI 1998 Anzai! Inc. Corel Ventura 8 Introduction Table of Contents Section 1, Introduction...1 What Is Corel Ventura?...2 Course Objectives...3 How to

More information

Producing Summary Tables in SAS Enterprise Guide

Producing Summary Tables in SAS Enterprise Guide Producing Summary Tables in SAS Enterprise Guide Lora D. Delwiche, University of California, Davis, CA Susan J. Slaughter, Avocet Solutions, Davis, CA ABSTRACT This paper shows, step-by-step, how to use

More information

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint

Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint PharmaSUG 2018 - Paper DV-01 Square Peg, Square Hole Getting Tables to Fit on Slides in the ODS Destination for PowerPoint Jane Eslinger, SAS Institute Inc. ABSTRACT An output table is a square. A slide

More information

ICT IGCSE Practical Revision Presentation Word Processing

ICT IGCSE Practical Revision Presentation Word Processing Page Layout Header & Footer Font Styles Image wrapping List Styles Indentation & Spacing Find & Replace Create/Format Table Common Mistakes Orphan & Widows Completed Example Mail Merge Page Layout (Size

More information

Microsoft Access II 1.) Opening a Saved Database Music Click the Options Enable this Content Click OK. *

Microsoft Access II 1.) Opening a Saved Database Music Click the Options Enable this Content Click OK. * Microsoft Access II 1.) Opening a Saved Database Open the Music database saved on your computer s hard drive. *I added more songs and records to the Songs and Artist tables. Click the Options button next

More information

SAS Log Summarizer Finding What s Most Important in the SAS Log

SAS Log Summarizer Finding What s Most Important in the SAS Log Paper CC-037 SAS Log Summarizer Finding What s Most Important in the SAS Log Milorad Stojanovic RTI International Education Surveys Division RTP, North Carolina ABSTRACT Validity of SAS programs is an

More information

Word processing software

Word processing software Unit 351 Word processing software UAN: Level: 3 Credit value: 6 GLH: 45 Y/502/4629 Assessment type: Portfolio of Evidence or assignment (7574 ITQ Users) Relationship to NOS: Assessment requirements specified

More information

Chapter 11 Formatting a Long Document

Chapter 11 Formatting a Long Document Chapter 11 Formatting a Long Document Learning Objectives LO11.1: Work with styles LO11.2: Work with themes LO11.3: Change the style set LO11.4: Work with the document outline LO11.5: Change the margins

More information

DOING MORE WITH WORD: MICROSOFT OFFICE 2010

DOING MORE WITH WORD: MICROSOFT OFFICE 2010 DOING MORE WITH WORD: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT WORD PAGE 03 Viewing Toolbars Adding and Removing Buttons MORE TASKS IN MICROSOFT WORD

More information

DOING MORE WITH WORD: MICROSOFT OFFICE 2013

DOING MORE WITH WORD: MICROSOFT OFFICE 2013 DOING MORE WITH WORD: MICROSOFT OFFICE 2013 GETTING STARTED PAGE 02 Prerequisites What You Will Learn USING MICROSOFT WORD PAGE 03 Viewing Toolbars Adding and Removing Buttons MORE TASKS IN MICROSOFT WORD

More information

Ms excel. The Microsoft Office Button. The Quick Access Toolbar

Ms excel. The Microsoft Office Button. The Quick Access Toolbar Ms excel MS Excel is electronic spreadsheet software. In This software we can do any type of Calculation & inserting any table, data and making chart and graphs etc. the File of excel is called workbook.

More information

CCRS Quick Start Guide for Program Administrators. September Bank Handlowy w Warszawie S.A.

CCRS Quick Start Guide for Program Administrators. September Bank Handlowy w Warszawie S.A. CCRS Quick Start Guide for Program Administrators September 2017 www.citihandlowy.pl Bank Handlowy w Warszawie S.A. CitiManager Quick Start Guide for Program Administrators Table of Contents Table of Contents

More information

A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA

A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA A Macro to Manage Table Templates Mark Mihalyo, Community Care Behavioral Health Organization, Pittsburgh, PA ABSTRACT The scenario: Data must be placed in a table or chart design provided by the company

More information

Welcome to Introduction to Microsoft Excel 2010

Welcome to Introduction to Microsoft Excel 2010 Welcome to Introduction to Microsoft Excel 2010 2 Introduction to Excel 2010 What is Microsoft Office Excel 2010? Microsoft Office Excel is a powerful and easy-to-use spreadsheet application. If you are

More information

Getting Started Guide. Chapter 3 Using Styles and Templates

Getting Started Guide. Chapter 3 Using Styles and Templates Getting Started Guide Chapter 3 Using Styles and Templates Copyright This document is Copyright 2010 by its contributors as listed below. You may distribute it and/or modify it under the terms of either

More information

ADVANCED SPREADSHEET APPLICATIONS (07)

ADVANCED SPREADSHEET APPLICATIONS (07) (07) CONTESTANT ID# START TIME END TIME Financial Services Events Sponsored by the American Institute of Certified Public Accounts TOTAL POINTS (300) Failure to adhere to any of the following rules will

More information

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010

DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010 DOING MORE WITH EXCEL: MICROSOFT OFFICE 2010 GETTING STARTED PAGE 02 Prerequisites What You Will Learn MORE TASKS IN MICROSOFT EXCEL PAGE 03 Cutting, Copying, and Pasting Data Filling Data Across Columns

More information

Microsoft Word 2011 Tutorial

Microsoft Word 2011 Tutorial Microsoft Word 2011 Tutorial GETTING STARTED Microsoft Word is one of the most popular word processing programs supported by both Mac and PC platforms. Microsoft Word can be used to create documents, brochures,

More information

Writing Programs in SAS Data I/O in SAS

Writing Programs in SAS Data I/O in SAS Writing Programs in SAS Data I/O in SAS Statistics 135 Autumn 2005 Copyright c 2005 by Mark E. Irwin Writing SAS Programs Your SAS programs can be written in any text editor, though you will often want

More information

Getting Started Guide. Chapter 3 Using Styles and Templates

Getting Started Guide. Chapter 3 Using Styles and Templates Getting Started Guide Chapter 3 Using Styles and Templates Copyright This document is Copyright 2010 2013 by its contributors as listed below. You may distribute it and/or modify it under the terms of

More information

In this course we will go over the basic functions of Microsoft Word, more advanced functions are omitted from this class and walkthrough.

In this course we will go over the basic functions of Microsoft Word, more advanced functions are omitted from this class and walkthrough. INTRODUCTION TO MICROSOFT WORD MARGARET E. HEGGAN FREE PUBLIC LIBRARY Microsoft Word is a program called a WORD PROCESSOR WORD PROCESSOR refers to a program in which the user inputs text which is formatted

More information

YOUR LOGO HERE TITLE HERE: SUBTITLE HERE. Document No. HERE. Prepared for Put Name and Client Logo Here

YOUR LOGO HERE TITLE HERE: SUBTITLE HERE. Document No. HERE. Prepared for Put Name and Client Logo Here YOUR LOGO HERE TITLE HERE: SUBTITLE HERE Document No. HERE Prepared for Put Name and Client Logo Here Prepared by: Your Company Name & Logo Address Phone Web Site MONTH DAY, 2005 This page intentionally

More information

ADOBE DREAMWEAVER CS4 BASICS

ADOBE DREAMWEAVER CS4 BASICS ADOBE DREAMWEAVER CS4 BASICS Dreamweaver CS4 2 This tutorial focuses on the basic steps involved in creating an attractive, functional website. In using this tutorial you will learn to design a site layout,

More information

TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE

TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE TIPS FOR WORKING WITH THE HONORS COLLEGE SENIOR PROJECT TEMPLATE There are several issues that arise when using the Honors College Senior Project Template. Most common are formatting tabs, margins, and

More information