<?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 in SAS Program automation in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91344#M19304</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;"Group client according to start &amp;amp; end time (if they overlapped, they will be group together) and the room number"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your post is obscure . where is start &amp;amp; end time and room number .&lt;/P&gt;&lt;P&gt;What is the meaning of "+/-$5000" ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 26 Jun 2012 02:39:51 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2012-06-26T02:39:51Z</dc:date>
    <item>
      <title>Help in SAS Program automation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91343#M19303</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would need some help in writing a program to automate these steps:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) Group client according to start &amp;amp; end time (if they overlapped, they will be group together) and the room number&lt;/P&gt;&lt;P&gt;2) Flag out the clients if their total sum of 'Est amount' is +/-$5000 - these could be of any combination within the group&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Below is a set of sample data and the outcome i would like to achieve. Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN style="text-decoration: underline;"&gt;Original Data&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" height="201" style="border: 1px solid rgb(0, 0, 0); width: 1339px; height: 201px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;client_id&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Est amount&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;&lt;STRONG&gt;Max Play&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Avg. Play&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;in_date&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;out_date&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Start Time&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;End Time&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;timeplayed&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;" valign="middle"&gt;&lt;STRONG&gt;Room Number&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;33000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;20000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;5000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4:17:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:34:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;P&gt;137&lt;/P&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;P&gt;4444&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-30000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4:31:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:16:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;105&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-233000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;30000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;15000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:34:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7:55:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;81&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P3&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:59:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7:00:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-47000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;20000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:05:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:48:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;43&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;42000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;25000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:24:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10:49:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;85&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P4&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;8000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;21000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;8000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:38:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10:55:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;77&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;Step 1&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" height="201" style="border: 1px solid #000000; width: 1339px; height: 201px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;client_id&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Est amount&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;&lt;STRONG&gt;Max Play&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Avg. Play&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;in_date&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;out_date&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Start Time&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;End Time&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;timeplayed&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Room Number&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 1&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;33000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;20000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;5000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4:17:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:34:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;P&gt;137&lt;/P&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;P&gt;4444&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-30000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;2000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4:31:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:16:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;105&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 2&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-233000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;30000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;15000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:34:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7:55:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;81&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P3&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;50000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6:59:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;7:00:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;4444&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 3&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;TD colspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;-47000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;20000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:05:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:48:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;43&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;42000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;25000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:24:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10:49:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;85&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P4&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;8000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;21000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;8000&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;3/7/2012&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;9:38:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;10:55:00 PM&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;77&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;6789&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;Step 2&lt;/SPAN&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" height="201" style="border: 1px solid #000000;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Combinations&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="padding: 2px; text-align: center; color: #ffffff; background-color: #6690bc;" valign="middle"&gt;&lt;STRONG&gt;Flagged&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 1&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;P1, P2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;&lt;P&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 2&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P3&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;&lt;STRONG&gt;Group 3&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P2&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P4&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp; P2 &amp;amp; P4&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;P1 &amp;amp;P2 &amp;amp; P4&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 25 Jun 2012 09:12:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91343#M19303</guid>
      <dc:creator>Z_Lim</dc:creator>
      <dc:date>2012-06-25T09:12:06Z</dc:date>
    </item>
    <item>
      <title>Re: Help in SAS Program automation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91344#M19304</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;"Group client according to start &amp;amp; end time (if they overlapped, they will be group together) and the room number"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your post is obscure . where is start &amp;amp; end time and room number .&lt;/P&gt;&lt;P&gt;What is the meaning of "+/-$5000" ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jun 2012 02:39:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91344#M19304</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-06-26T02:39:51Z</dc:date>
    </item>
    <item>
      <title>Re: Help in SAS Program automation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91345#M19305</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ksharp&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for the response. The Start time and end time is listed on the original data (column 7 and 8 respectively). Room number is on the last column. You might have to scroll to the right to see the figures.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to flag out the combination where the sum of their "Est amount" (column 2) is within the range of + or - $5000.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Step 1 and 2 show the output that i would like to achieve.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jun 2012 04:28:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91345#M19305</guid>
      <dc:creator>Z_Lim</dc:creator>
      <dc:date>2012-06-26T04:28:10Z</dc:date>
    </item>
    <item>
      <title>Re: Help in SAS Program automation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91346#M19306</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data x;&lt;/P&gt;&lt;P&gt;input client_id $ Est_Amount Max_Play Avg_Play in_date anydtdte. out_date anydtdte. &lt;/P&gt;&lt;P&gt;Start_Time time11. End_Time time12. timeplayed Room_Number ;&lt;/P&gt;&lt;P&gt;IN_Datetime = in_date * 86400 + Start_Time;&lt;/P&gt;&lt;P&gt;Out_Datetime = out_date * 86400 + End_Time;&lt;/P&gt;&lt;P&gt;format IN_Datetime Out_Datetime datetime20. In_Date Out_Date Date9. Start_Time End_Time time8.;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;P1 33000 20000 5000 3/7/2012 3/7/2012 04:17:00 PM 06:34:00 PM 137 4444&lt;/P&gt;&lt;P&gt;P2 -30000 7000 2000 3/7/2012 3/7/2012 04:31:00 PM 06:16:00 PM 105 4444&lt;/P&gt;&lt;P&gt;P1 -233000 30000 15000 3/7/2012 3/7/2012 06:34:00 PM 07:55:00 PM 81 4444&lt;/P&gt;&lt;P&gt;P3 -50000 50000 50000 3/7/2012 3/7/2012 06:59:00 PM 07:00:00 PM 1 4444&lt;/P&gt;&lt;P&gt;P1 -47000 20000 10000 3/7/2012 3/7/2012 09:05:00 PM 09:48:00 PM 43 6789&lt;/P&gt;&lt;P&gt;P2 42000 25000 10000 3/7/2012 3/7/2012 09:24:00 PM 10:49:00 PM&amp;nbsp; 85 6789&lt;/P&gt;&lt;P&gt;P4 8000 21000 8000 3/7/2012 3/7/2012 09:38:00 PM 10:55:00 PM&amp;nbsp; 77 6789&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if _n_ = 1 then GroupId = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; retain GroupId;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set x;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; by Room_Number notsorted;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Lag_Out_Datetime = LAG(Out_Datetime);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if first.Room_Number or Lag_Out_Datetime &amp;lt; In_Datetime then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; GroupId + 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; drop Out_Datetime In_Datetime Lag:;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select max(Freq) into :maxfreq&lt;/P&gt;&lt;P&gt;&amp;nbsp; from (&lt;/P&gt;&lt;P&gt;&amp;nbsp; select GroupId, Count(1) as Freq from want1 group by GroupId);&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;data want2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array p[1:&amp;amp;maxfreq] $3;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array total[1:&amp;amp;maxfreq];&lt;/P&gt;&lt;P&gt;&amp;nbsp; do k=1 to &amp;amp;maxfreq;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p&lt;K&gt; = ' ';&lt;/K&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; total&lt;K&gt; = .;&lt;/K&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; n = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if _n_ = 1 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare hash h(ordered:'a');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.defineKey('client_id');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.defineData('client_id');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.defineDone();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare hiter hi('h');&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do until(last.GroupId);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set want1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; by GroupId;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; n + 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; p&lt;N&gt; = client_id;&lt;/N&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; total&lt;N&gt; = est_amount;&lt;/N&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do k=2 to n;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ncomb = comb(n,k);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to ncomb;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=allcomb(i, k, of p&lt;LI&gt;);&lt;/LI&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=allcomb(i, k, of total&lt;LI&gt;);&lt;/LI&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tot = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; length Combinations Flagged $200;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.clear();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Combinations = '';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do j=1 to k;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tot = SUM(tot,total&lt;J&gt;);&lt;/J&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; client_id = p&lt;J&gt;;&lt;/J&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.add();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc = hi.first();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do while(rc = 0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Combinations = CATX(',',Combinations,client_id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc = hi.next();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tot_flag = (ABS(tot) &amp;lt;= 5000);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if tot_flag ne 1 then Flagged = '';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else Flagged = Combinations;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt; end;&lt;/P&gt;&lt;P&gt; keep GroupId Combinations Flagged;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jun 2012 07:16:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91346#M19306</guid>
      <dc:creator>Alpay</dc:creator>
      <dc:date>2012-06-26T07:16:31Z</dc:date>
    </item>
    <item>
      <title>Re: Help in SAS Program automation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91347#M19307</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do you consider to use In_date and Out_date as grouping variable too ?&lt;/P&gt;&lt;P&gt;If you only consider " start &amp;amp; end time and the room number" ,that might be meet a error .&lt;/P&gt;&lt;P&gt;Anyway , Anyhow , that is really not easy for all the combination.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data x;
