Transferencia de robots de Windows a Linux#

Puntos clave de la transferencia #

Al transferir un robot de Sherpa Designer en entornos Windows y Linux, se deben considerar varios aspectos importantes. Si un bloque está presente en Sherpa Designer tanto para Windows como para Linux, no se requieren acciones adicionales para su transferencia. Los bloques funcionan en PowerShell, que opera de manera idéntica en ambas plataformas. Todas las clases y funcionalidades implementadas en el robot para Windows se transfieren sin cambios al entorno Linux.

Sin embargo, es importante señalar que los objetos COM de Word y Excel no funcionarán en sistemas similares a Linux. Al realizar la transferencia, es necesario verificar el "Panel de propiedades" de todos los bloques relacionados con Word y Excel, y desmarcar la casilla: . Después de que el usuario desmarque las casillas "Usar COM", los bloques de Word y Excel en el entorno Linux funcionarán correctamente.

Diferencias en las rutas de archivos#

Al trabajar con Linux, es necesario tener en cuenta que las rutas de archivos tienen un formato diferente, utilizando la barra diagonal.

Ejemplos de designaciones de separadores en rutas de archivos:

  • En sistemas similares a Linux se utiliza la barra diagonal: /home/user/documents/file.txt
  • En Windows se utiliza la barra invertida: C:\Users\User\Documents\file.txt

Sin embargo, las rutas absolutas (como C: o D:) no funcionarán. Utilice métodos estándar para determinar el directorio de trabajo actual, como `[Environment]::CurrentDirectory`. Esto le permitirá identificar con precisión dónde se encuentra su código y ayudará a formar correctamente las rutas relativas. Una ruta relativa indica la ubicación del archivo en relación con el directorio de trabajo actual. Por ejemplo, si el directorio actual es:
/home/user, para acceder al archivo file.txt en el directorio documents puede utilizar: documents/file.txt.

Grabación de selectores en navegadores y aplicaciones#

En cuanto a la grabación de selectores, en Yandex Browser/Chromium en el entorno Linux se utiliza el mismo complemento que en Windows. Solo es necesario instalar el complemento siguiendo las instrucciones en la sección Instalación del complemento en Yandex Browser.

Si la aplicación admite la tecnología at-spi (Interfaz de Proveedor de Servicios de Tecnología Asistencial), el robot funcionará con ella directamente a través de selectores, como en el entorno Windows.

Funcionalidad de los robots#

Existen algunas limitaciones relacionadas con los Bloques de Sherpa Designer disponibles en el entorno Linux:

Categoría de Bloques Bloques no disponibles en Linux
Automatización de UI

ClickOnText

CopyToClipboard

PasteFromClipboard

CollectData

SelectOption

DragAndDrop

HighlightElement

ClearCache

ControlCache

GetGridData

Automatización de Navegadores

CopyToClipboardInternet

PasteFromClipboardInternet

HTTP

InternalBrowserRequest

GetYandexLinks

GetGoogleLinks

InternalAsyncBrowserGet

Automatización de SAP

SAPCreateConnection

SAPCloseConnection

SAPConnectConnection

SAPSelectWindow

SAPClick

SAPPressEnter

SAPDoubleClick

SAPSelect

SAPUnSelect

SAPState

SAPCollapse

SAPExpand

SAPGetText

SAPSetText

SAPColumnCount

SAPRowCount

SAPCount

SAPSapEvent

SAPExportTable

SAPImportTable

SAPGetCellValue

SAPSetCellValue

SAPCurrentDate

SAPSelectRange

SAPElementExists

SAPPressF4

SAPHScroll

SAPVScroll

Diálogos

ManLoop

MediaPlayer

Automatización de Excel FindTextExcel
Automatización de Outlook

GetOutlookMailMessages

SendOutlookMailMessage

ReSendOutlookMailMessage

SaveAttachmentsFromOutlookMessage

SaveMailFromOutlookMessage

GetOutlookFolders

MoveOutlookMessage

ExtractEmailFromOutlookMessage

LoadMsgFile

ReplyOutlookMailMessage

ChangePropertiesMailFromOutlookMessage

