Ejecutar scripts

 

Aunque el sistema de Scripting de Altium Designer proporciona los medios para crear tareas automatizadas sofisticadas para Altium Designer, los scripts resultantes también deben ser fácilmente accesibles durante el proceso de diseño. Por ejemplo, un script creado para realizar un conjunto complejo de operaciones mientras se edita una PCB debería estar disponible directamente en el propio PCB Editor, donde pueda ejecutarse con uno o dos clics del ratón.

Altium Designer responde a esta necesidad permitiendo que un script se asigne a un iniciador de proceso y, por lo tanto, a un comando que puede asignarse a un menú, una barra de herramientas y un atajo.

Ejecución de scripts

Cuando se abre en el editor de scripts, un script puede ejecutarse usando el comando Run » Run del editor desde los menús principales (atajo: F9). Se ejecutará el script actual al que hace referencia el comando Run » Set Project Startup Procedure .

Si no se ha configurado el comando Set Project Startup Procedure , aparecerá el cuadro de diálogo Select Item To Run, que le pedirá elegir qué script y qué procedimiento ejecutar.

Si un script tiene errores, el script se detendrá y podrá usar varios comandos de depuración para resolver los errores e intentar ejecutarlo de nuevo.

El comando Run requiere que el proyecto de script esté abierto en Altium Designer, lo cual no es un enfoque conveniente para acceder a un script necesario durante el proceso de diseño de PCB, por ejemplo. Como alternativa, el cuadro de diálogo Select Item To Run (File » Run Script) le permite buscar un script en su disco duro local o en un Workspace conectado o seleccionar un script que esté abierto en el panel Projects y luego ejecutar el proceso deseado. El script permanece cargado durante la sesión actual.

Ejecución de un script usando el iniciador de proceso de scripts a través del cuadro de diálogo Select Item to Run.Ejecución de un script usando el iniciador de proceso de scripts a través del cuadro de diálogo Select Item to Run.

Si hay errores presentes en el script, después de hacer clic en OK en el cuadro de diálogo Select Item To Run se abrirá un cuadro de diálogo de error alertándole de que hay un error presente. El cuadro de diálogo proporcionará información sobre el error y se abrirá el documento fuente del script, destacándose la línea de script que provoca el problema. Cierre este cuadro de diálogo haciendo clic en el botón OK y detenga el sistema de scripting seleccionando el comando Run » Stop desde los menús principales (atajo: Ctrl+F3).

El cuadro de diálogo de error solo señalará el primer error de scripting encontrado. Puede haber más errores, que se descubrirán en intentos posteriores de ejecutar el script.

Un método más adecuado para acceder a un script de uso frecuente es instalar el proyecto como un Global Project desde la página Scripting System – Global Projects del cuadro de diálogo Preferences. En este caso, el proyecto se carga automáticamente cuando se inicia Altium Designer y puede ejecutarse en cualquier momento mediante el comando File » Run Script.

Sin embargo, la forma ideal de acceder a la funcionalidad de un script es integrarla en la GUI de Altium Designer como un comando de menú o barra de herramientas. Normalmente, este es un proceso de dos pasos: implementar un script como un comando (con atajo opcional) y luego asignar el comando a un menú (estático o emergente) o a una barra de herramientas.

Script como comando

Un script puede implementarse como un comando de aplicación aprovechando los procesos de servidor integrados de Altium Designer o, más específicamente, el proceso ScriptingSystem:RunScript.

Un comando representa una acción realizada y es compatible con una cadena de proceso mediante un iniciador de procesos empaquetado. En el caso del proceso ScriptingSystem:RunScript, incluye parámetros para apuntar a un archivo de proyecto de script específico, un archivo de script constituyente (*.pas) y un proceso dentro de ese script. Cuando se organizan adecuadamente, estos elementos constituyen una cadena de comando.

La ventaja de este enfoque es que ejecutar el script como un proceso evita la necesidad de abrir directamente el script o de tenerlo cargado como un Global Project. La segunda ventaja, y la más importante, de usar el método de proceso para ejecutar un script es que puede implementarse como un comando accesible de Altium Designer. Esto se hace personalizando el sistema de menús de Altium Designer, donde un script puede asignarse a un comando para un servidor designado; es decir, una subaplicación como el sistema de archivos o un editor de documentos de diseño.

