Created
February 10, 2015 19:22
-
-
Save FriedEgg/b12eaa71be55952b81ea to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$conn = New-Object -ComObject ADODB.Connection | |
#Connect to a remote server using IOM | |
$conn.Open('Provider=sas.IOMProvider.9.3;User ID=user;Password=pass;Data Source="";SAS Machine DNS Name=workspace.mycompany.com;SAS Port=8591;SAS Protocol=2') | |
#Assign a new libref using ADODB | |
$cmd = New-Object -ComObject ADODB.Command | |
$cmd.ActiveConnection = $conn | |
$cmd.CommandType = adCmdText | |
$cmd.CommandText = 'libname foo "/path/to/something"' | |
$cmd.Execute() | |
#SQL data | |
$recordSet = $conn.Execute("select * from foo.something") | |
#Collect the data from recordSet into rows array | |
$recordSet.MoveFirst() | |
$rows = @() | |
do | |
{ | |
$row = New-Object psobject | |
for ($i=0; $i -lt $recordSet.Fields.Count; $i++) | |
{ | |
$row | Add-Member noteproperty ` | |
-name $recordSet.Fields.Item($i).Name ` | |
-value $recordSet.Fields.Item($i).Value; | |
} | |
#yield | |
$rows += $row | |
$recordSet.MoveNext() | |
} | |
until ($recordSet.EOF -eq $true) | |
#create gridview of data executed in recordSet | |
$rows | Out-GridView | |
$recordSet.Close() | |
$conn.Close() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment