Todos os produtos
Search
Central de documentação

DataWorks:Exemplos de configuração de parâmetros de agendamento por tipo de nó

Última atualização: Jul 15, 2026

A maioria dos tipos de nó — incluindo nós SQL e nós de sincronização em lote — utiliza o mesmo método para definir e referenciar parâmetros de agendamento. Dois tipos de nó funcionam de maneira diferente: os nós PyODPS obtêm parâmetros por meio de um objeto dicionário em vez de substituição de string, e os nós Shell gerais usam variáveis posicionais em vez de variáveis nomeadas. Este tópico fornece exemplos de configuração para cada tipo de nó.

Nós SQL e nós de sincronização em lote

Nós SQL (como ODPS SQL) e nós de sincronização em lote compartilham o mesmo método para configure parâmetros de agendamento. Esse método também se aplica à maioria dos outros tipos de nó. Este tópico usa um nó ODPS SQL como exemplo para demonstrar como atribuir valores a variáveis integradas e parâmetros personalizados, além de referenciá-los no código.

Nota

Alguns nós podem não oferecer suporte a parâmetros de agendamento. Para verificar se um tipo específico de nó aceita parâmetros de agendamento, consulte a documentação correspondente a esse tipo de nó.

Atribua valores aos parâmetros na área de atribuição de parâmetros e, em seguida, referencie as variáveis integradas var1 e var3, os parâmetros personalizados var2 e var4 e a constante var5 na área de código. Os exemplos a seguir mostram como realizar essas atribuições:

  • Atribua a data de negócios à variável integrada var1: var1=$bizdate

  • Defina o horário agendado na variável integrada var3: var3=$cyctime

  • Use a data de negócios para o parâmetro personalizado var2: var2=${yyyymmdd}

  • Configure o horário agendado no parâmetro personalizado var4: var4=$[yyyymmddhh24:mi:ss]

  • Defina a constante abc para var5: var5=abc

Para obter um horário relativo com base no horário agendado (por exemplo, a hora anterior ou N minutos atrás), aplique cálculos de deslocamento ao parâmetro de horário agendado ($[...]): use N/24 para deslocamentos em horas e N/24/60 para deslocamentos em minutos, onde N representa a quantidade de horas ou minutos a deslocar. Deslocamentos de hora e minuto são suportados apenas para o horário agendado. A data de negócios (${...}) não aceita esses deslocamentos. Os exemplos abaixo utilizam "obter a hora anterior" como cenário:

  • Obtenha a hora anterior ao horário agendado (carimbo de data/hora completo no formato yyyymmddhh24miss): $[yyyymmddhh24miss-1/24]

  • Extraia apenas a hora anterior (formato de 24 horas): $[hh24-1/24]

  • Recupere hora, minuto e segundo da hora anterior: $[hh24miss-1/24]

  • Obtenha a data no formato yyyymmdd referente à hora anterior: $[yyyymmdd-1/24]

  • Consulte a data do dia anterior combinada com a hora anterior: $[yyyymmdd-1-1/24]

  • Calcule o horário agendado subtraído de 15 minutos: $[yyyymmddhh24miss-15/24/60]

Nota

Cálculos de deslocamento de horas e minutos podem resultar em cenários que cruzam dias. Para obter a lista completa de formatos de atribuição suportados e detalhes sobre o tratamento de mudança de dia, consulte Formatos de parâmetros de agendamento suportados.

Nós PyODPS

Para evitar injeção de código, os nós PyODPS não permitem a definição de variáveis usando a sintaxe de substituição de string ${param_name} diretamente no código. Antes de execute o código, obtenha os parâmetros de agendamento da variável global args, que é do tipo dict (objeto dicionário). O método de atribuição de parâmetros segue o mesmo padrão dos demais tipos de nó.

No editor de código de um nó PyODPS, utilize o dicionário args para referenciar parâmetros de agendamento (como args['var1'], args['var2'] e args['var3']) e empregue a função print para exibir os valores dos parâmetros. No painel Scheduling Configuration, localizado no lado direito, atribua valores a esses parâmetros na seção Scheduling Parameters.

Realize a atribuição de valores aos parâmetros na área designada e referencie o parâmetro integrado var1 e os parâmetros personalizados var2 e var3 na área de código. Após adicionar o objeto dicionário, os parâmetros assumem a forma de args['var1'], args['var2'] e args['var3']. Veja abaixo exemplos de atribuição:

  • Defina a data de negócios para o parâmetro integrado var1: var1=$bizdate

  • Utilize a data de negócios no parâmetro personalizado var2: var2=${yyyymmdd}

  • Configure a data de negócios para o parâmetro personalizado var3: var3=$[yyyymmdd]

Exemplo de configuração de nó Shell geral

Variáveis em nós Shell gerais não aceitam nomes personalizados. Elas devem ser nomeadas como $1, $2, $3 e assim por diante (numeradas sequencialmente em ordem crescente). Quando a quantidade de parâmetros ultrapassar 10, adote a sintaxe ${10} para declarar a variável.

Para referenciar o décimo parâmetro e subsequentes em um nó Shell, utilize o formato ${10} (por exemplo, echo ${10}).

Faça a atribuição de valores aos parâmetros na área apropriada e referencie o parâmetro integrado $1 e os parâmetros personalizados $2 e $3 na área de código. Os exemplos a seguir ilustram como proceder:

Nota

Nós Shell gerais suportam apenas atribuição de parâmetros baseada em expressões. Separe múltiplas atribuições de parâmetros com espaços. Os valores correspondem aos parâmetros seguindo a ordem de definição. Por exemplo, como o primeiro parâmetro definido no nó Shell é $1, o primeiro valor na área de atribuição de parâmetros ($bizdate) será atribuído a $1.

  • Associe a data de negócios ao parâmetro integrado $1: $bizdate

  • Defina a data de negócios para o parâmetro personalizado $2: ${yyyymmdd}

  • Configure o horário agendado no parâmetro personalizado $3: $[yyyymmdd]

Para conhecer outros formatos de atribuição suportados para parâmetros de agendamento, consulte Formatos de parâmetros de agendamento suportados. Para visualizar o fluxo completo de configuração e uso de parâmetros de agendamento, acesse Configurar e usar parâmetros de agendamento.

Exemplo de sincronização em lote

Para cenários típicos de uso de parâmetros de agendamento no Data Integration, consulte Usar parâmetros de agendamento em tarefas de sincronização em lote.