<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How do you manage many format value labels? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358132#M274298</link>
    <description>&lt;P&gt;I have something like that already, but it's the&amp;nbsp;value label formatting that is proving to be the most tedious part...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit: oh I see, you mean reference a central database. What I have now references the text files. Perhaps it would be advantageous to just have 1 single database but I fear it will be too large, and adding new data&amp;nbsp;each month could&amp;nbsp;add more difficulties.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 12 May 2017 05:32:58 GMT</pubDate>
    <dc:creator>fieldsa83</dc:creator>
    <dc:date>2017-05-12T05:32:58Z</dc:date>
    <item>
      <title>How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357673#M274287</link>
      <description>&lt;P&gt;Is there a good way to keep all of them organized?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have about 100 variables, each with their own value formats. Right now they are all simply in 1 very large, unmanageable PROC FORMAT list.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2017 20:45:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357673#M274287</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-10T20:45:08Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357678#M274288</link>
      <description>&lt;P&gt;1) Create a permanent library that every user can access where you want to store the formats&lt;/P&gt;
&lt;P&gt;2) Reference that library on the Proc format statement (bonus: create a cntlout data set into the same library with the CNTLOUT option)&lt;/P&gt;
&lt;P&gt;3) Set the format search path to include that library with an options statement or modify the settings for each user&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Skeleton code:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;libname MyFmt "path to library";&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc format library=MyFmt cntlout=MyFmt.Cntlout;&lt;/P&gt;
&lt;P&gt;&amp;lt;formats&amp;gt;&lt;/P&gt;
&lt;P&gt;;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;options fmtsearch=( work Sashelp MyFmt);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Once the format catalog is created in them MyFmt library you only need to run the Proc Format code when you add/change format definitions.&lt;/P&gt;
&lt;P&gt;The Libname and Options could be in Autoexec.sas or other program run a the start of session or set in properties.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;STRONG&gt;SAVE THE PROC FORMAT CODE.&lt;/STRONG&gt; You may need to reexecute it when upgrading (or use the Cntlout data set to rebuild the format catalog)&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2017 21:05:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357678#M274288</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-05-10T21:05:06Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357679#M274289</link>
      <description>&lt;P&gt;Permanently save the formats.&amp;nbsp; This means:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Understand the LIBRARY= option on PROC FORMAT, to permanently save formats.&amp;nbsp; Look at how updating works, when you are changing a permanently saved format.&lt;/LI&gt;
&lt;LI&gt;Understand the FMTSEARCH option to be able to access permanently saved formats.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Then make one person the gatekeeper.&amp;nbsp; All enhancements to the formats must go through that person.&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2017 21:04:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357679#M274289</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-05-10T21:04:04Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357777#M274290</link>
      <description>&lt;P&gt;The best option to preserve formats is the code you have, period. It is just text that can easily be saved, copied, versioned, and ported to other operating systems. (see Maxims 26 and 27)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Now, you might consider to do some things that make the code more readable. One of those might be to create data steps with datalines that create the cntlin datasets for proc format, so you have one data step per format.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Another often overlooked option is that your formats might actually be recreations of already existing domain tables in your production database. If that is the case, have the domains exported and write a program that converts these tables to cntlin datasets. If there is an option to drive your programs from data, use it (see Maxim 33).&lt;/P&gt;</description>
      <pubDate>Thu, 11 May 2017 07:33:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357777#M274290</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-05-11T07:33:16Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357846#M274291</link>
      <description>Kurt's proposal could be extended - in that production database have a view created which will deliver the   cntlin data, only when required.&lt;BR /&gt; &lt;BR /&gt;In support of &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13884"&gt;@ballardw&lt;/a&gt; &lt;BR /&gt;To add a format library to the format search paths option,  use something like&lt;BR /&gt;OPTION APPEND= FMTSEARCH mylib.mfmt_catalog ;&lt;BR /&gt;In this way we do not replace earlier modifications to the format search path.&lt;BR /&gt;(and see also OPTION INSERT= )</description>
      <pubDate>Thu, 11 May 2017 12:30:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/357846#M274291</guid>
      <dc:creator>Peter_C</dc:creator>
      <dc:date>2017-05-11T12:30:29Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358096#M274292</link>
      <description>&lt;P&gt;I use proc tabulate with a lot of different variables.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once I've loaded all the format value labels in to memory, is there an easy way to reference, or possibly automatically attach format value labels in proc tabulate without having to manually call them?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For example if i use sex and age in one table, and then industry and occupation in another, I don't want ot be manually&amp;nbsp;writing out format sex sex. age age. ; and then redoing all that when my selected variables are changing&amp;nbsp;frequently. Do you know what I mean?&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 02:53:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358096#M274292</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T02:53:21Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358119#M274293</link>
      <description>&lt;P&gt;Add the FORMAT statement to the data step that creates the data.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data mylib.mydata ;
   infile 'mysourefile.csv' dsd firstobs=2 truncover ;
   length AGE 8 SEX $1 ;
   input age sex ;
   format age age. sex sex. ;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 12 May 2017 04:43:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358119#M274293</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T04:43:48Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358120#M274294</link>
      <description>&lt;P&gt;Thanks but is there a way to replace the FORMAT&amp;nbsp;statement with something that automatically identifies all the variables that have been read in and apply the corresponding label? It seems tedious when I have 100 variables that are sometimes read in but sometimes not... I don't want to spend&amp;nbsp;10 minutes trying to figure out which formats need to be applied each time I want to create a table.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 04:46:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358120#M274294</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T04:46:38Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358124#M274295</link>
      <description>&lt;P&gt;Are you re-reading your text files over and over again? If so why?&lt;/P&gt;