Crear un comando

Para asignar el script HelloWorld como un comando para el editor de PCB, por ejemplo, abra primero un documento PCB (y, por lo tanto, el editor) y seleccione View » Tools » Customize en el menú principal para abrir el cuadro de diálogo Customizing PCB Editor. También se puede acceder al cuadro de diálogo haciendo clic con el botón derecho en una barra de menú o barra de herramientas y luego eligiendo Customize en el menú desplegable, o haciendo doble clic en un área en blanco (lejos de cualquier comando) de una barra de menú o barra de herramientas.

Para crear un nuevo comando, haga clic en el botón New del cuadro de diálogo para abrir el cuadro de diálogo Edit Command, donde pueden incluirse los detalles del proceso del servidor y de la ruta del script; asegúrese de que la categoría [Scripts] no esté seleccionada al crear un comando a partir de un script.

Las entradas Action del cuadro de diálogo tienen la forma:

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

Según la ruta de origen al script, la cadena Parameters sería similar a:

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

Para un proyecto de script alojado en un Workspace, la ruta y, por lo tanto, la entrada de parámetros del comando deben apuntar a la ubicación correcta del Workspace, la cual se basa en la referencia GUID del Script del Workspace. Por lo tanto, este enlace de referencia debe obtenerse before de intentar crear la nueva entrada de comando de script. Para capturar los parámetros correctos para un script instalado desde el Workspace, abra el cuadro de diálogo Select Item To Run (File » Run Script), haga clic con el botón derecho en el procedimiento deseado dentro del script y elija el comando Copy script parameters en el menú contextual. Esto copiará la ruta completa, el nombre del proceso y el procedimiento al portapapeles.

Seleccione el proceso/procedimiento requerido en el proyecto de script del Workspace y luego copie los parámetros del script.
Seleccione el proceso/procedimiento requerido en el proyecto de script del Workspace y luego copie los parámetros del script.

El cuadro de diálogo Edit Command también proporciona campos de entrada para el título del comando, la descripción, el atajo y la imagen de mapa de bits asociada (BMP/GIF/PNG; 18 x 18 píxeles). Estas configuraciones se guardan con el comando y se aplican a todas las instancias en las que se inserta en menús, barras de herramientas y menús emergentes, como se describe en la sección Assigning Menu Commands a continuación.

Los parámetros requeridos pueden copiarse de la entrada real del script en la categoría [Scripts] del cuadro de diálogo Customize PCB Editor si el script está cargado en ese momento. Para cargar temporalmente el script, búsquelo y ábralo mediante el comando File » Run Script. Una vez copiados, asegúrese de que la entrada Categories ya no esté configurada en [Scripts] antes de crear el comando con el botón New .

Ver imagen de ejemplo

Con los detalles completos y el cuadro de diálogo de edición cerrado (), el script HelloWorld pasa a estar disponible como un comando personalizado (en [Custom]) para el PCB Editor.

Tenga en cuenta que los comandos se implementan por servidor, por lo que un comando personalizado que se haya creado para el PCB Editor (como se indicó anteriormente) no estará disponible para otras funciones, como el Schematic Editor o el Scripting System.

Ejecución de un script usando el proceso RunScriptFile

Un script unit de DelphiScript de Altium Designer (con una extensión *.pas) puede ejecutarse usando el proceso RunScriptFile. Tenga en cuenta que solo pueden utilizarse scripts unit de DelphiScript; no aquellos scripts que tengan formularios. En este caso, las entradas Action del cuadro de diálogo tienen la forma:

Process: ScriptingSystem:RunScriptFile
Parameters: FileName|ProcName

Según la ruta de origen al archivo de script, la cadena Parameters sería similar a:

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

Ejecución de un script usando el proceso RunScriptText

Este proceso puede utilizarse para ejecutar una serie de comandos dentro del bloque Begin End;. En este caso, las entradas Action del cuadro de diálogo tienen la forma:

Process: ScriptingSystem:RunScriptText
Parameters: Text

