<?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: Help with creating a SAS table and run a query from the datawarehouse to validate in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279861#M56451</link>
    <description>&lt;P&gt;SAS works on the principal that one column holds one data item, not several data items. &amp;nbsp;In your case you have two data items in one column, an upper and lower bound separated by a delimeter, which means to use each of those data items you need to split the data. &amp;nbsp;It would be better practice to have one column for lower, and one for upper.&lt;/P&gt;</description>
    <pubDate>Thu, 23 Jun 2016 21:45:03 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2016-06-23T21:45:03Z</dc:date>
    <item>
      <title>Help with creating a SAS table and run a query from the datawarehouse to validate</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279723#M56411</link>
      <description>&lt;P&gt;Hi all-&lt;/P&gt;&lt;P&gt;I am a new SAS user and have no prior knowledge or experience with SAS programming. I don't use SAS on a daily basis but trying to help my team automate a process which is manual currently. I know it can be done using SAS but I just don't know how to or where to start. I hope you can help me figure this out. We use SAS9.3.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Requirement:&lt;/P&gt;&lt;P&gt;I need to build a table like this below.&lt;/P&gt;&lt;P&gt;For ex.&lt;/P&gt;&lt;P&gt;Subject&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score&amp;nbsp;&amp;nbsp;&amp;nbsp; Grade&amp;nbsp;&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 36-50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 51-70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 71-80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;81-90&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 91-100&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 41-50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 51-60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;61-70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 71-85&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 85-100&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once I build the above table, I want to run a query from my datawarehouse(DW) to pull the records and validate that what the system calculated as grade&amp;nbsp;is correct by using the above table. So I would need a "Calculated grade" to make sure what I see in the datawarehouse is the same as what I would calculate manually.&lt;/P&gt;&lt;P&gt;My question is using the score from my DW, can I calculate the grade manually (Calculated grade) and match it up against the grade generated by the system? Something like the below:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For ex.&lt;/P&gt;&lt;P&gt;Subject&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Score&amp;nbsp;&amp;nbsp;&amp;nbsp; Grade&amp;nbsp; Calculated grade&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 35&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 36-50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 51-70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 71-80&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;81-90&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&lt;/P&gt;&lt;P&gt;Math&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 91-100&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 40&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 41-50&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; E&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 51-60&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; D&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;61-70&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp; 71-85&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;Science&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 85-100&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope you can help me with the code. Thanks in advance!&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 12:59:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279723#M56411</guid>
      <dc:creator>newbeesas</dc:creator>
      <dc:date>2016-06-23T12:59:32Z</dc:date>
    </item>
    <item>
      <title>Re: Help with creating a SAS table and run a query from the datawarehouse to validate</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279729#M56415</link>
      <description>&lt;P&gt;Well, no test data (in the form of a datastep) means that this code is untested. &amp;nbsp;Also, it would make you life a lot easier if you split the range out into higher/lower:&lt;/P&gt;
&lt;PRE&gt;data grades;
  length subject score grade $200;
  input subject $ score $ grade $;
datalines;
Math 35 F
...;
run;

proc sql;
  create table WANT as
  select  DW.*,
          G.GRADE as CALC_GRADE
  from    DATA_WAREHOUSE.TABLE DW
  left join GRADES G 
  on        DW.SUBJECT=G.SUBJECT
  and       input(scan(G.SCORE,1,"-"),best.) &amp;lt;= DW.SCORE &amp;lt;= COALESCE(input(scan(G.SCORE,2,"-"),best.),input(scan(G.SCORE,1,"-"),best.));
quit; &lt;/PRE&gt;
&lt;P&gt;So merge on subject, then where score is between low range and either high range if present or low range.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 13:38:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279729#M56415</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-06-23T13:38:17Z</dc:date>
    </item>
    <item>
      <title>Re: Help with creating a SAS table and run a query from the datawarehouse to validate</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279809#M56432</link>
      <description>&lt;P&gt;Thank you for your response!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What does "Also, it would make you life a lot easier if you split the range out into higher/lower:" mean?&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 19:33:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279809#M56432</guid>
      <dc:creator>newbeesas</dc:creator>
      <dc:date>2016-06-23T19:33:26Z</dc:date>
    </item>
    <item>
      <title>Re: Help with creating a SAS table and run a query from the datawarehouse to validate</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279861#M56451</link>
      <description>&lt;P&gt;SAS works on the principal that one column holds one data item, not several data items. &amp;nbsp;In your case you have two data items in one column, an upper and lower bound separated by a delimeter, which means to use each of those data items you need to split the data. &amp;nbsp;It would be better practice to have one column for lower, and one for upper.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Jun 2016 21:45:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-with-creating-a-SAS-table-and-run-a-query-from-the/m-p/279861#M56451</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-06-23T21:45:03Z</dc:date>
    </item>
  </channel>
</rss>

