# Trabalhando com Variáveis

Pode-se imaginar uma variável como uma caixa que possui um nome, um tipo e um valor. O nome da variável sempre começa com o símbolo $. Na imagem abaixo, a primeira variável é chamada de Result, seu valor é 1542 e seu tipo de dado é número. Se ao criar uma variável for especificado um tipo de dado, ela funcionará exatamente com esse tipo. A variável Result, portanto, pode armazenar apenas números.

![](https://sherparpa.ru/wp-content/uploads/2024/02/peremennye.png)

O nome da variável é seu identificador único e determina a forma como ela será exibida e utilizada.

No Sherpa RPA, há um painel especial chamado Variáveis, onde o usuário pode criar, renomear e excluir variáveis.

## **Declaração de Variável**

Para usar uma variável, é necessário primeiro criá-la ou, se usarmos a terminologia dos programadores, declarar a variável. Para fazer isso, deve-se digitar o símbolo $ seguido do nome que você deseja dar à sua variável. O nome da variável pode ser qualquer um, mas não deve conter espaços e caracteres especiais.

![](https://sherparpa.ru/wp-content/uploads/2024/02/2024-02-19_16-58-21.png)

No entanto, é desejável que seja descritivo e intuitivo, indicando quais dados essa variável contém. Não use apenas letras isoladas, números ou frases longas e complexas.

As variáveis podem ter nomes em russo e em inglês, mas o nome não pode conter espaços. É possível escolher o tipo de dado para a variável (número, texto, expressão, etc.). Alguns dos tipos são simples (número, lógico, texto), enquanto outros são compostos (dicionário, lista, tabela de dados). Também é possível definir valores iniciais para as variáveis (o valor que a variável assumirá no momento da execução do script).

Em muitas Propriedades de Blocos, os nomes das Variáveis já estão especificados por padrão (por exemplo, a variável $ProcessID na imagem). Você pode usá-los em seus projetos, alterá-los ou inserir suas próprias variáveis.

## **Tipos de Variáveis**

No Designer, há suporte para uma grande variedade de tipos de dados que podem ser armazenados em uma variável:

<table data-header-hidden><thead><tr><th width="173"></th><th></th></tr></thead><tbody><tr><td><strong>Variável</strong></td><td><strong>Descrição</strong></td></tr><tr><td>Texto (Text)</td><td>Armazena strings de texto. Ao definir valores constantes para variáveis de texto, esses valores devem sempre estar entre aspas.</td></tr><tr><td>Número (Number)</td><td>Números podem ser inteiros ou de ponto flutuante. Devem ser escritos sem aspas.</td></tr><tr><td>Tabelas de Dados (DataTable)</td><td>Tabela de dados. Permite tanto carregar os valores necessários de um arquivo selecionado quanto salvar os valores inseridos em um arquivo separado no formato .json.</td></tr><tr><td>Listas (List)</td><td>Pode armazenar um número de strings. É possível obter o valor de uma determinada string pelo seu índice.</td></tr><tr><td>Data e Hora (DateTime)</td><td>Armazena apenas a data ou a data e a hora.</td></tr><tr><td>Dicionários (Dictionary)</td><td>Lista onde cada string representa um nome e um valor atribuído a ele (nome da chave e valor da chave).</td></tr><tr><td>(HashTable)</td><td>Tabela com colunas “Chave” e “Valor”, que podem ser preenchidas manualmente. Além disso, a janela permite tanto carregar os pares chave-valor necessários de um arquivo selecionado quanto salvar os pares chave-valor inseridos em um arquivo separado no formato .json.</td></tr><tr><td>Tipo Lógico (Logical)</td><td>Aceita dois valores (armazena uma das duas constantes) – true e false (verdadeiro/falso).</td></tr><tr><td>Dinheiro (Money)</td><td>Contém um valor numérico.</td></tr><tr><td>String Segura (SecureString)</td><td>Armazena informações confidenciais que devem permanecer em sigilo.</td></tr><tr><td>Objeto (Object)</td><td>Contém não os valores dos dados, mas um ponteiro para eles.</td></tr></tbody></table>

Ao criar uma variável no painel "Variáveis", seu valor inicial pode ser definido em uma janela especial. A interface de edição de alguns tipos de variáveis é diferente; por exemplo, a janela de edição da variável do tipo “Hashtable” contém duas colunas: "Chave" e "Valor".

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfo-_gDln7XECmBiSXhZgOjPguTbG_CCfyEnrqojg4J0R3OPxyJWwfVxd7Rt5IknKATRQHdSK6WFY6l5s6hUsll009MyjqaE0j3k5GxabvfeE1BCkg-6VDvkhEbBMSbz2_T6UQaC9auGpz3qZvwMy6OqIqd?key=540i16yY7iCYriDxUR-qlA" alt=""><figcaption></figcaption></figure>

A interface da janela de edição da variável do tipo "List" contém uma lista de valores.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfQzmPFbnBVlpg-6hGVQli1ha-fztVvkUsZUHSL-A0e4w0nsgB8EKdM198tSKOLVQQl7-Iq6loU9FIxXMAs_5TA4W-R-VUkSiRjCuzJBAH_cHl4bBIPdO4OK01_Ds1yNhq5BnP8qU8YGmaTyB5Z2JgxL0BD?key=540i16yY7iCYriDxUR-qlA" alt=""><figcaption></figcaption></figure>

Ao trabalhar com tipos de dados textuais ou com valores textuais, as constantes devem sempre estar entre aspas. Se você selecionar uma variável nas propriedades e quiser atribuir um valor textual a ela, ele deve estar entre aspas:

![](https://sherparpa.ru/wp-content/uploads/2024/02/2024-02-19_17-16-49.png)

Se um valor numérico for atribuído a uma variável, ele deve ser indicado sem aspas.

Ao escolher um tipo de dado composto para a variável, há a possibilidade de definir imediatamente a estrutura desse tipo de dado. Por exemplo, na janela de edição da variável do tipo "DataTable", é possível definir o número de linhas e colunas, seus cabeçalhos e atribuir valores a eles.

<table data-header-hidden><thead><tr><th width="100"></th><th width="198"></th><th></th></tr></thead><tbody><tr><td><strong>Nº</strong></td><td><strong>Elemento da Interface</strong></td><td><strong>Descrição</strong></td></tr><tr><td>1.</td><td>botão<img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXeE5Q-UxnD-gol_H5iIGtK5M9aRe4SmEHJYlqbMAibZQShmTIWAgueXnnyJZ5IlscPxmhY9KHzl2JIiSB3S_zwZ6MhIcIEVHAd4s3TG-bR01NCno6KAfntxWqsLjkmQSc2SjS5QKSBcu7o2QYPlCxlF_bw?key=540i16yY7iCYriDxUR-qlA" alt=""></td><td>Permite adicionar uma coluna à tabela de dados. Ao clicar no botão, uma janela para inserir o nome da coluna é aberta.</td></tr><tr><td>2.</td><td>botão<img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXdzdGP2bOcy-BzTIyaJtRzSVxM7SORVMa33TUMXtB-Oyar_0nmpkfaYtPfufMt45bD2AoQiY6JXrG7LcpviPPB9YheqwLztmIOhXl-2nHSlYKCwmWMqlDsryTGNoVY3ootT6sofgDjs3iq-RTZdPzDcPc7q?key=540i16yY7iCYriDxUR-qlA" alt=""></td><td>Permite adicionar uma nova linha à tabela de dados.</td></tr><tr><td>3.</td><td>botão <img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfoFAmNVZcZS6ZlxsIbeatCWeT6NJsdEPtIx0fPUcrpOeeWFH9SnNdo9wQa0OZ0iXwGZEekpAv8UX6Z27FCdaWDapZ9Js_TMZSeJJLdY3K2VqzTNQVgrkFcz3T2PKFiLocrVmW54p4ZD_fohVnec8ZoNrB3?key=540i16yY7iCYriDxUR-qlA" alt=""></td><td>Permite excluir a linha selecionada da tabela de dados.</td></tr><tr><td>4.</td><td>botão “Alterar nome e tipo das colunas”</td><td>Permite alterar o nome e o tipo das colunas.</td></tr></tbody></table>

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXeUjTMmMSgoWZORnCZHHJ0wgN0E-V-zxYsjvRsUsACjI_qcyKjiqWoe-0WMRWRUSKxSasXhfYuY1p68xagtNUkMjusuO1OZvGvoT-x57soYNCQ8HIkuovKNYsFSPBkBCNPV7HzK-p9L7yeSdYBaBYBF4kc?key=540i16yY7iCYriDxUR-qlA" alt=""><figcaption></figcaption></figure>

No modo de depuração, ao percorrer os passos do script e parar em um bloco específico, o painel Variáveis exibirá o valor atual das variáveis. Assim, se a variável não tiver sido declarada anteriormente no painel "Variáveis", durante a depuração não será possível ver o valor atual da variável.

Se você deseja usar uma variável definida por padrão, adicione-a ao painel "Variáveis", ou seja, indique explicitamente o uso dessa variável. Atribua um tipo e um valor inicial a cada variável. Este passo não é obrigatório, ou seja, a variável funcionará mesmo sem ser adicionada ao painel "Variáveis".

Existem dois tipos de variáveis:

* Variáveis do sistema, que já existem por padrão ao criar o diagrama;\`\`\`markdown
* Variáveis de usuário que podem ser criadas por conta própria.

Ao criar suas próprias variáveis, é necessário especificar o tipo de dado da nova variável. O Sherpa Designer utiliza tipagem implícita. Isso significa que, se você tentar atribuir a uma variável uma expressão ou constante de outro tipo de dado, isso na maioria dos casos não resultará em erro, e a variável mudará seu tipo de dado automaticamente. No entanto, isso pode levar a uma exibição incorreta do valor atual da variável no painel Variáveis durante a depuração, bem como a erros implícitos no funcionamento dos algoritmos. Portanto, recomendamos sempre declarar e definir explicitamente o tipo de dado correto para as variáveis utilizadas.

Com tipos de dados simples, a plataforma Sherpa realiza o que se chama de conversões implícitas. Por exemplo, se você somar duas variáveis simples, o resultado será um número. Se você adicionar uma variável numérica a uma variável de texto, a plataforma reconhecerá automaticamente que estão sendo somadas variáveis de tipos de dados diferentes e converterá o número em texto. Se você decidir atribuir uma constante de texto a uma variável numérica, isso geralmente resultará não em um erro, mas em uma mudança do tipo de dado.

Como resultado das conversões implícitas, não apenas os valores, mas até mesmo os tipos de variáveis podem mudar durante a execução do script.

## **Uso da variável**

![](https://sherparpa.ru/wp-content/uploads/2024/02/2024-02-19_17-22-00.png)

Se você precisar transferir dados entre diferentes blocos, utilize variáveis, por exemplo, defina uma senha em um Bloco e verifique a correção de sua entrada em outro Bloco. Para isso, primeiro crie uma variável no painel "Variáveis". Após a criação, essa variável poderá ser utilizada nas propriedades de qualquer Bloco neste projeto, incluindo em outros Diagramas.

Assim que a variável for declarada (ou seja, no painel "Variáveis" foram definidos o nome, tipo e valor inicial da variável), você pode atribuir um valor a ela usando o Bloco Assign Variable. Com esse mesmo bloco, você pode atribuir a uma variável o valor de outra variável ou calcular o resultado de uma expressão aritmética, utilizar funções e métodos matemáticos, lógicos, de string e outros.

Se você declarar uma variável e atribuir a ela um valor entre aspas, o **Sherpa Designer** tratará a variável como uma string: $Texto = “Olá”

```
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.sherparpa.ru/pt/sherpa-rpa/sherpa-designer/rabota-v-sherpa-designer/paneli-svoistv-i-peremennykh-i-rabota-s-nimi/panel-peremennye/rabota-s-peremennymi.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
