Chạy script

 

Trong khi hệ thống Scripting của Altium Designer cung cấp phương tiện để tạo ra các tác vụ tự động hóa tinh vi cho Altium Designer, các script tạo ra cũng cần phải dễ dàng truy cập trong quá trình thiết kế. Ví dụ, một script được tạo để thực hiện một tập hợp thao tác phức tạp khi chỉnh sửa PCB nên sẵn có ngay trong chính PCB Editor, nơi nó có thể được thực thi chỉ với một hoặc hai lần nhấp chuột.

Altium Designer đáp ứng nhu cầu này bằng cách cho phép gán một script vào bộ khởi chạy tiến trình, từ đó trở thành một lệnh có thể gán cho Menu, Toolbar và Shortcut.

Thực thi Script

Khi được mở trong trình soạn thảo script, một script có thể được thực thi bằng lệnh Run » Run của trình soạn thảo từ menu chính (phím tắt: F9). Script hiện tại được tham chiếu bởi lệnh Run » Set Project Startup Procedure sẽ được chạy.

Nếu lệnh Set Project Startup Procedure chưa được thiết lập, hộp thoại Select Item To Run sẽ xuất hiện để yêu cầu bạn chọn script nào và thủ tục nào trong đó sẽ được thực thi.

Nếu script có lỗi, script sẽ bị dừng và bạn có thể dùng nhiều lệnh gỡ lỗi khác nhau để khắc phục lỗi rồi thử chạy lại.

Lệnh Run yêu cầu project script phải đang mở trong Altium Designer, điều này không thuận tiện khi cần truy cập một script trong quá trình thiết kế PCB chẳng hạn. Ngoài ra, hộp thoại Select Item To Run (File » Run Script) cho phép bạn duyệt đến một script trên ổ cứng cục bộ hoặc một Workspace đã kết nối hoặc chọn một script đang mở trong panel Projects rồi chạy tiến trình mong muốn. Script sẽ vẫn được nạp trong suốt phiên làm việc hiện tại.

Thực thi một script bằng bộ khởi chạy tiến trình script qua hộp thoại Select Item to Run.Thực thi một script bằng bộ khởi chạy tiến trình script qua hộp thoại Select Item to Run.

Nếu có lỗi trong script, sau khi nhấp OK trong hộp thoại Select Item To Run, một hộp thoại báo lỗi sẽ mở ra để thông báo rằng có lỗi hiện diện. Hộp thoại sẽ cung cấp thông tin về lỗi và tài liệu script nguồn sẽ được mở, đồng thời dòng script gây lỗi sẽ được tô sáng. Đóng hộp thoại này bằng cách nhấp nút OK và dừng hệ thống scripting bằng cách chọn lệnh Run » Stop từ menu chính (phím tắt: Ctrl+F3).

Hộp thoại lỗi sẽ chỉ báo lỗi scripting đầu tiên được gặp. Có thể còn các lỗi khác, và chúng sẽ được phát hiện trong các lần thử chạy script tiếp theo.

Một phương pháp phù hợp hơn để truy cập script được dùng thường xuyên là cài đặt project đó thành một Global Project từ trang Scripting System – Global Projects trong hộp thoại Preferences. Trong trường hợp này, project sẽ được tự động nạp khi Altium Designer khởi động và có thể được thực thi bất kỳ lúc nào thông qua lệnh File » Run Script.

Tuy nhiên, cách lý tưởng nhất để truy cập chức năng của script là tích hợp nó vào GUI của Altium Designer dưới dạng lệnh menu hoặc toolbar. Đây thường là quy trình gồm hai bước; triển khai script thành một Command (có thể kèm shortcut), sau đó gán Command đó vào Menu (tĩnh hoặc pop-up) hoặc Toolbar.

Script dưới dạng Command

Một script có thể được triển khai thành lệnh của ứng dụng bằng cách tận dụng các server process tích hợp sẵn của Altium Designer, cụ thể hơn là tiến trình ScriptingSystem:RunScript.