&lt;P&gt;First make SAS datasets from your data. It can be one or many datasets. It is this step that will define your AGE variable including the label and format that is attached to it.&lt;/P&gt;
&lt;P&gt;Then when you want to make your presentation you can either just run from that table or build some temporary table by selecting values from from one or more dataset. In either case the formats will continue to be attached to the variables.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 05:04:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358124#M274295</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T05:04:00Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358128#M274296</link>
      <description>&lt;P&gt;The issue with that is the full dataset ends up being like 50gb (brings in hundreds of text files--each file representing 1 month of the series). So&amp;nbsp;I find it easier just to read in&amp;nbsp;the few text files for the months that I need with&amp;nbsp;a handful of variables depending on the analysis.&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 05:21:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358128#M274296</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T05:21:20Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358129#M274297</link>
      <description>&lt;P&gt;make a program or a view that reads the data and just pass in the list of files to read and/or variables to keep as parameters.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let filelist=month1 month2 month3;
%let varlist=age sex ;

%include 'program that reads files';
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 12 May 2017 05:23:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358129#M274297</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T05:23:56Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358132#M274298</link>
      <description>&lt;P&gt;I have something like that already, but it's the&amp;nbsp;value label formatting that is proving to be the most tedious part...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit: oh I see, you mean reference a central database. What I have now references the text files. Perhaps it would be advantageous to just have 1 single database but I fear it will be too large, and adding new data&amp;nbsp;each month could&amp;nbsp;add more difficulties.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 05:32:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358132#M274298</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T05:32:58Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358133#M274299</link>
      <description>&lt;P&gt;If you have 1 to 10,000 text files that all have the same structure then you only need to write the program that reads them once.&lt;/P&gt;
&lt;P&gt;For example if your text files all live in the same folder your program could be as simple as something like this.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let filelist='month1.txt' 'month2.txt';
%let keeplist=age sex ;

filename dir '/directory_name';

