Posts

Create your own formats and informats

create new formats and informats, and some typical examples Paper (PDF) Wiki Article

Browse through file system with SAS Base

It often happens that task comes to implement certain SAS program on a machine which internal file system is not available. These files can be useful to list files and folders, and read files, which have access granted to local user used to execute SAS programs (usually sassrv user) In order to browse through file system where SAS is running, the following two SAS programs can be very useful: Listing Files and Folders of the system hosting SAS Read Files and display it in SAS Output as text P.S. Second example is taken from SAS website, but always extremely hard to find.

SAS and Web/REST Service Calls

SAS offers a possibility to communicate with Web Services and REST services using a couple of tools. Most important products of SAS required to properly communicate with Web Services/REST Services are: PROC SOAP PROC HTTP XML Library Engine (xmlv2) The following examples show how are these coupled together: Calling and Parsing the Web Service using SAS Calling and Parsing the REST service using SAS

How to extract filename and extension from the absolute path in SAS

This is very simple problem in SAS, but somewhat nowhere on internet written. You can use scan function to catch last occurrence of string.

How to set special characters in SAS Base code

If you ever end up having a sas variable, which contains special characters in it, and you want to split them into each separate variable, you need to use a ascii number equivalent to required special character,and at x at the end of the string. For example, if the special character is tabulator: In ASCII table, '09'x is a ascii equivalent to tab character.

How to round the number up to 2 digits in Javascript

Sometimes you need to round up the number up to 2 digits. For example, you calculation has to show a result in currency. There are two solutions to use on internet: 1) Use Math.random function. var a=123.4567; Math.random(a*100)/100 However, this is not really good, as for example in case of var a=1.005; Math.random(a*100)/100 results into 1 instead of 1.01. 2) use toFixed(2) However, it is more secure option to use a.toFixed(2), which would return element as fixed 2 decimal value