Chociaż system skryptów Altium Designer zapewnia środki do tworzenia zaawansowanych, zautomatyzowanych zadań dla Altium Designer, powstałe skrypty muszą być również łatwo dostępne w trakcie procesu projektowego. Na przykład skrypt utworzony do wykonania złożonego zestawu operacji podczas edycji PCB powinien być łatwo dostępny bezpośrednio w PCB Editor, tak aby można go było uruchomić jednym lub dwoma kliknięciami myszy.
Altium Designer wychodzi naprzeciw tej potrzebie, umożliwiając przypisanie skryptu do uruchamiacza procesu, a tym samym do polecenia, które można przypisać do menu, paska narzędzi i skrótu klawiaturowego.
Uruchamianie skryptów
Po otwarciu w edytorze skryptów skrypt można uruchomić za pomocą polecenia edytora Run » Run z menu głównego (skrót: F9). Zostanie uruchomiony bieżący skrypt wskazany przez polecenie Run » Set Project Startup Procedure .
Jeśli polecenie Set Project Startup Procedure nie zostało ustawione, pojawi się okno dialogowe Select Item To Run, prosząc o wybór skryptu i jego procedury do uruchomienia.
Jeśli skrypt zawiera błędy, jego wykonywanie zostanie zatrzymane i można użyć różnych poleceń debugowania, aby rozwiązać problemy i spróbować uruchomić go ponownie.
Polecenie Run wymaga, aby projekt skryptu był otwarty w Altium Designer, co nie jest wygodnym sposobem dostępu do skryptu potrzebnego np. podczas projektowania PCB. Alternatywnie okno dialogowe Select Item To Run (File » Run Script) pozwala przeglądać skrypt na lokalnym dysku twardym lub w podłączonym Workspace albo wybrać skrypt, który jest otwarty w panelu Projects, a następnie uruchomić żądany proces. Skrypt pozostaje załadowany na czas bieżącej sesji.
Uruchamianie skryptu za pomocą uruchamiacza procesu skryptu poprzez okno dialogowe Select Item to Run.
Options and Controls of the Select Item to Run Dialog
- Grid - wyświetla dostępne projekty skryptów (*.PrjScr) oraz powiązane dokumenty źródłowe. Wybierz z listy żądany element skryptu, a następnie kliknij OK , aby uruchomić skrypt.
- Browse - kliknij, aby otworzyć listę rozwijaną, w której możesz wybrać przeglądanie:
- From File - kliknij, aby przeglądać i wybrać żądany element skryptu w standardowym oknie dialogowym Windows Open.
- From Server - kliknij, aby przeglądać i wybrać żądany element skryptu z okna dialogowego Choose item (iteracja panelu Explorer panel).
- Copy script parameters - kliknij prawym przyciskiem myszy na żądanym elemencie skryptu, aby przechwycić poprawne parametry. Spowoduje to skopiowanie do schowka pełnej ścieżki, nazwy procesu oraz procedury.
Jeśli w skrypcie występują błędy, po kliknięciu OK w oknie dialogowym Select Item To Run otworzy się okno błędu informujące o ich obecności. Okno dialogowe poda informacje o błędzie, a źródłowy dokument skryptu zostanie otwarty z podświetloną problematyczną linią. Zamknij to okno, klikając przycisk OK, i zatrzymaj system skryptów, wybierając polecenie Run » Stop z menu głównego (skrót: Ctrl+F3).
Okno błędu wskaże tylko pierwszy napotkany błąd skryptu. Mogą istnieć kolejne, które zostaną wykryte przy następnych próbach uruchomienia skryptu.
Bardziej odpowiednią metodą dostępu do często używanego skryptu jest zainstalowanie projektu jako Global Project na stronie Scripting System – Global Projects page w oknie dialogowym Preferences. W takim przypadku projekt jest automatycznie ładowany przy uruchamianiu Altium Designer i może być wykonywany w dowolnym momencie za pomocą polecenia File » Run Script.

