2011-04-19 5 views
10

Mam kod SAS, który tworzy wiele tabel pośrednich do moich obliczeń. Chodzi o to, że nie interesują mnie te stoły po zakończeniu pracy, zależy mi tylko na wynikach finałowych.Powiedz SAS, aby nie dodawał nowo wygenerowanych tabel w przepływie procesu

Ale za każdym razem, gdy uruchamiam ten kod, SAS dodaje wszystkie wygenerowane tabele do mojego procesu, zamieniając go w ogromny bałagan (mówię tutaj o 40+ pośrednich tabelach).

Czy istnieje sposób, aby powiedzieć SAS, aby nie dodawać tabel do przepływu procesu? A może przynajmniej powiedzieć, żeby nie dodawać żadnych tabel? Używam SAS Enterprise Guide 4.1

góry dziękuję

Odpowiedz

7

Pod SAS 9.1.x oraz 9.2.x (dla Windows), jest możliwe ograniczenie wyświetlania z zestawów danych w środowiskach klientów SAS poprzedzając zestawu danych nazwa z "_TO". Tak więc w kodzie i/lub zadaniach można wywoływać wszystkie swoje zdecentralizowane zestawy danych _TO<DataSetName>, i nie będą one zagracały przepływu procesów. Ale nadal tam będą i można się do nich odwoływać w kodzie i zadaniach.

Jeśli to zrobisz i używasz zadań, zwróć uwagę, że może to być trudne do ustalenia, jak używać danych wyjściowych z zadania jako danych wejściowych dla innego, jeśli nie możesz zobaczyć zestawu danych, aby go wybrać . Jeśli masz z tym problemy, skomentuj ten wpis i możemy go rozwiązać.

Zauważ, że ten przedrostek "_TO" jest nieudokumentowaną, "ukrytą" funkcją, która ma być przestarzała w 9.3 - patrz this blog po szczegóły.

+0

Dziękuję. Czytałem już o funkcji _TO Undocumented (na blogu SAS Dummy, świetnym blogu BTW), ale nie wiedziałem, czy ta nieudokumentowana funkcja była używana w dowolnym miejscu. Ale tylko pytanie, kiedy ta "funkcja" zostanie uznana za przestarzałą, nie spowoduje żadnego złamania kodu, prawda? Miało to wpływ tylko na funkcję ukrytą? – cake

+0

"Ukryta funkcja" nie ma nic wspólnego z kodem, tylko ze sposobem działania klientów. Więc żaden kod nie pęknie. – sasfrog

4

Wiem, że to pytanie ma teraz półtora roku, ale jeśli pracujesz z tabelami pośrednimi, które można usunąć po uzyskaniu ostatecznych wyników, SAS EG ma wbudowane makro, którego możesz użyć do usunięcia tych tabel :

%_eg_conditional_dropds([table1], [table2], ... ,[table-n]); 
6

Jeśli ustawisz opcję „Maksymalna liczba zestawów danych wyjściowych, aby dodać do projektu” (na podstawie wyników generalnego) do zera, to nie doda żadnych zestawów danych do projektu, ale nadal będą one dostępne do obejrzenia z widoku Serwer -> Biblioteka (zostaną one dodane do przepływu w miejscu, w którym je wywołałeś).

+1

Niezły. Nigdy nie wiedziałem o tej opcji. Prawdopodobnie powinna to być sprawdzona odpowiedź na pytanie OP. – sasfrog

Powiązane problemy