Por ejemplo, una aplicación externa como Microsoft Notepad puede iniciarse desde Altium Designer mediante control de software. En este caso, las entradas de proceso de comando y parámetros serían:

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

El proceso de software en este caso, ScriptingSystem:RunScriptText, está ejecutando literalmente una secuencia de sentencias de script, en lugar de abrir y ejecutar un archivo de script específico como se describió anteriormente.

El enfoque alternativo consiste en crear un script con unas pocas líneas de código equivalentes y luego crear una entrada de comando convencional ScriptingSystem:RunScript.

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

Tenga en cuenta que, para ambos enfoques de implementación del comando externo de Notepad, basta con introducir 'notepad.exe' como parámetro para RunApplication, en lugar de especificar la ruta completa y el nombre de archivo de la aplicación. Las aplicaciones de Windows, como Calculator y Notepad, ya tienen sus rutas especificadas por el sistema operativo.

Para iniciar desde Altium Designer una aplicación que no tenga una ruta inherente de Windows, es necesario especificar la ruta completa y el nombre de archivo de la aplicación (entre comillas simples, para contemplar cualquier espacio en blanco en la ruta). Así, para iniciar una segunda copia de Altium Designer, por ejemplo, el proceso y los parámetros de RunApplication serían:

RunApplication('C:\Program Files\Altium\xx\X2.EXE') – donde xx representa el nombre de la carpeta de versión de Altium Designer.

Los comandos se pueden editar, duplicar y eliminar directamente desde el cuadro de diálogo de personalización (en este caso, el cuadro de diálogo Customizing PCB Editor) usando los botones situados en la parte inferior del cuadro de diálogo.

Asignación de comandos de menú

Una vez implementado un script como comando de servidor personalizado mediante la función de personalización de Altium Designer (View » Toolbars » Customize), como se detalla anteriormente, puede asignarse a la interfaz gráfica del servidor mediante un sencillo proceso de arrastrar y soltar.

► Véase también Personalización del espacio de diseño

Barras de herramientas

Para asignar un comando personalizado al menú principal del editor PCB o al menú de la barra de herramientas, por ejemplo, abra el cuadro de diálogo Customizing PCB Editor, localice el comando personalizado y arrástrelo hasta la ubicación deseada del menú. Tenga en cuenta que debe haber un documento PCB abierto para poder acceder a los menús del editor PCB. Con el cuadro de diálogo de personalización cerrado, se puede acceder al nuevo comando de menú en cualquier momento en el editor PCB.

Un comando personalizado puede arrastrarse hasta la ubicación requerida del menú.
Un comando personalizado puede arrastrarse hasta la ubicación requerida del menú.

También se puede agregar un comando usando la opción Insert Link option de las opciones del menú contextual al hacer clic con el botón derecho.

Dado que en este ejemplo el nuevo comando personalizado se ha asignado a la Barra Activa de PCB, puede verse bajo la categoría de comando PCB Active Bar en el cuadro de diálogo Customizing PCB Editor.

Cuando se asigna a un menú, el comando de script personalizado aparecerá bajo la categoría de ese menú en el cuadro de diálogo de personalización.
Cuando se asigna a un menú, el comando de script personalizado aparecerá bajo la categoría de ese menú en el cuadro de diálogo de personalización.

Para eliminar un comando de un menú, abra el cuadro de diálogo de personalización y, a continuación, arrastre el icono del comando del menú de vuelta al cuadro de diálogo.

Eliminación de un comando asignado a la barra de herramientas.
Eliminación de un comando asignado a la barra de herramientas.

En el modo de personalización, los comandos asignados a un menú también se pueden editar y eliminar haciendo clic con el botón derecho sobre el propio comando del menú.

Menús

Un comando personalizado puede asignarse a un menú, a cualquier nivel de profundidad del menú, usando el mismo proceso de arrastrar y soltar descrito anteriormente.

Cuando el servidor está en modo de personalización, los menús siguen respondiendo al puntero del ratón y se expanden y contraen según corresponda. Para colocar un comando en el menú Reports del editor PCB, por ejemplo, arrastre el comando al menú y desplácelo por la lista hasta que pueda soltarse en una posición adecuada. Con el cuadro de diálogo de personalización cerrado, se puede acceder al nuevo comando de menú —aquí, Notepad— desde el menú Reports .