Najlepszym sposobem dostępu do funkcjonalności skryptu jest jednak jego integracja z GUI Altium Designer jako polecenie menu lub paska narzędzi. Zwykle jest to proces dwuetapowy: zaimplementowanie skryptu jako polecenia (z opcjonalnym skrótem), a następnie przypisanie polecenia do menu (statycznego lub kontekstowego) albo do paska narzędzi.
Skrypt jako polecenie
Skrypt można zaimplementować jako polecenie aplikacji, wykorzystując wbudowane procesy serwera Altium Designer, a dokładniej proces ScriptingSystem:RunScript.
Polecenie reprezentuje wykonywaną akcję i jest obsługiwane przez łańcuch procesu za pośrednictwem spakowanego uruchamiacza procesu. W przypadku procesu ScriptingSystem:RunScript obejmuje on parametry wskazujące konkretny plik projektu skryptu, składowy plik skryptu (*.pas) oraz proces w tym skrypcie. Odpowiednio zestawione elementy tworzą łańcuch polecenia.
Zaletą tego podejścia jest to, że uruchamianie skryptu jako procesu eliminuje potrzebę bezpośredniego otwierania skryptu lub posiadania go załadowanego jako Global Project. Drugą, istotniejszą zaletą metody procesowej uruchamiania skryptu jest to, że można ją zaimplementować jako łatwo dostępne polecenie Altium Designer. Realizuje się to poprzez dostosowanie systemu menu Altium Designer, gdzie skrypt można przypisać do polecenia dla wskazanego serwera – czyli podaplikacji, takiej jak system plików lub edytor dokumentu projektowego.
Tworzenie polecenia
Aby przypisać skrypt HelloWorld jako polecenie dla edytora PCB, na przykład, najpierw otwórz dokument PCB (a więc i edytor) i wybierz View » Tools » Customize z menu głównego, aby otworzyć okno Customizing PCB Editor dialog. Do tego okna można też przejść, klikając prawym przyciskiem myszy na pasku menu lub pasku narzędzi i wybierając Customize z menu rozwijanego, albo dwukrotnie klikając w pustym obszarze (z dala od poleceń) paska menu lub paska narzędzi.

Aby utworzyć nowe polecenie, kliknij przycisk New w oknie dialogowym, aby otworzyć okno Edit Command, w którym można podać proces serwera i szczegóły ścieżki skryptu – upewnij się, że kategoria [Scripts] nie jest wybrana podczas tworzenia polecenia ze skryptu.

Wpisy Action w oknie dialogowym mają postać:
Process: ScriptingSystem:RunScript
Parameters: ProjectName|ProcName>Process
W zależności od ścieżki źródłowej do skryptu, łańcuch Parameters będzie podobny do:
ProjectName=C:\Users\Public\Documents\Altium\Delphiscript Scripts\General\HelloWorld.PRJSCR|ProcName=HelloWorld.pas>HelloWorld
W przypadku projektu skryptu hostowanego w Workspace, ścieżka, a zatem wpis parametrów polecenia, musi wskazywać właściwą lokalizację w Workspace – opartą na odwołaniu GUID skryptu w Workspace. Dlatego to łącze referencyjne musi zostać pozyskane before przed próbą utworzenia nowego wpisu polecenia skryptu. Aby przechwycić poprawne parametry dla skryptu zainstalowanego z Workspace, otwórz okno dialogowe Select Item To Run (File » Run Script), kliknij prawym przyciskiem myszy na żądanej procedurze w skrypcie i wybierz polecenie Copy script parameters z menu kontekstowego. Spowoduje to skopiowanie do schowka pełnej ścieżki, nazwy procesu i procedury.

Wybierz wymagany proces/procedurę w projekcie skryptu w Workspace, a następnie skopiuj parametry skryptu.
Okno dialogowe Edit Command udostępnia również pola dla podpisu polecenia, opisu, skrótu oraz powiązanego obrazu bitmapy (BMP/GIF/PNG; 18 x 18 pikseli). Ustawienia te są zapisywane wraz z poleceniem i dotyczą wszystkich miejsc, w których jest ono wstawiane do menu, pasków narzędzi i menu kontekstowych – jak opisano w sekcji Assigning Menu Commands poniżej.
Wymagane parametry można skopiować z rzeczywistego wpisu skryptu w kategorii [Scripts] w oknie dialogowym Customize PCB Editor, jeśli skrypt jest aktualnie załadowany. Aby tymczasowo załadować skrypt, wskaż go i otwórz poprzez polecenie File » Run Script. Po skopiowaniu upewnij się, że wpis Categories nie jest już ustawiony na [Scripts] przed utworzeniem polecenia przyciskiem New .
►
Zobacz przykładowy obraz
Po uzupełnieniu danych i zamknięciu okna edycji (
) skrypt HelloWorld staje się dostępny jako polecenie niestandardowe (w [Custom]) dla PCB Editor.