Một command đại diện cho một hành động được thực hiện và được hỗ trợ bởi một chuỗi tiến trình thông qua bộ khởi chạy tiến trình đã đóng gói. Trong trường hợp của tiến trình ScriptingSystem:RunScript, nó bao gồm các tham số để trỏ đến một file project script cụ thể, một file script thành phần (*.pas) và một tiến trình trong script đó. Khi được sắp xếp phù hợp, các thành phần này tạo thành một chuỗi command.

Ưu điểm của cách tiếp cận này là việc chạy script dưới dạng một process giúp tránh phải mở trực tiếp script hoặc nạp nó như một Global Project. Ưu điểm thứ hai và quan trọng hơn của việc dùng phương thức process để chạy script là nó có thể được triển khai như một command dễ truy cập trong Altium Designer. Điều này được thực hiện bằng cách tùy biến hệ thống menu của Altium Designer, nơi một script có thể được gán cho một command của server được chỉ định – tức là một ứng dụng con như hệ thống file hoặc trình soạn thảo tài liệu thiết kế.

Tạo một Command

Ví dụ, để gán script HelloWorld thành một command cho PCB editor, trước tiên hãy mở một tài liệu PCB (và do đó là editor) rồi chọn View » Tools » Customize từ menu chính để mở hộp thoại Customizing PCB Editor. Hộp thoại này cũng có thể được truy cập bằng cách nhấp chuột phải vào thanh menu hoặc toolbar rồi chọn Customize từ menu xổ xuống, hoặc bằng cách nhấp đúp vào vùng trống (không nằm trên bất kỳ command nào) của thanh menu hoặc toolbar.

Để tạo một command mới, nhấp nút New của hộp thoại để mở hộp thoại Edit Command, nơi có thể nhập thông tin chi tiết về server process và đường dẫn script – hãy đảm bảo rằng category [Scripts] không được chọn khi tạo command từ script.

Các mục Action trong hộp thoại có dạng:

Process: ScriptingSystem:RunScript
Parameters: ProjectName|ProcName>Process

Tùy theo đường dẫn nguồn đến script, chuỗi Parameters sẽ tương tự như:

ProjectName=C:\Users\Public\Documents\Altium\Delphiscript Scripts\General\HelloWorld.PRJSCR|ProcName=HelloWorld.pas>HelloWorld

Đối với project script được lưu trữ trong một Workspace, đường dẫn, và do đó mục tham số của command, phải trỏ tới đúng vị trí trong Workspace – vị trí này dựa trên tham chiếu GUID của Workspace Script. Vì vậy, liên kết tham chiếu này phải được lấy before khi cố gắng tạo mục command script mới. Để lấy đúng tham số cho một script được cài từ Workspace, hãy mở hộp thoại Select Item To Run (File » Run Script), nhấp chuột phải vào procedure mong muốn trong script và chọn lệnh Copy script parameters từ menu ngữ cảnh. Thao tác này sẽ sao chép toàn bộ đường dẫn, tên tiến trình và procedure vào clipboard.

Chọn process/procedure cần thiết trong project script của Workspace, sau đó sao chép các tham số của script.
Chọn process/procedure cần thiết trong project script của Workspace, sau đó sao chép các tham số của script.

Hộp thoại Edit Command cũng cung cấp các trường nhập cho caption của command, mô tả, shortcut và ảnh bitmap liên quan (BMP/GIF/PNG; 18 x 18 pixel). Các thiết lập này được lưu cùng với command và áp dụng cho mọi nơi command được chèn vào menu, toolbar và pop-up – như được mô tả trong phần Assigning Menu Commands bên dưới.