Los menús activos durante la personalización permiten arrastrar un comando personalizado a un menú desplegable.
Los menús activos durante la personalización permiten arrastrar un comando personalizado a un menú desplegable.

Menú emergente

Un comando puede asignarse a un menú emergente de clic derecho de la misma manera descrita anteriormente, sin ninguna restricción impuesta por la profundidad del submenú.

En este ejemplo, el comando se arrastra a través de la ruta de menú PCB Popups » Right Mouse Click Free Space y se suelta en el submenú como se muestra a continuación. Una vez asignado, el comando de script personalizado Notepad pasa a estar disponible en el editor PCB al hacer clic con el botón derecho en un espacio libre.

Un comando personalizado asignado a un submenú de clic derecho
Un comando personalizado asignado a un submenú de clic derecho

Asignación directa de scripts

Como alternativa a crear un comando personalizado reutilizable a partir de un script y luego asignarlo a un menú, un script puede aplicarse directamente a un menú como un enfoque rápido y puntual.

Esto omite el paso de creación de un comando personalizado al asignar directamente un script cargado a un menú. Sin la existencia de un comando personalizado coincidente, que puede aplicarse como un comando totalmente configurado a varios menús, este método directo es una solución única para acceder a scripts desde el menú. Como tal, las distintas configuraciones del comando, como su Caption, Description, Image y Shortcuts, solo se aplican a la instancia asignada.

Para asignar un script directamente a un menú, cargue el proyecto de script, abra el cuadro de diálogo Customizing del servidor (View » Toolbars » Customize), seleccione [Scripts] en la lista Categories, localice el script deseado y arrástrelo hasta una posición del menú. Haga clic en para cerrar el cuadro de diálogo Edit Command.

También se puede asignar directamente a un menú un script, en lugar de un comando.
También se puede asignar directamente a un menú un script, en lugar de un comando.

Como sucede con todas las ubicaciones de menú, si el nuevo elemento de menú todavía tiene su configuración predeterminada (nombre del título, acceso directo, etc.), estos parámetros pueden corregirse haciendo clic con el botón derecho en la entrada del menú y seleccionando Edit en el submenú. Esto abre el cuadro de diálogo Edit Command, donde pueden introducirse los ajustes adecuados.

En el modo de personalización, haga clic con el botón derecho en un menú para acceder a sus parámetros.
En el modo de personalización, haga clic con el botón derecho en un menú para acceder a sus parámetros.

Una vez configurado, el nuevo menú estará disponible en tiempo de diseño sin necesidad adicional de cargar explícitamente el proyecto de script ni instalarlo como Global Project.

Tenga en cuenta que este enfoque para aplicar un script a un menú crea automáticamente el comando requerido. No se trata de un comando personalizado reasignable y totalmente configurado como los descritos en los métodos anteriores, sino de un comando creado para esa entrada de menú directa.

Esto puede observarse en la entrada real de la categoría del menú en el cuadro de diálogo Customizing . En el ejemplo anterior, el comando configurado individualmente puede verse en la categoría Reports en el cuadro de diálogo Customizing PCB Editor.

Cuando se aplica directamente un script a un menú, el comando correspondiente se crea solo para esa entrada de menú.
Cuando se aplica directamente un script a un menú, el comando correspondiente se crea solo para esa entrada de menú.

AI-LocalizedLocalizado por IA
Si encuentra un problema, seleccione el texto/imagen y presioneCtrl + Enterpara enviarnos sus comentarios.
Disponibilidad de funciones

Las funciones disponibles dependen de la solución de Altium que tenga: Altium Develop, una edición de Altium Agile (Agile Teams o Agile Enterprise), o Altium Designer (con suscripción activa).

Si no ve alguna función mencionada en su software, contacte con Ventas de Altium para obtener más información.

Documentación heredada

La documentación de Altium Designer ya no está versionada. Si necesita acceder a la documentación de versiones anteriores de Altium Designer, visite la sección Documentación heredada de la página de Otros instaladores.

Contenido