data want ;
  infile dir(&amp;amp;filelist) dsd truncover ;
  length id 8 age 8 sex $1 ;
  input id age sex ;
  label
   id='Unique id' 
   Age='Age at onset'
   Sex = 'Gender'
  ;
  format age age. sex sex. ;
  keep &amp;amp;keeplist;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 12 May 2017 05:38:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358133#M274299</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T05:38:40Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358135#M274300</link>
      <description>&lt;P&gt;Yes, for sure; that's basically what I have now.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The issue is that there are 100 variables, not just age and sex.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And so if I want to make a table that only uses like 20 of the 100 variables, I basically have them all in a list and&amp;nbsp;comment out the ones I don't want to read in. However,&amp;nbsp;as it is now, I'd have to do the same process (manually curating a list of variables and their corresponding value labels). It would be easier if I could just have something that reads in the data, then makes a list, then checks that list against a list of formats and then just does all that automatically.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So this reads in first quarter 2007 and 2017. But imagine the list of variables like 10x as long and so I just comment out most of them.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;FONT color="blue"&gt;options minoperator mindelimiter&lt;FONT color="black"&gt;=&lt;/FONT&gt;&lt;FONT color="purple"&gt;','&lt;/FONT&gt;&lt;FONT color="black"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="navy"&gt;&lt;STRONG&gt;%macro&lt;/STRONG&gt; &lt;FONT color="black"&gt;&lt;STRONG&gt;&lt;I&gt;doloop&lt;/I&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT color="black"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;data _null_;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* Start year&amp;nbsp;&amp;nbsp;&amp;nbsp; */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="black"&gt;call symput (&lt;/FONT&gt;&lt;FONT color="purple"&gt;"startyear"&lt;/FONT&gt;&lt;FONT color="black"&gt;,&lt;/FONT&gt;&lt;FONT color="purple"&gt;'2007'&lt;/FONT&gt;&lt;FONT color="black"&gt;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* Start month&amp;nbsp;&amp;nbsp; */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="black"&gt;call symput (&lt;/FONT&gt;&lt;FONT color="purple"&gt;"startmonth"&lt;/FONT&gt;&lt;FONT color="black"&gt;,&lt;/FONT&gt;&lt;FONT color="purple"&gt;'01'&lt;/FONT&gt;&lt;FONT color="black"&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* End year&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="black"&gt;call symput (&lt;/FONT&gt;&lt;FONT color="purple"&gt;"endyear"&lt;/FONT&gt;&lt;FONT color="black"&gt;,&lt;/FONT&gt;&lt;FONT color="purple"&gt;'2017'&lt;/FONT&gt;&lt;FONT color="black"&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* End month&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="black"&gt;call symput (&lt;/FONT&gt;&lt;FONT color="purple"&gt;"endmonth"&lt;/FONT&gt;&lt;FONT color="black"&gt;,&lt;/FONT&gt;&lt;FONT color="purple"&gt;'04'&lt;/FONT&gt;&lt;FONT color="black"&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* Only specific months */&lt;FONT color="black"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; call symput &lt;/FONT&gt;/*("limitmonth",'');*/&lt;FONT color="black"&gt; (&lt;/FONT&gt;&lt;FONT color="purple"&gt;"limit"&lt;/FONT&gt;&lt;FONT color="black"&gt;,&lt;/FONT&gt;&lt;FONT color="purple"&gt;'and (&amp;amp;i in (2007,2017) and &amp;amp;month in(01,02,03,04))'&lt;/FONT&gt;&lt;FONT color="black"&gt;); &lt;/FONT&gt;/*for all months in range leave everything between single quotes blank*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;stop;&lt;/DIV&gt;&lt;DIV&gt;run;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/* This section starts the do loop logic */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="blue"&gt;%do&lt;FONT color="black"&gt; i=&amp;amp;startyear &lt;/FONT&gt;%to&lt;FONT color="black"&gt; &amp;amp;endyear;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="blue"&gt;%do&lt;FONT color="black"&gt; j=&lt;/FONT&gt;&lt;FONT color="teal"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/FONT&gt; %to &lt;FONT color="teal"&gt;&lt;STRONG&gt;12&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT color="black"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="blue"&gt;%if&lt;/FONT&gt; &amp;amp;&lt;FONT color="teal"&gt;j.&lt;/FONT&gt;=&lt;FONT color="teal"&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/FONT&gt; and &amp;amp;&lt;FONT color="teal"&gt;i.&lt;/FONT&gt;=&amp;amp;startyear &lt;FONT color="blue"&gt;%then&lt;/FONT&gt; &lt;FONT color="blue"&gt;%let&lt;/FONT&gt; j=&amp;amp;startmonth;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="green"&gt;/* on first loop, sets &amp;amp;startmonth (instead of defaulting to 1)*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%let&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; month=&lt;/FONT&gt;&lt;FONT face="Courier New" color="blue"&gt;%sysfunc&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;(putn(&amp;amp;j,z2.));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* leading 0 for month if needed */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%let&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; year=&lt;/FONT&gt;&lt;FONT face="Courier New" color="blue"&gt;%sysfunc&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;(substrn(&amp;amp;i.,3));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* last 2 digits of year */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%if&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; ( ((&amp;amp;&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;endyear.&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; ne &amp;amp;startyear) and (&amp;amp;&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;i.&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; ne &amp;amp;endyear)) OR (&amp;amp;&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;i.&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;=&amp;amp;endyear and &amp;amp;&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;month.&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; le &amp;amp;endmonth) ) &lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* continues if not end year OR if end year but less or equal to endmonth */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;&amp;amp;limit&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/*continues if conditions from symput above are met*/&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%then&lt;/FONT&gt; &lt;FONT face="Courier New" color="blue"&gt;%do&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* continues... */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;data TAB&amp;amp;&lt;FONT color="teal"&gt;month.&lt;/FONT&gt;&amp;amp;&lt;FONT color="teal"&gt;year.&lt;/FONT&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="green"&gt;/* start data step*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%if&lt;/FONT&gt;&lt;FONT face="Courier New"&gt; &amp;amp;i&amp;gt;=&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;2017&lt;/STRONG&gt;&lt;/FONT&gt; &lt;FONT face="Courier New" color="blue"&gt;%then&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* use pre-release folder if year &amp;gt;= 2017 */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%do&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infile &lt;FONT color="purple"&gt;"&lt;A&gt;\\DIRECTORY1\20&amp;amp;year.\tab&amp;amp;month.&amp;amp;year..prn&lt;/A&gt;"&lt;/FONT&gt; lrecl=&lt;FONT color="teal"&gt;&lt;STRONG&gt;430&lt;/STRONG&gt;&lt;/FONT&gt; missover;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="blue"&gt;%end&lt;/FONT&gt;;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="blue"&gt;%else&lt;/FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="green"&gt;/* use main tabs folder if not &amp;gt;= 2017 */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New" color="blue"&gt;%do&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; infile &lt;FONT color="purple"&gt;"&lt;A&gt;\\&lt;/A&gt;&lt;A&gt;DIRECTORY2&lt;/A&gt;&lt;A&gt;\tab&amp;amp;month.&amp;amp;year..prn&lt;/A&gt;"&lt;/FONT&gt; lrecl=&lt;FONT color="teal"&gt;&lt;STRONG&gt;430&lt;/STRONG&gt;&lt;/FONT&gt; missover;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="blue"&gt;%end&lt;/FONT&gt;;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="green"&gt;/*__ STEP 2: INPUT DESIRED VARIABLES _________________________________________________________________________________________________*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;input&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;@&lt;FONT color="teal"&gt;&lt;STRONG&gt;6&lt;/STRONG&gt;&lt;/FONT&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DWELID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="teal"&gt;$18.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color="green"&gt;/* Dwelling ID */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;@&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;SYEAR&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;4.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* Survey year - yyyy */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;@&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;29&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;SDATE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;6.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* Survey year and month yyyymm */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;@&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;33&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;SMONTH&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* Survey month - mm */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;@&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;63&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;FINALWT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;5.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* Final weight for respondent */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="Courier New"&gt;@&lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;119&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New"&gt;AGE_TABS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT face="Courier New" color="teal"&gt;&lt;STRONG&gt;3.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" color="green"&gt;/* Age of respondent as of end of&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;FONT face="Courier New" color="green"&gt;/* &amp;nbsp; &amp;nbsp; &amp;nbsp; @125&amp;nbsp;&amp;nbsp;&amp;nbsp; EDUCLEV&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Highest level of edu (break at 1990) */&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&lt;FONT face="Courier New" color="green"&gt;...&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color="green"&gt;/*this semicolon needs to stay (ends the DATA step)*/&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT face="Calibri"&gt;&lt;SPAN&gt;%include &lt;/SPAN&gt;&lt;FONT color="purple"&gt;"\\DIRECTORY1\PROC_FORMAT2.sas"&lt;/FONT&gt;&lt;FONT color="black"&gt;; &lt;/FONT&gt;&lt;FONT color="green"&gt;/* brings in formats*/&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;run;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="blue"&gt;%end&lt;FONT color="black"&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color="green"&gt;/* end restriction for going past end month */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="blue"&gt;%end&lt;FONT color="black"&gt;; &lt;/FONT&gt;%end&lt;FONT color="black"&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color="green"&gt;/* end main start/end month/year do loops */&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT color="navy"&gt;&lt;STRONG&gt;%mend&lt;/STRONG&gt;&lt;FONT color="black"&gt;;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;%&lt;STRONG&gt;&lt;I&gt;doloop&lt;/I&gt;&lt;/STRONG&gt;;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;</description>
      <pubDate>Fri, 12 May 2017 05:51:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358135#M274300</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T05:51:22Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358136#M274301</link>
      <description>&lt;P&gt;There is no value in making the generation of the INPUT statement conditional if the goal is just which variables you want to KEEP.&lt;/P&gt;
