Uruchamianie procesu gotowego SAS w .NET

Zadanie: uruchomić proces gotowy SAS w ramach własnego programu w C#. Z dokumentacji wynika, że możemy wykorzystać StoredProcessService (patrz plik sas.chm w katalogu z instalacją SAS Integration Technologies*). Mamy dostępne dwie metody: Execute i ExecuteWithResults (która zwraca także wynik działania procesu). Parametrami wywołania są nazwa procesu gotowego w ramach repozytorium oraz oddzielana spacjami lista parametrów procesu z ich wartościami.

Tylko co to jest to repozytorium i jak je znaleźć?
Czytaj dalej

Reklamy

Przeglądanie metadanych SAS używając C#

Do przeglądania metadanych SAS potrzebne będą:

  • dostęp do serwera metadanych SAS
  • posiadanie SAS Integration Technologies (instalują się np.  razem z Enterprise Guide (dalej: EG), ale można też pobrać oddzielnie)
  • jakieś środowisko do pisania kodu w C# (użyłem Visual C# 2008 Express)

Zasady komunikacji z serwerem metadanych opisano w dokumentacji Open Metadata Interface (PDF dla wersji 9.2. np. tu: http://support.sas.com/documentation/cdl/en/omaref/59983/PDF/default/omaref.pdf). Zanim przejdziemy do .NET – jak to wygląda w samym SASie.

Poniższy kod wpisany w EG  pobiera listę dostępnych repozytoriów (przy założeniu, że połączyliśmy się już do serwera metadanych – nie musimy podawać parametrów uwierzytelnienia):

proc metadata
    in='<GetRepositories>
    <Type>Repository</Type>
    </GetRepositories>';
run;

Wystarczy, że podamy odpowiednio przygotowany kod XML na wejściu i otrzymujemy odpowiedź XML z serwera na wyjściu. Przykładowa odpowiedź:

<GetRepositories>
  <Type>Repository</Type>
  <Repositories>
    <Repository Id="A0000001.R0000001" Name="Foundation" Desc="" DefaultNS="SAS"/>
    <Repository Id="A0000001.R0000002" Name="BILineage" Desc="BILineage" DefaultNS="SAS"/>
  </Repositories>
</GetRepositories>

Jak podobny efekt uzyskać we własnej aplikacji na przykładzie C#?
Czytaj dalej