Các tham số cần thiết có thể được sao chép từ chính mục script dưới category [Scripts] trong hộp thoại Customize PCB Editor nếu script hiện đang được nạp. Để tạm thời nạp script, hãy duyệt đến và mở nó qua lệnh File » Run Script. Sau khi sao chép, hãy đảm bảo mục Categories không còn được đặt là [Scripts] trước khi tạo command bằng nút New .

Xem hình minh họa ví dụ

Khi đã hoàn tất các chi tiết và đóng hộp thoại chỉnh sửa (), script HelloWorld sẽ khả dụng dưới dạng một command tùy chỉnh (trong [Custom]) cho PCB Editor.

Lưu ý rằng command được triển khai theo từng server, vì vậy command tùy chỉnh đã được tạo cho PCB Editor (như trên) sẽ không khả dụng cho các chức năng khác, chẳng hạn Schematic Editor hoặc Scripting System.

Thực thi Script bằng tiến trình RunScriptFile

Một unit script DelphiScript từ Altium Designer (với phần mở rộng *.pas) có thể được thực thi bằng tiến trình RunScriptFile. Lưu ý, chỉ có unit script DelphiScript mới dùng được – không áp dụng cho các script có form. Trong trường hợp này, các mục Action trong hộp thoại có dạng:

Process: ScriptingSystem:RunScriptFile
Parameters: FileName|ProcName

Tùy theo đường dẫn nguồn đến file script, chuỗi Parameters sẽ tương tự như:

FileName=C:\Users\Public\Documents\Altium\Delphiscript Scripts\Processes\ShowNetList.pas|ProcName=RunNetList

Thực thi Script bằng tiến trình RunScriptText

Tiến trình này có thể được dùng để thực thi một chuỗi lệnh trong khối Begin End;. Trong trường hợp này, các mục Action trong hộp thoại có dạng:

Process: ScriptingSystem:RunScriptText
Parameters: Text

Ví dụ, một ứng dụng bên ngoài như Microsoft Notepad có thể được khởi chạy từ Altium Designer thông qua điều khiển phần mềm. Trong trường hợp này, các mục command process và parameters sẽ là:

Process: ScriptingSystem:RunScriptText
Parameters: Text=Begin RunApplication('notepad.exe'); End;

Tiến trình phần mềm trong trường hợp này, ScriptingSystem:RunScriptText, thực chất đang chạy một chuỗi câu lệnh script, thay vì mở và chạy một file script cụ thể như mô tả ở trên.

Cách tiếp cận thay thế là tạo một script với vài dòng mã tương đương, rồi tạo một mục command ScriptingSystem:RunScript thông thường.

Procedure RunNotepad;
Begin
    RunApplication('notepad.exe');
End;

Lưu ý rằng với cả hai cách triển khai command Notepad bên ngoài, chỉ cần nhập 'notepad.exe' làm tham số cho RunApplication, thay vì phải chỉ định đầy đủ đường dẫn và tên file của ứng dụng. Các ứng dụng Windows như Calculator và Notepad đã có đường dẫn được hệ điều hành chỉ định sẵn.

Để khởi chạy từ Altium Designer một ứng dụng không có sẵn đường dẫn trong Windows, cần chỉ định đầy đủ đường dẫn và tên file của ứng dụng (đặt trong dấu nháy đơn, để xử lý mọi khoảng trắng trong đường dẫn). Ví dụ, để khởi chạy một bản sao thứ hai của Altium Designer, process RunApplication và các tham số sẽ là:

RunApplication('C:\Program Files\Altium\xx\X2.EXE') – trong đó xx đại diện cho tên thư mục phiên bản Altium Designer.

Các lệnh có thể được chỉnh sửa, sao chép và xóa trực tiếp từ hộp thoại tùy chỉnh (trong trường hợp này là hộp thoại Customizing PCB Editor) bằng các nút ở cuối hộp thoại.

Gán Lệnh cho Menu

Với một script được triển khai như một lệnh máy chủ tùy chỉnh thông qua chức năng Customizing của Altium Designer (View » Toolbars » Customize) như đã trình bày ở trên, lệnh đó có thể được gán vào GUI của máy chủ bằng thao tác kéo và thả đơn giản.