&lt;P&gt;Just make the KEEP statement variable.&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 05:51:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358136#M274301</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T05:51:35Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358137#M274302</link>
      <description>&lt;P&gt;But the text file is flat format so&amp;nbsp;I have to specify their position; they don't exist until that's done.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit: plus I like seeing all the available variables and their input position listed, otherwise I&amp;nbsp;forget about them and have to&amp;nbsp;search in all the documentation to find their details.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Anyway, thanks for the help. I will continue to think about these options...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I feel like I could do the formats by&amp;nbsp;making a list of all vars, and then havng it do a sort of look up on a list of formats and then apply them if there's a match.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 05:59:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358137#M274302</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T05:59:20Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358142#M274303</link>
      <description>&lt;P&gt;Are you saying that the format of the file is DIFFERENT every month? &amp;nbsp;That AGE appears in some location that depends on whether you are reading the data for January instead of March?&lt;/P&gt;
&lt;P&gt;Look at the example program I posted before and pretend that the input statement defines and reads 10,000 variables instead of three. If the KEEP statement still only lists two of them then the generated DATASET will only have those two variables. Converting the text strings into variables is trivial in terms of execution time. It is the time it takes to read the text file from the disk that takes time. It doesn't save any time to read just two variables intead of a hundred.&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 06:04:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358142#M274303</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T06:04:02Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358144#M274304</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc contents data=have noprint out=contents; run;
proc format noprint lib=mylib cntlout=formats; run;
proc sql noprint;
 create table list as
 select distinct a.name,b.fmtname
  from contents a , formats b
  where upcase(a.name) = upcase(b.fmtname)
  order by 1