Pamiętaj, że polecenia są implementowane na zasadzie serwera, więc polecenie niestandardowe utworzone dla PCB Editor (jak powyżej) nie będzie dostępne dla innych funkcji, takich jak Schematic Editor czy Scripting System.
Uruchamianie skryptu przy użyciu procesu RunScriptFile
Skrypt jednostki DelphiScript z Altium Designer (z rozszerzeniem *.pas) można uruchomić przy użyciu procesu RunScriptFile. Uwaga: można używać wyłącznie skryptów jednostek DelphiScript – nie tych skryptów, które mają formularze. W tym przypadku wpisy Action w oknie dialogowym mają postać:
Process: ScriptingSystem:RunScriptFile
Parameters: FileName|ProcName
W zależności od ścieżki źródłowej do pliku skryptu, łańcuch Parameters będzie podobny do:
FileName=C:\Users\Public\Documents\Altium\Delphiscript Scripts\Processes\ShowNetList.pas|ProcName=RunNetList
Uruchamianie skryptu przy użyciu procesu RunScriptText
Ten proces może służyć do wykonania serii poleceń w bloku Begin End;. W tym przypadku wpisy Action w oknie dialogowym mają postać:
Process: ScriptingSystem:RunScriptText
Parameters: Text
Na przykład zewnętrzna aplikacja, taka jak Microsoft Notepad, może zostać uruchomiona z Altium Designer poprzez sterowanie programowe. W takim przypadku wpisy procesu polecenia i parametrów będą następujące:
Process: ScriptingSystem:RunScriptText
Parameters: Text=Begin RunApplication('notepad.exe'); End;
Proces programowy w tym przypadku, ScriptingSystem:RunScriptText, dosłownie uruchamia sekwencję instrukcji skryptu, zamiast otwierać i uruchamiać konkretny plik skryptu, jak opisano powyżej.

Alternatywnym podejściem jest utworzenie skryptu z kilkoma równoważnymi liniami kodu, a następnie utworzenie konwencjonalnego wpisu polecenia ScriptingSystem:RunScript.
Procedure RunNotepad;
Begin
RunApplication('notepad.exe');
End;
Uwaga: w obu podejściach do implementacji zewnętrznego polecenia Notepad wystarczy wpisać 'notepad.exe' jako parametr dla RunApplication, zamiast podawać pełną ścieżkę i nazwę pliku aplikacji. Aplikacje Windows, takie jak Kalkulator i Notatnik, mają swoje ścieżki już określone przez system operacyjny.
Aby uruchomić z Altium Designer aplikację, która nie ma wbudowanej ścieżki Windows, należy podać pełną ścieżkę i nazwę pliku aplikacji (w pojedynczych cudzysłowach, aby uwzględnić ewentualne spacje w ścieżce). Na przykład, aby uruchomić drugą kopię Altium Designer, proces RunApplication i parametry będą następujące:
RunApplication('C:\Program Files\Altium\xx\X2.EXE') – gdzie xx oznacza nazwę folderu wersji Altium Designer.
Polecenia można edytować, duplikować i usuwać bezpośrednio z okna dostosowywania (w tym przypadku z okna Customizing PCB Editor), używając przycisków znajdujących się na dole okna dialogowego.
Przypisywanie poleceń menu
Gdy skrypt zostanie zaimplementowany jako niestandardowe polecenie serwera za pomocą funkcji Customizing w Altium Designer (View » Toolbars » Customize), jak opisano powyżej, można go przypisać do interfejsu GUI serwera prostą metodą „przeciągnij i upuść”.
► Zobacz także Dostosowywanie przestrzeni projektowej
Paski narzędzi
Aby przypisać niestandardowe polecenie np. do menu głównego edytora PCB lub do menu paska narzędzi, otwórz okno Customizing PCB Editor, znajdź polecenie niestandardowe i przeciągnij je w docelowe miejsce w menu. Zwróć uwagę, że dokument PCB musi być otwarty, aby uzyskać dostęp do menu edytora PCB. Po zamknięciu okna dostosowywania nowe polecenie menu będzie dostępne w edytorze PCB w dowolnym momencie.

Niestandardowe polecenie można przeciągnąć do wymaganego miejsca w menu.
Polecenie można również dodać, używając opcji
Insert Link option z menu dostępnego po kliknięciu prawym przyciskiem myszy.
Ponieważ w tym przykładzie nowe niestandardowe polecenie zostało przypisane do PCB Active Bar, jest ono widoczne w kategorii poleceń PCB Active Bar w oknie Customizing PCB Editor.