► Xem thêm Tùy chỉnh Design Space

Thanh công cụ

Ví dụ, để gán một lệnh tùy chỉnh vào menu chính của trình soạn thảo PCB hoặc menu Toolbar, hãy mở hộp thoại Customizing PCB Editor, tìm lệnh tùy chỉnh và kéo nó đến vị trí menu mong muốn. Lưu ý rằng cần phải mở một tài liệu PCB để có thể truy cập các menu của trình soạn thảo PCB. Khi đóng hộp thoại tùy chỉnh, lệnh menu mới có thể được truy cập bất cứ lúc nào trong trình soạn thảo PCB.

Một lệnh tùy chỉnh có thể được kéo đến vị trí menu cần thiết.
Một lệnh tùy chỉnh có thể được kéo đến vị trí menu cần thiết.

Một lệnh cũng có thể được thêm bằng tùy chọn Insert Link option từ các tùy chọn khi nhấp chuột phải trên menu.

Vì trong ví dụ này lệnh tùy chỉnh mới đã được gán vào PCB Active Bar, nên nó có thể được nhìn thấy dưới danh mục lệnh PCB Active Bar trong hộp thoại Customizing PCB Editor.

Khi được gán vào một menu, lệnh script tùy chỉnh sẽ xuất hiện dưới danh mục của menu đó trong hộp thoại tùy chỉnh.
Khi được gán vào một menu, lệnh script tùy chỉnh sẽ xuất hiện dưới danh mục của menu đó trong hộp thoại tùy chỉnh.

Để xóa một lệnh khỏi menu, hãy mở hộp thoại tùy chỉnh rồi kéo biểu tượng lệnh trên menu trở lại vào hộp thoại.

Xóa một lệnh đã được gán cho Toolbar.
Xóa một lệnh đã được gán cho Toolbar.

Khi ở chế độ tùy chỉnh, các lệnh đã gán cho menu cũng có thể được chỉnh sửa và xóa bằng cách nhấp chuột phải trực tiếp vào chính lệnh menu đó.

Menu

Một lệnh tùy chỉnh có thể được gán vào menu, ở bất kỳ cấp độ menu nào, bằng cùng quy trình kéo và thả như mô tả ở trên.

Khi máy chủ ở chế độ tùy chỉnh, các menu vẫn phản hồi với con trỏ chuột và sẽ mở rộng hoặc thu gọn tương ứng. Ví dụ, để đặt một lệnh vào menu Reports của trình soạn thảo PCB, hãy kéo lệnh vào menu và xuống danh sách đến nơi có thể thả vào vị trí phù hợp. Khi đóng hộp thoại tùy chỉnh, lệnh menu mới – ở đây là Notepad – có thể được truy cập từ bên trong menu Reports .

Các menu đang hoạt động trong quá trình tùy chỉnh cho phép kéo một lệnh tùy chỉnh vào menu thả xuống.
Các menu đang hoạt động trong quá trình tùy chỉnh cho phép kéo một lệnh tùy chỉnh vào menu thả xuống.

Menu bật lên

Một lệnh có thể được gán vào menu bật lên khi nhấp chuột phải theo cùng cách như mô tả ở trên, không bị giới hạn bởi độ sâu của menu con.

Trong ví dụ này, lệnh được kéo qua đường dẫn menu PCB Popups » Right Mouse Click Free Space và được thả vào menu con như minh họa bên dưới. Sau khi được gán, lệnh script Notepad tùy chỉnh sẽ khả dụng trong trình soạn thảo PCB khi nhấp chuột phải vào vùng trống.

Một lệnh tùy chỉnh được gán vào menu con khi nhấp chuột phải
Một lệnh tùy chỉnh được gán vào menu con khi nhấp chuột phải

Gán Script Trực tiếp

