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.
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.
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.
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.
It's not always easy to choose between Proc SQL and Data Step programming. In this tips and tricks, we will see the big differences between Proc SQL and Data Step and list the pro's and the con's of both of them.
Indexes are special reference tables that the SAS engine can use to speed up data retrieval. Simply put, an index is a pointer to data in a table. In this tips and tricks we will discuss how you can create and use SAS indexes.
At the era of the big data, its very common to have lot of variables to manipulate in blocks of variables. Arrays, Do loops and variable lists are powerful data manipulation tools that help make code more efficient for repetitive operation.
In this tips and tricks we will have a look to the merge statement of the SAS DataStep in order to combine datasets.
SAS has more than 190 of built-in functions allowing you to perform a variety of programming tasks. It would be a burden to explain them all in an half day, that is the reason why we selected the most useful one in this tips and tricks.
Macro variables are tools that enable you to dynamically modify the text in a SAS program through symbolic substitution. You can assign large or small amounts of text to macro variables, when you reference the variable afterward the text that it contains will substitute the variable name.
Macro programs or Macros are compiled line of codes referred by a name that you can call anywhere in a SAS program using that name. This allows you to create SAS toolbox of code which can be used in different codes, using different parameters, using Conditional processing....