Portapapeles

GetClipboard

SetClipboard

SetFilesClipboard

Proceso/Servicio

ListServices

StartService

StopService

SetServiceStartupType

GetWindowState

SetWindowState

SetWindowLanguage

SetWindowPosition

AttachApplication

Automatización de Terminal

TerminalConnectSession

TerminalCloseConnection

TerminalGetCursor

TerminalMoveCursor

TerminalGetTextPosition

TerminalGetFieldPosition

TerminalSetTextPosition

TerminalSetFieldPosition

TerminalGetField

TerminalSetField

TerminalGetScreenArea

TerminalSendKeys

TerminalSendControlKey

TerminalWaitTextPosition

TerminalWaitFieldPosition

TerminalGetFieldBetween

TerminalSetFieldBetween

Registro

ReadValueFromRegistry

WriteValueToRegistry

ListitemsFromRegistry

CreatePropertyInRegistry

RemovePropertyInRegistry

CreateHiveInRegistry

RemoveHiveInRegistry

Automatización 1C

1CCreateConnection

1CCloseConnection

1CExecuteQuery

1CExecuteCode

1CCollectData

1CTableCellClick

1CCheckboxControl

RDP

RDPGenerateConnection

RDPCreateConnection

RDPConnectInstance

RDPCloseConnection

RDPDisconnectSession

RDPOperationFile

RDPRunScript

Credenciales de Windows

SetWindowsCredentials

GetWindowsCredentials

DeleteWindowsCredentials

GetCyberArkCredentials

Aprendizaje Automático

RegressionTrain

RegressionPredict

ClassificationTrain

ClassificationPredict

ClusterTrain

ClusterPredict

AnomalydetectionTrain

AnomalydetectionPredict

AssistantGenerator

Algunas funciones, como el modo PiP (imagen en imagen), que permite a los usuarios ver videos u otros materiales visuales en una pequeña ventana que permanece encima de otras aplicaciones o ventanas, no están disponibles en Linux, ya que es una tecnología de Microsoft.

Plantillador en Linux#

En los sistemas Linux, el bloque del Plantillador funciona completamente. Sin embargo, si se requiere modificar el archivo de plantilla, esto solo se puede hacer en un entorno Windows. Esto se debe a que el Plantillador para Linux aún se encuentra en proceso de desarrollo. Actualmente, algunos editores, como Word y herramientas especializadas para diseñadores, utilizan funciones de edición que están temporalmente no disponibles en Linux. Después de realizar cambios en el archivo de plantilla en el entorno Windows, será necesario crear o actualizar un archivo JSON para reflejar estos cambios en el Plantillador para Linux. Después de esto, el archivo JSON se carga en el sistema utilizando comandos o API específicos para su entorno.

Elementos de la página web#

Al trasladar robots, pueden surgir problemas con la ejecución de selectores por imágenes, ya que el robot no encontrará las imágenes.

En Sherpa Designer se utilizan cuatro métodos de reconocimiento de imágenes (campo "Tipo de comparación"):

  • SQDIFF (Diferencia cuadrática) - el método calcula la diferencia cuadrática entre los píxeles de dos imágenes. Cuanto menor sea el valor, mayor será la similitud entre las imágenes;
  • CCORR (Correlación) - el método utiliza la correlación para evaluar la similitud entre las imágenes. Da los mejores resultados cuando las imágenes tienen la misma iluminación y contraste;
  • CCOEFF (Coeficiente de correlación) - el método basado en el coeficiente de correlación mide el grado en que dos imágenes pueden ser comparadas, normalizando los resultados por sus promedios;
  • NATIVE (por defecto) - el método es preestablecido y se utiliza para comparaciones rápidas mediante algoritmos integrados, basados en las características de la plataforma.

Si el método NATIVE no funciona, se recomienda utilizar SQDIFF, ya que en sistemas similares a Linux no existe un mapa de bits de la imagen de la ventana, disponible en Windows.

También es importante que el lugar de grabación de los elementos de control coincida con la resolución de la pantalla y la profundidad de color, de lo contrario, las imágenes pueden escalarse y el robot no podrá encontrarlas.