Thay vì tạo một lệnh tùy chỉnh có thể tái sử dụng từ script rồi gán nó vào menu, script cũng có thể được áp trực tiếp vào menu như một cách nhanh chóng, dùng một lần.

Cách này bỏ qua bước tạo lệnh tùy chỉnh bằng cách gán trực tiếp một script đã nạp vào menu. Do không có một lệnh tùy chỉnh tương ứng, vốn có thể được áp dụng như một lệnh được cấu hình đầy đủ cho nhiều menu, nên phương pháp trực tiếp này là một giải pháp riêng lẻ để truy cập script từ menu. Vì vậy, các thiết lập khác nhau của lệnh, chẳng hạn như Caption, Description, Image và Shortcuts, chỉ áp dụng cho phiên bản đã được gán đó.

Để gán trực tiếp một script vào menu, hãy nạp dự án script, mở hộp thoại Customizing của máy chủ (View » Toolbars » Customize), chọn [Scripts] trong danh sách Categories, tìm script mong muốn và kéo nó đến một vị trí trên menu. Nhấp vào để đóng hộp thoại Edit Command.

Một script, thay vì một lệnh, cũng có thể được gán trực tiếp vào menu.
Một script, thay vì một lệnh, cũng có thể được gán trực tiếp vào menu.

Cũng như với mọi vị trí đặt trên menu, nếu mục menu mới vẫn đang ở các thiết lập mặc định (tên caption, phím tắt, v.v.), các thiết lập này có thể được chỉnh lại bằng cách nhấp chuột phải vào mục menu và chọn Edit từ menu con. Thao tác này sẽ mở hộp thoại Edit Command, nơi có thể nhập các thiết lập phù hợp.

Trong chế độ Customizing, nhấp chuột phải vào menu để truy cập các tham số của nó.
Trong chế độ Customizing, nhấp chuột phải vào menu để truy cập các tham số của nó.

Sau khi được cấu hình, menu mới sẽ khả dụng trong quá trình thiết kế mà không cần phải nạp rõ ràng lại dự án script hoặc cài đặt nó như một Global Project.

Lưu ý rằng cách áp script vào menu này sẽ tự động tạo lệnh cần thiết. Đây không phải là một lệnh tùy chỉnh có thể gán lại, được cấu hình đầy đủ như mô tả trong các phương pháp ở trên, mà là một lệnh được tạo cho chính mục menu trực tiếp đó.

Điều này có thể được quan sát trong mục danh mục menu thực tế trong hộp thoại Customizing . Với ví dụ ở trên, lệnh được cấu hình riêng lẻ đó có thể được thấy trong danh mục Reports trong hộp thoại Customizing PCB Editor.

Khi áp trực tiếp một script vào menu, lệnh tương ứng sẽ chỉ được tạo cho riêng mục menu đó.
Khi áp trực tiếp một script vào menu, lệnh tương ứng sẽ chỉ được tạo cho riêng mục menu đó.

AI-LocalizedBản địa hóa bằng AI
Nếu bạn phát hiện vấn đề, hãy chọn văn bản/hình ảnh và nhấnCtrl + Enterđể gửi phản hồi cho chúng tôi.
Tính khả dụng của tính năng

Các tính năng có sẵn cho bạn phụ thuộc vào giải pháp Altium mà bạn đang sử dụng – Altium Develop, một phiên bản của Altium Agile (Agile Teams hoặc Agile Enterprise), hoặc Altium Designer (đang còn hiệu lực).

Nếu bạn không thấy tính năng được đề cập trong phần mềm của mình, liên hệ Bộ phận Kinh doanh của Altium để tìm hiểu thêm.

Tài liệu cũ

Tài liệu Altium Designer không còn được phân phiên bản. Nếu bạn cần truy cập tài liệu cho các phiên bản cũ hơn của Altium Designer, hãy truy cập mục Tài liệu cũ trên trang Trình cài đặt khác.

Nội dung