SAS Tips and Tricks consists of half days/full days of knowledge transfer in SAS programming language and are organized by an motivated SAS Expert who combines theory and demonstration to helps you refreshing your SAS skills, discover news technics and meet other experts.
Organized for employees, sessions are organized on a monthly basis in our business center (near Brussels-North train station) and, to guaranty an optimal quality, the number of participants is limited to 8 persons. Contact us to assist to a session (scheduled or not) or click the register button in the course details, we will recontact you with more informations.
You cannot find a topic you would like to follow or would like to follow the session individually at your best conveniance? Please Contact us in order to see if we could organize a SAS Coaching that suits perfectly your needs.
Log files contains tons of useful information, they help you when you have syntax errors, warnings and notes but you could use your logs in order to monitor your daily processes and identify the potential bottlenecks.
SAS macro language allows you to process dynamically all the files of a directory or all the files of a library . Different technic exist depending on the nature of the files. This tips and tricks discuss the case when your files are datasets present in a single library and discuss the case when we manipulate flat files in a folder structure.
Windows scheduler can be used to execute automatically SAS code at specific moment of the day or at specific days of the month. They execute the same code every time but, thanks to macro, the output result could change thanks to the environment (data, time, user (etc.).)
Gathering job statistics could help you to detect proactively problems in your data by comparing current values with their estimated values. The idea behind is to collect as much as possible information on your daily run processes (number of records, times it take, number of missing (etc.)) and store them in an historical table. If the values of the current run differs with the values of previous run for the same jobs, this could indicate potential problem.
Getting quickly metadata information on your datasets could be useful in some context of conditional execution of SAS programs (e.g.: Don't execute this step if empty dataset). Different methods exists to achieve that: using metadata functions, using Proc contents, or dictionary tables.
A Slowly Changing Dimension (SCD) is a dimension that stores and manages both current and historical data over time in a data warehouse. It is considered and implemented as one of the most critical ETL tasks in tracking the history of dimension records. Different SCD strategies could be implemented and this tips and tricks is focused on SCD1 where records are updated no history is kept and SCD2 where history is kept,
Using a SAS table to control job execution can be useful when lot of jobs have to be scheduled regularly but depending on circumstance some don't have to be scheduled. In normal situation we would have to adapt the job scheduler and this could be time consuming. You could use instead a SAS Dataset or Excel spreadsheet where all the jobs are listed with a flag variable indicating the list of jobs to schedule.
SAS projects can be difficult to evaluate and consultant misunderstood when you are not familiar with SAS terminology. Data Step, Proc Step, Hash Object, Formats, Statements (etc.) if you are lost with this terminology and would like to have a summary, this tips and tricks is made for you !
Transposing your data is a common problem in data manipulation. Very often data are stored in narrow structure for flexibility and storage purpose and have to be transposed in wide structure or vice versa. When Proc transpose can be used to your data, it's quite easy to convert your data. However, it becomes more difficult to do it with Data Step. This tips and tricks shows you how you can transpose your data thanks to Data Step.
This tips and tricks is an introduction of the SAS macro language showing you the powerful capabilities of this languages.