;
quit;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 12 May 2017 06:06:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358144#M274304</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-05-12T06:06:45Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358145#M274305</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/98628"&gt;@fieldsa83&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;I have something like that already, but it's the&amp;nbsp;value label formatting that is proving to be the most tedious part...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Edit: oh I see, you mean reference a central database. What I have now references the text files. Perhaps it would be advantageous to just have 1 single database but I fear it will be too large, and adding new data&amp;nbsp;each month could&amp;nbsp;add more difficulties.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Then create a dataset for each month, with the month being part of the dataset name. When doing analysis over a series of months, create a simple datastep view (with keep list) over those months and run your analysis from that. The assignment of formats and labels is done once per month when the initial import is done.&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 06:06:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358145#M274305</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-05-12T06:06:54Z</dc:date>
    </item>
    <item>
      <title>Re: How do you manage many format value labels?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358146#M274306</link>
      <description>&lt;P&gt;Oh I see, yes I was thinking reading the full text file would be long and the keep&amp;nbsp;would not be as efficient as only reading in specific parts. This is not the case?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And so does the keep apply to the formats. Would I just list all the formats and the&amp;nbsp;keep would just apply to the ones rom the same &amp;amp;keeplist?&lt;/P&gt;</description>
      <pubDate>Fri, 12 May 2017 06:07:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-you-manage-many-format-value-labels/m-p/358146#M274306</guid>
      <dc:creator>fieldsa83</dc:creator>
      <dc:date>2017-05-12T06:07:27Z</dc:date>
    </item>
  </channel>
</rss>

