Subrutinas y funciones

Subrutinas y funciones de VBScript

Esta sección ofrece una visión general del uso de subrutinas y procedimientos en los scripts de VisualBasic de Altum Designer.

Paso de parámetros a procedimientos

Cuando en un script se define una función o subrutina (un procedimiento/método) que puede aceptar parámetros, las variables pueden pasarse a la función o subrutina de dos maneras: por referencia o por valor, utilizando ByRef o ByVal respectivamente.

Para declarar el método con el que se pasan los parámetros, use las palabras clave ByRef o ByVal en la lista de parámetros al definir la función o subrutina en una instrucción Sub o Function. Por ejemplo, el siguiente fragmento de código define una subrutina que acepta dos parámetros. El primero se pasa por valor y el segundo por referencia:

Sub Test (ByVal Param1 As Integer , ByRef B As String)

La diferencia entre los dos métodos es que ByRef pasa una referencia a la variable y permite que la subrutina/función realice cambios en la variable real que se pasa como parámetro. Este es el método predeterminado para pasar parámetros y se utiliza si el método no se declara explícitamente.

ByVal pasa únicamente el valor de la variable. La subrutina o función puede usar este valor, pero la variable original pasada no se modifica.

Los siguientes ejemplos ilustran las diferencias entre los métodos. El procedimiento principal es el siguiente:

Sub Main
  Dim X, Y
  X = 45 : Y = "Number"
  Test X, Y   ' Call to a subprocedure called Test.
  MsgBox X
   MsgBox Y
End Sub

El procedimiento anterior incluye una llamada a un subprocedimiento Test — véase a continuación.

Si la subrutina se define de la siguiente manera:

Sub Test (ByRef A, ByRef B)
  B = B & " = " & A : A = 10*A
End Sub

Entonces las variables X y Y del procedimiento principal son referenciadas directamente por la subrutina. El resultado es que los valores de X y Y son modificados por la subrutina, de modo que después de ejecutar Test; X = 450 e Y = "Number = 45". Este es el comportamiento predeterminado cuando el método no se declara explícitamente.

Sin embargo, si la subrutina se define de la siguiente manera:

Sub Test (ByVal A, ByVal B)
B = B & " = " & A : A = 10*A
End Sub

Entonces, después de ejecutar Test, el procedimiento principal informa; X = 45 e Y = "Number"; es decir, permanecen sin cambios.

Como alternativa, si la subrutina se define de la siguiente manera (métodos mixtos):

Sub Test (ByRef A, ByVal B)
  B = B & " = " & A : A = 10*A
End Sub

Entonces, después de ejecutar Test, X = 450 e Y = "Number", ya que Y se pasó por valor, permanece sin cambios.

Puede anular la configuración de ByRef de una función o subrutina colocando paréntesis alrededor del nombre de una variable en la instrucción de llamada.

Llamar a Test con la siguiente instrucción:

Test (X), Y

...pasaría la variable X por valor, independientemente del método definido para ese parámetro en la definición del procedimiento.

Rutinas de fecha y hora

El lenguaje VBScript admite un conjunto de rutinas de fecha/hora como se describe a continuación:

Date

Day

Hour

IsDate

Minute

Month

Now

Second

Time

Year

 

 

Rutinas de E/S de archivos

El lenguaje VBScript admite el siguiente conjunto de rutinas de E/S de archivos:

Dir

FileLen

FileTimeDate

FileCopy

Kill

Name

RmDir

MkDir

 

Rutinas matemáticas

El lenguaje VBScript admite el siguiente conjunto de rutinas matemáticas:

Abs

Atn

Cos

Exp

Log

Not

Oct

Rnd

Sin

Sqn

Tan

 

Rutinas de cadenas

El lenguaje VBScript admite una variedad de rutinas de cadenas como se describe a continuación:

Asc

Chr

Format

InStr

InStrRev

LCase

Len

Left

Mid

Right

Str

Trim

LTrim

RTrim

UCase

Rutinas de procesos del servidor

Las rutinas de procesos del servidor se utilizan al trabajar con procesos en scripts, especialmente cuando es necesario extraer (obtener) o establecer cadenas para los parámetros del proceso.

Para ejecutar procesos y parámetros en scripts, utilice las siguientes funciones:

AddColorParameter

AddIntegerParameter

AddLongIntParameter

AddSingleParameter

AddWordParameter

GetIntegerParameter

GetStringParameter

ResetParameters

RunProcess

Useful functions

SetCursorBusy

ResetCursor

CheckActiveServer

GetActiveServerName

GetCurrentDocumentFileName

RunApplication

SaveCurrentDocument

 

 

Useful Dialogs

ConfirmNoYes

ConfirmNoYesCancel

ShowError

ShowInfo

ShowWarning

 

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