Po przypisaniu do menu niestandardowe polecenie skryptu pojawi się w kategorii tego menu w oknie dostosowywania.
Aby usunąć polecenie z menu, otwórz okno dostosowywania, a następnie przeciągnij ikonę polecenia z menu z powrotem do okna dialogowego.

Usuwanie polecenia przypisanego do paska narzędzi.
W trybie dostosowywania polecenia przypisane do menu można także edytować i usuwać, klikając prawym przyciskiem myszy bezpośrednio na poleceniu w menu.
Menu
Niestandardowe polecenie można przypisać do menu na dowolnym poziomie zagnieżdżenia, stosując ten sam proces „przeciągnij i upuść” opisany powyżej.
Gdy serwer jest w trybie dostosowywania, menu pozostają aktywne i reagują na wskaźnik myszy, rozwijając się i zwijając odpowiednio. Aby umieścić polecenie np. w menu Reports edytora PCB, przeciągnij polecenie do menu i w dół listy, gdzie można je upuścić w odpowiednim miejscu. Po zamknięciu okna dostosowywania nowe polecenie menu – tutaj Notepad – będzie dostępne z poziomu menu Reports .

Aktywne menu podczas dostosowywania umożliwia przeciągnięcie niestandardowego polecenia do menu rozwijanego.
Menu podręczne
Polecenie można przypisać do menu podręcznego wywoływanego prawym przyciskiem myszy w taki sam sposób jak opisano powyżej, bez ograniczeń dotyczących głębokości podmenu.
W tym przykładzie polecenie jest przeciągane wzdłuż ścieżki menu PCB Popups » Right Mouse Click Free Space i upuszczane w podmenu, jak pokazano poniżej. Po przypisaniu niestandardowe polecenie skryptu Notepad staje się dostępne w edytorze PCB po kliknięciu prawym przyciskiem myszy w wolnej przestrzeni.

Niestandardowe polecenie przypisane do podmenu wywoływanego prawym przyciskiem myszy
Bezpośrednie przypisanie skryptu
Alternatywnie, zamiast tworzyć z skryptu wielokrotnego użytku niestandardowe polecenie i następnie przypisywać je do menu, skrypt można zastosować bezpośrednio do menu jako szybkie, jednorazowe rozwiązanie.
Pozwala to pominąć etap tworzenia niestandardowego polecenia poprzez bezpośrednie przypisanie wczytanego skryptu do menu. Bez istnienia odpowiadającego mu niestandardowego polecenia, które można zastosować jako w pełni skonfigurowane polecenie w wielu menu, ta metoda bezpośrednia jest pojedynczym rozwiązaniem zapewniającym dostęp do skryptu z menu. W związku z tym różne ustawienia polecenia, takie jak Caption, Description, Image i Shortcuts, dotyczą wyłącznie przypisanej instancji.
Aby przypisać skrypt bezpośrednio do menu, wczytaj projekt skryptu, otwórz okno Customizing serwera (View » Toolbars » Customize), wybierz [Scripts] na liście Categories, znajdź żądany skrypt i przeciągnij go na pozycję w menu. Kliknij
, aby zamknąć okno Edit Command.

Skrypt, a nie polecenie, można również przypisać bezpośrednio do menu.
Podobnie jak w przypadku wszystkich umieszczeń w menu, jeśli nowa pozycja menu nadal ma ustawienia domyślne (nazwa podpisu/caption, skrót itp.), można je skorygować, klikając prawym przyciskiem myszy wpis menu i wybierając Edit z podmenu. Otworzy to okno Edit Command, w którym można wprowadzić odpowiednie ustawienia.

W trybie Customizing kliknij prawym przyciskiem myszy menu, aby uzyskać dostęp do jego parametrów.
Po skonfigurowaniu nowe menu będzie dostępne podczas projektowania bez potrzeby jawnego wczytywania projektu skryptu lub instalowania go jako Global Project.

Zwróć uwagę, że takie zastosowanie skryptu do menu automatycznie tworzy wymagane polecenie. Nie jest to jednak ponownie przypisywalne, niestandardowe, w pełni skonfigurowane polecenie, jak w metodach opisanych powyżej, lecz polecenie utworzone dla tego bezpośredniego wpisu menu.
Można to zaobserwować we wpisie kategorii odpowiadającego menu w oknie Customizing . Dla powyższego przykładu indywidualnie skonfigurowane polecenie jest widoczne w kategorii Reports w oknie Customizing PCB Editor.

Przy bezpośrednim zastosowaniu skryptu do menu odpowiadające polecenie jest tworzone wyłącznie dla tego wpisu menu.