input client_id $ Est_Amount Max_Play Avg_Play in_date : mmddyy10. out_date : mmddyy10.
Start_Time &amp;amp; time11. End_Time&amp;nbsp; &amp;amp; time12. timeplayed Room_Number ;

format&amp;nbsp; In_Date Out_Date Date9. Start_Time End_Time time8.;
datalines;
P1 33000 20000 5000 3/7/2012 3/7/2012 04:17:00 PM&amp;nbsp; 06:34:00 PM&amp;nbsp; 137 4444
P2 -30000 7000 2000 3/7/2012 3/7/2012 04:31:00 PM&amp;nbsp; 06:16:00 PM&amp;nbsp; 105 4444
P1 -233000 30000 15000 3/7/2012 3/7/2012 06:34:00 PM&amp;nbsp; 07:55:00 PM&amp;nbsp; 81 4444
P3 -50000 50000 50000 3/7/2012 3/7/2012 06:59:00 PM&amp;nbsp; 07:00:00 PM&amp;nbsp; 1 4444
P1 -47000 20000 10000 3/7/2012 3/7/2012 09:05:00 PM&amp;nbsp; 09:48:00 PM&amp;nbsp; 43 6789
P2 42000 25000 10000 3/7/2012 3/7/2012 09:24:00 PM&amp;nbsp; 10:49:00 PM&amp;nbsp;&amp;nbsp; 85 6789
P4 8000 21000 8000 3/7/2012 3/7/2012 09:38:00 PM&amp;nbsp; 10:55:00 PM&amp;nbsp;&amp;nbsp; 77 6789
;
run;
data one;
 set x ;
 if (Room_Number=lag(Room_Number) and lag(End_Time) lt Start_Time) or (Room_Number ne lag(Room_Number)) then group+1;
