

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Tipos de parâmetros de Job
<a name="build-job-bundle-parameter-types"></a>

Cada entrada na `parameterDefinitions` lista de um modelo de trabalho declara um parâmetro de trabalho. Cada parâmetro tem a `name` e a `type` e pode ter a`default`, a e um `userInterface` bloco com a`groupLabel`, a e `control` a. `description` `label` O tipo determina quais valores o parâmetro aceita, quais campos de restrição ele suporta e quais controles a caixa de diálogo de envio mostra para ele por padrão. Um modelo se refere ao valor como`{{Param.{{Name}}}}`. Os tipos são os seguintes.

Alguns tipos fazem parte da especificação básica do Open Job Description. O restante é adicionado pela `EXPR` extensão, e um modelo que os usa deve ser `EXPR` listado nela`extensions`. Para a definição campo por campo de cada tipo, consulte as [definições dos parâmetros de trabalho do Open Job Description no site](https://github.com/OpenJobDescription/openjd-specifications/wiki/2023-09-Template-Schemas#2-jobparameterdefinition). GitHub 

`INT`  
Um número inteiro, como um número ou uma sequência numérica. Restrições:`allowedValues`,,`minValue`. `maxValue` Controle:`SPIN_BOX`, ou `DROPDOWN_LIST` quando `allowedValues` está definido.

`FLOAT`  
Um número, como um número ou uma sequência numérica. Restrições:`allowedValues`,,`minValue`. `maxValue` Controle:`SPIN_BOX`, ou `DROPDOWN_LIST` quando `allowedValues` está definido. O `decimals` campo define o número de casas decimais editáveis.

`STRING`  
Uma corda. Restrições:`allowedValues`,,`minLength`. `maxLength` Controle:`LINE_EDIT`, ou `DROPDOWN_LIST` quando `allowedValues` está definido. Também aceita`MULTILINE_EDIT`, e `CHECK_BOX` quando `allowedValues` segura um true/false par, como`["true", "false"]`.

`PATH`  
Um caminho de arquivo ou diretório. As regras de mapeamento de caminhos são aplicadas ao valor do trabalhador. Restrições:`allowedValues`,,, `minLength``maxLength`,`objectType`. `dataFlow` Controle:`CHOOSE_INPUT_FILE`,`CHOOSE_OUTPUT_FILE`, ou`CHOOSE_DIRECTORY`, dependendo de `objectType` `dataFlow` e.

`BOOL`(requer`EXPR`)  
`true`ou`false`; os números `1` ou`0`; ou as sequências`true`,,,`yes`,`on`,`1`, `false` `no``off`, `0` em qualquer letra maiúscula. Sem restrições. Controle:`CHECK_BOX`.

`RANGE_EXPR`(requer`EXPR`)  
Uma expressão de intervalo inteiro`"1-100"`, como`"1-100:10"`, ou`"1,3,5-9"`. Restrições:`minLength`,. `maxLength` Controle:`LINE_EDIT`.

`LIST[STRING]`(requer`EXPR`)  
Uma lista de strings. Restrições: `minLength` e `maxLength` para a lista; `item.allowedValues``item.minLength`, e `item.maxLength` para cada item. Controle:`LINE_EDIT_LIST`.

`LIST[PATH]`(requer`EXPR`)  
Uma lista de caminhos. As regras de mapeamento de caminhos são aplicadas a cada valor. Restrições: as restrições de lista e item de`LIST[STRING]`, mais e. `objectType` `dataFlow` Controle:`CHOOSE_INPUT_FILE_LIST`,`CHOOSE_OUTPUT_FILE_LIST`, ou`CHOOSE_DIRECTORY_LIST`, dependendo de `objectType` `dataFlow` e.

`LIST[INT]`, `LIST[FLOAT]` (requer`EXPR`)  
Uma lista de números. Restrições: `minLength` e `maxLength` para a lista; `item.allowedValues``item.minValue`, e `item.maxValue` para cada item. Controle:`SPIN_BOX_LIST`.

`LIST[BOOL]`(requer`EXPR`)  
Uma lista de valores booleanos, cada um aceitando os mesmos `BOOL` valores de. Restrições:`minLength`,. `maxLength` Controle:`CHECK_BOX_LIST`.

`LIST[LIST[INT]]`(requer`EXPR`)  
Uma lista de listas de números inteiros, para entrada estruturada, como uma lista de adjacências. Restrições: restrições aninhadas`item`. Controle:`HIDDEN`; não há controle visual para esse tipo.

Cada tipo também aceita `HIDDEN` como controle, o que mantém o parâmetro fora da caixa de diálogo de envio. `HIDDEN`Defina os valores que um pipeline fornece programaticamente.

Os `LIST[PATH]` tipos `PATH` e contêm dois campos extras. `objectType`é `FILE` ou`DIRECTORY`, e `dataFlow` é`IN`,`OUT`,`INOUT`, ou`NONE`. Os anexos do trabalho leem esses campos para decidir quais caminhos carregar como entradas e quais observar as saídas. Um `PATH` parâmetro também suporta `fileFilters` e `fileFilterDefault` para a caixa de diálogo do arquivo. Para obter mais informações, consulte [Elementos do modelo de trabalho para pacotes de tarefas](build-job-bundle-template.md).

As definições a seguir mostram uma caixa de seleção, um intervalo de quadros, uma lista de nomes de câmeras e uma lista de arquivos de entrada. O modelo lista `EXPR` porque os últimos quatro tipos exigem isso.

```
specificationVersion: 'jobtemplate-2023-09'
extensions:
  - EXPR
parameterDefinitions:
  - name: Samples
    type: INT
    default: 64
    minValue: 1
    maxValue: 4096
  - name: UseGpu
    type: BOOL
    default: false
    userInterface:
      label: Render on GPU
  - name: Frames
    type: RANGE_EXPR
    default: "1-100"
    userInterface:
      label: Frame Range
  - name: Cameras
    type: LIST[STRING]
    default: ["main", "closeup"]
    minLength: 1
    userInterface:
      label: Cameras to Render
  - name: Textures
    type: LIST[PATH]
    objectType: FILE
    dataFlow: IN
    default: []
```

Em um modelo com a `EXPR` extensão, cada parâmetro tem um tipo de expressão correspondente: `int``float`,`string`,`path`,`bool`,`range_expr`, ou`list[{{T}}]`. Um parâmetro `RANGE_EXPR` ou lista pode ser diretamente o parâmetro `range` de uma tarefa, de modo que cada quadro ou item se torne uma tarefa. Para `PATH` e`LIST[PATH]`, `RawParam.{{Name}}` é o valor enviado, como uma string, antes do mapeamento do caminho.

```
steps:
  - name: Render
    parameterSpace:
      taskParameterDefinitions:
        - name: Camera
          type: STRING
          range: "{{Param.Cameras}}"
        - name: Frame
          type: INT
          range: "{{Param.Frames}}"
    script:
      actions:
        onRun:
          command: render
          args:
            - "--camera"
            - "{{Task.Param.Camera}}"
            - "--frame"
            - "{{Task.Param.Frame}}"
            - "--samples"
            - "{{Param.Samples}}"
            - "{{ '--gpu' if Param.UseGpu else null }}"
            - "{{ ['--textures', Param.Textures.join(',')] if len(Param.Textures) > 0 else null }}"
```

Os dois últimos argumentos são expressões. Um `null` resultado não adiciona nenhum argumento e um resultado de lista adiciona cada item como um argumento separado. Para obter mais informações, consulte [Expressões em modelos de trabalho](build-job-bundle-expressions.md).

Para enviar um pacote de trabalhos que usa os tipos de `EXPR` parâmetros, a CLI do Deadline Cloud, a caixa de diálogo `deadline bundle gui-submit` de envio e o monitor do Deadline Cloud devem ser uma versão compatível com a extensão. Clientes mais antigos rejeitam modelos com esses tipos.