Por lo general, refactorización hace referencia al proceso de restructuración y mejora del código de software existente sin modificar su comportamiento.
La refactorización en EcoStruxure Machine Expert proporciona funcionalidades para cambiar el nombre de los objetos y las variables. Permite mostrar todas las ubicaciones de uso de los objetos y variables modificados y cambiarles el nombre a todos a la vez, o únicamente a algunos de ellos. Es posible configurar si se le consultará a la hora de realizar la refactorización y en qué ubicaciones. Puede utilizar de manera explícita el comando .
Si desea más información, consulte también Opciones, Refactorización.
El comando
permite cambiar el nombre de objetos y variables de manera global en todo el proyecto.Se encuentra disponible en el menú contextual al colocar el cursor sobre el nombre de una variable de la declaración o al hacer clic con el botón derecho en uno de los siguientes objetos en un navegador:
Funciones
POU
GVL
Métodos
Propiedades
Dispositivos
Este comando también se encuentra disponible al seleccionar conversiones de unidades y variables en el editor de conversiones de unidades.
El comando no está disponible en modalidad en línea.
Una vez que ha ejecutado el comando
, aparecerá un cuadro de diálogo. En él se muestran las ubicaciones en las que se utiliza el nombre en cuestión: en la parte derecha de la ventana se muestran las distintas ubicaciones, mientras que en la izquierda se muestra un árbol de navegación con el objeto correspondiente marcado.Es posible seleccionar de manera individual los siguientes comandos para cada ubicación:
: rechazar o aceptar cambios individuales en la ventana derecha.
: rechazar o aceptar todos los cambios en el objeto en cuestión.
: rechazar o aceptar todos los cambios del proyecto.
Los cambios aceptados se mostrarán con un fondo amarillo, mientras que los rechazados lo harán con un fondo gris.
El comando
permite declarar variables en una POU y ejecuta una actualización automática en sus diferentes puntos de uso.Se encuentra disponible en el menú contextual o bien en el menú cuadro de diálogo .
al colocar el cursor en un editor de declaraciones. Se abre elTras hacer clic en
para confirmar el cuadro de diálogo , se abrirá el cuadro de diálogo . Este consta, en la parte izquierda, de una estructura de árbol del proyecto. Las POU en las que se utiliza la nueva variable aparecen resaltadas en el árbol. Haga doble clic en una POU para que se abra en la parte derecha una vista detallada del cuadro de diálogo. En esta sección de declaración e implementación de la POU de la parte derecha, las nuevas declaraciones aparecerán resaltadas en amarillo.Antes de decidir qué cambios desea aceptar y en qué ubicación, seleccione la opción adecuada en la lista situada encima de la sección de declaración e implementación de la POU de la parte derecha:
Opción |
Descripción |
---|---|
|
Seleccione esta opción para insertar el texto de marcador de posición estándar |
|
Seleccione esta opción para insertar un valor de inicialización siempre que se detecte la nueva variable en el código de implementación. Introduzca el valor de inicialización en el cuadro de texto situado a la derecha de la opción . |
Para aceptar o rechazar cambios, haga clic con el botón derecho en las ubicaciones modificadas o ejecute los comandos de la parte izquierda o derecha del cuadro de diálogo, tal como se describe en el apartado Proceso de cambio de nombre del presente capítulo.
Ejemplo 1:
Al refactorizar, el bloque fun
recibe una nueva variable de entrada input3
con el valor de inicialización 1. El cambio tiene el siguiente efecto:
Antes de la refactorización:
fun(a + b, 3, TRUE);
fun(input1:= a + b , input2 :=3 , inputx := TRUE);
Después de la refactorización:
fun(a + b, 3, input3:=1, TRUE);
fun(input1:= a + b , input2 :=3 , input3:=_REFACTOR_,inputx := TRUE);
Ejemplo 2:
Al refactorizar, el bloque fun
recibe una nueva variable de entrada input3
con el texto de marcador de posición _REFACTOR_
:
Antes de la refactorización:
inst(input1 := a + b, input2 := 3, inputx := TRUE);
fun(a + b, 3, TRUE);
Después de la refactorización:
inst(input1 := a + b, input2 := 3, input3 := _REFACTOR_, inputx := TRUE);
fun(a + b, 3, input3:=_REFACTOR_, TRUE);
El comando
permite eliminar una variable de entrada o salida de una POU. La variable se elimina automáticamente de los diferentes puntos de uso de la POU.El comando se encuentra disponible en el menú contextual o bien en el menú
al colocar el cursor en el editor de declaraciones sobre el identificador de la variable que se desea eliminar. Se abre un cuadro de diálogo en el que se proporciona información acerca de la eliminación. Al confirmar el mensaje, se abre el cuadro de diálogo .Al aceptar las modificaciones propuestas en el cuadro de diálogo
, las variables de entrada o salida correspondientes se eliminarán automáticamente de los diferentes puntos de uso de la POU en cuestión.
En una POU, la refactorización conlleva la eliminación de la variable de entrada input4
. La variable se elimina automáticamente de los diferentes puntos de uso de la POU en cuestión:
Antes de la eliminación:
inst(input1 := a + b, input2 := 3, input4 := 1, input5 := TRUE);
fun(a + b, 3, 1, TRUE);
Después de la eliminación:
inst(input1 := a + b, input2 := 3, input5 := TRUE);
fun(a + b, 3, TRUE);
El comando
solo tiene efecto en el editor CFC y el editor FBD/LD/IL. Corresponde a los comandos y .El comando
actualiza las conexiones de entrada y salida de la POU en sus diferentes puntos de uso y en función de la declaración de la POU actual.Se encuentra disponible en el menú contextual o bien en el menú
al colocar el cursor sobre el nombre de una POU, en la primera línea de la declaración de la POU o en el editor de dispositivos.El comando VAR_INPUT, VAR_OUTPUT o VAR_IN_OUT.
permite cambiar el orden de las declaraciones de variables en los ámbitosEjemplo:
VAR_INPUT
invar2 : INT;
invar1 : INT;
in : DUT;
bvar : BOOL;
invar3 : INT;
Para cambiar el orden de las declaraciones, haga lo siguiente:
Paso |
Acción |
---|---|
1 |
Haga clic con el botón derecho en la parte de la declaración y ejecute el comando .Resultado: se abre el cuadro de diálogo VAR_INPUT. con una lista de variables |
2 |
Arrastre la entrada invar1 : INT; hasta la posición anterior a la entrada invar2.. Resultado: la declaración invar1 se sitúa en la posición superior. |
3 |
Haga clic en para cerrar el cuadro de diálogo.Resultado: se abre el cuadro de diálogo . Los elementos afectados se marcan de color amarillo. |
4 |
Haga clic en para aceptar el nuevo orden de parámetros del bloque de funciones. Tenga presente que el orden modificado de los parámetros se reflejará también en los usos de llamadas de las POU. |
La refactorización puede ayudarlo en el proceso de cambio de nombre de variables (mediante la función
), tal como se indica en el siguiente ejemplo.Como requisito previo para este ejemplo, deberá haber un bloque de funciones fb_A disponible con una entrada iA.
Paso |
Acción |
Comentario |
---|---|---|
1 |
Ejecute el comando |
Resultado: se abre el cuadro de diálogo . |
2 |
Seleccione la categoría en la parte izquierda. |
– |
3 |
En la sección , seleccione las opciones y . |
– |
4 |
Haga doble clic en el bloque de funciones fb_A. |
– |
5 |
Seleccione una variable en la declaración de fb_A, por ejemplo, iA. |
Otra alternativa consiste en colocar el cursor antes de la variable o en ella. |
6 |
Ejecute el comando |
Otra alternativa consiste en utilizar el método abreviado + .Resultado: se abre el cuadro de diálogo iA. . Se muestra la configuración de la variable |
7 |
Edite el iA por iCounter_A. y cambie |
Resultado: se abre el cuadro de diálogo . Las POU en las que se utiliza la variable aparecen resaltadas en la estructura de árbol. |
8 |
Haga clic en para aplicar el cambio de nombre y cerrar el cuadro de diálogo. |
– |