run;
proc transpose data=one out=temp(drop=_name_) ;
by group;
id client_id;
var Est_Amount;
run; 
data two(keep=group var);
 set temp;
 length var $ 200;
 array x{*} p: ;
&amp;nbsp; n=dim(x); 
do k=2 to n;
 ncomb=comb(n,k);
 do j=1 to ncomb;
&amp;nbsp; call allcomb(j, k, of x{*});
&amp;nbsp; flag=0;sum=0;var=' ';
&amp;nbsp; do i=1 to k;
&amp;nbsp;&amp;nbsp; if missing(x{i}) then flag=1;
&amp;nbsp; end;
&amp;nbsp; if not flag then do;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to k;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sum+x{i};
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if abs(sum) le 5000 then do;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to k;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var=catx(',',var,x{i});
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
 end;
end;
run;
data two(keep=group var _var);
 merge two(in=a) temp;
 by group;
 length _var $ 200;
 array x{*} p: ;
 if a then do;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do j=1 to countw(var,',');
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp=input(scan(var,j,','),best32.);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to dim(x);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if temp eq x{i} and not findw(_var,strip(vname(x{i}))) then _var=catx(',',_var,vname(x{i}));
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
run;




&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 26 Jun 2012 09:54:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Help-in-SAS-Program-automation/m-p/91347#M19307</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-06-26T09:54:49Z</dc:date>
    </item>
  </channel>
</rss>

