Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


Índice


01. VISÃO GERAL

Disponibilização de api para criar pedido de execução para execução através do Datasul Automação de Tarefas - Novo RPW.


02. CRIAÇÃO DE PEDIDOPOSTPOST

Estado
colourGreen
titlePOST
/api/framework/v1.1/jobScheduler


Possibilita a criação de pedido de execução para execução através do Datasul Automação de Tarefas - Novo RPW. Os pedidos criados podem ser consultados através do Monitor Pedido Execução HTML

Expandir
titleBody
Bloco de código
languageactionscript3
themeRDark
{ 
    "processID": "string",
	"firstExecution": "dateTime",
    "executionParameter": {
        "parametros": [  
	        { 
                "chave": "rpwServer",    
                "valor": "server" 
            },
	        { 
                "chave": "RPW_PROGRAM",  
                "valor": "program" 
            },
			{ 
                "chave": "RPW_PRG_EMS5", 
                "valor": "isEMS5" 
            },
     		{
        		"chave": "RPW_PRG_VERS",
        		"valor": "version"
      	    },
 	        { 
                "chave": "RPW_PED_EXEC_PAI",      
                "valor": "numPedExec" 
            }, 
            { 
                "chave": "RPW_SEND_EMAIL",      
                "valor": "sendEmail" 
            },
	        {
	        	"parametros_negocio": [
					{
                        "chave" :"string", 
                        "valor" : "string", 
                        "tipo": "string"
                    }      		
	        	]
	        }
	   ]  
	}
}

Campo

DescriçãoObrigatório
processIDIdentificador do processo (rotina) que será executadoSim
firstExecutionData/hora para execução do primeiro pedido, exemplo: "2022-11-20T12:00:00-3:00", caso esteja em branco, o pedido será criado para data/hora atualNão
executionParameterObjeto com parâmetros de execuçãoSim 
{ "chave": "rpwServer", "valor":"server" }"server" deve conter o servidor RPW responsável pela execução do pedidoSim
{ "chave": "RPW_PROGRAM", "valor": "program" },"program" deve conter o nome externo do programa a ser executadoSim
{ "chave": "RPW_PRG_EMS5", "valor": "isEMS5" }"isEM5" deve ser "yes" caso seja um programa EMS5, e "no" para demais programasSim
{ "chave": "RPW_PRG_VERS", "valor": "version" }"version" deve conter a versão do programa a ser executadoSim
{ "chave": "RPW_PED_EXEC_PAI", "valor": "numPedExec" }"numPedExec" deve ser preenchido com o número do pedido de execução pai, caso existaNão
{ "chave": "RPW_SEND_EMAIL", "valor": "sendEmail" }"sendEmail" deve ser "yes" caso o pedido deva enviar e-mail, "no" caso não deva'Não
{ "parametros_negocio": [ parameters ] }

parameters deve ser preenchido com os parâmetros esperados pelo programa ser executado, os parâmetros devem ser inseridos no formato:

{ "chave": "nomeParametro", "valor": "valorParametro", "tipo":"tipoParametro"  }

Sim





Expandir
titleExemplo

O exemplo abaixo cria um pedido de execução para o programa BTR005AA, para o dia 20/11/2022 às 12:00, para o servidor de execução "serverRPW" e parametrizado para envio de e-mail: 

Bloco de código
languageactionscript3
themeRDark
{
  "processID": "btr005aa",
  "firstExecution": "2022-11-20T12:00:00-3:00",
  "executionParameter": {
    "parametros": [
      {
        "chave": "rpwServer",
        "valor": "serverRPW"
      },
      {
        "chave": "RPW_PROGRAM",
        "valor": "btb/btr00527.p"
      },
      {
        "chave": "RPW_PRG_EMS5",
        "valor": "no"
      },
      {
        "chave": "RPW_PRG_VERS",
        "valor": "2.00.00.002"
      },
      { 
        "chave": "RPW_SEND_EMAIL",      
        "valor": "yes" 
      },
      {
        "parametros_negocio": [
          {
            "chave": "destino",
            "valor": 2,
            "tipo": "integer"
          },
          {
            "chave": "arquivo",
            "valor": "BTR005AA.LST",
            "tipo": "character"
          },
          {
            "chave": "usuario",
            "valor": "super",
            "tipo": "character"
          },
          {
            "chave": "data-exec",
            "valor": "08/03/19",
            "tipo": "date"
          },
          {
            "chave": "hora-exec",
            "valor": 55030,
            "tipo": "integer"
          },
          {
            "chave": "parametro",
            "valor": "false",
            "tipo": "logical"
          },
          {
            "chave": "formato",
            "valor": 2,
            "tipo": "integer"
          },
          {
            "chave": "v_num_tip_aces_usuar",
            "valor": 0,
            "tipo": "integer"
          },
          {
            "chave": "ep-codigo",
            "valor": "FND",
            "tipo": "character"
          },
          {
            "chave": "c-classificacao",
            "valor": "Aplicativo",
            "tipo": "character"
          },
          {
            "chave": "c-cod_catal_img-ini",
            "valor": "",
            "tipo": "character"
          },
          {
            "chave": "c-cod_catal_img-fim",
            "valor": "ZZZZZZZZ",
            "tipo": "character"
          },
          {
            "chave": "c-des_catal_img-ini",
            "valor": "",
            "tipo": "character"
          },
          {
            "chave": "c-des_catal_img-fim",
            "valor": "ZZZZZZZZ",
            "tipo": "character"
          },
          {
            "chave": "c-cod_aplicat_dtsul-ini",
            "valor": "",
            "tipo": "character"
          },
          {
            "chave": "c-cod_aplicat_dtsul-fim",
            "valor": "ZZZZZZZZ",
            "tipo": "character"
          }
        ]
      }
    ]
  }
}
Expandir
titleParâmetros de agenda

Para criação de uma agenda para determinado de pedido de execução, inclui-se alguns parâmetros referentes a agenda, alguns exemplos:


Expandir
titleAgenda diária
Bloco de código
languageactionscript3
themeRDark
{ 
    "processID": "string",
	"firstExecution": "dateTime",
    "daily": {
  		"hour": hour,
  		"minute": minute
  	},  
  	"executionParameter": {
        "parametros": [  
	        { 
                "chave": "rpwServer",    
                "valor": "server" 
            },
	        { 
                "chave": "RPW_PROGRAM",  
                "valor": "program" 
            },
			{ 
                "chave": "RPW_PRG_EMS5", 
                "valor": "isEMS5" 
            },
     		{
        		"chave": "RPW_PRG_VERS",
        		"valor": "version"
      	    },
 	        { 
                "chave": "RPW_PED_EXEC_PAI",      
                "valor": "numPedExec" 
            }, 
            { 
                "chave": "RPW_SEND_EMAIL",      
                "valor": "sendEmail" 
            },
	        {
	        	"parametros_negocio": [
					{
                        "chave" :"string", 
                        "valor" : "string", 
                        "tipo": "string"
                    }      		
	        	]
	        }
	   ]  
	}
}

Campo

Tipo

DescriçãoObrigatório
recurrent

logical

Indica se a execução do job deve ocorrer mais de uma vezNão
dailyJson ObjectPara criação de agenda diáriaNão
daily.hourintegerHora da execução da agendaNão
daily.minuteintegerMinuto da execução da agendaNão


No exemplo de preenchimento à seguir, a agenda seria executada diariamente às 08:00.

  "daily": {
      "hour": 8,
      "minute": 0
  }

Expandir
titleAgenda semanal
Bloco de código
languageactionscript3
themeRDark
{ 
    "processID": "string",
	"firstExecution": "dateTime",
  	"weekly":  {
  		"daysOfWeek":["daysOfWeek"],
  		"hour": hour,
  		"minute": minute
  	},    
  	"executionParameter": {
        "parametros": [  
	        { 
                "chave": "rpwServer",    
                "valor": "server" 
            },
	        { 
                "chave": "RPW_PROGRAM",  
                "valor": "program" 
            },
			{ 
                "chave": "RPW_PRG_EMS5", 
                "valor": "isEMS5" 
            },
     		{
        		"chave": "RPW_PRG_VERS",
        		"valor": "version"
      	    },
 	        { 
                "chave": "RPW_PED_EXEC_PAI",      
                "valor": "numPedExec" 
            }, 
            { 
                "chave": "RPW_SEND_EMAIL",      
                "valor": "sendEmail" 
            },
	        {
	        	"parametros_negocio": [
					{
                        "chave" :"string", 
                        "valor" : "string", 
                        "tipo": "string"
                    }      		
	        	]
	        }
	   ]  
	}
}

Campo

Tipo

DescriçãoObrigatório
recurrent

logical

Indica se a execução do job deve ocorrer mais de uma vezNão
weeklyJson ObjectPara criação de agenda semanalNão
weekly.daysOfWeekJson ArrayLista de dias da semana que a agenda deve ser executadaNão
weekly.hourintegerHora de execução da agendaNão
weekly.minuteintegerMinuto de execução da agendaNão


No exemplo de preenchimento à seguir, a agenda seria executada semanalmente todas as segundas-feiras às 09:15.

  "weekly":  {
      "daysOfWeek":["monday"],
      "hour": 9,
      "minute": 15
  }

Expandir
titleAgenda mensal
Bloco de código
languageactionscript3
themeRDark
{ 
    "processID": "string",
	"firstExecution": "dateTime",
  	"monthly": {
  		"day": day,
  		"hour": hour,
  		"minute": minute
  	},
   "executionParameter": {
        "parametros": [  
	        { 
                "chave": "rpwServer",    
                "valor": "server" 
            },
	        { 
                "chave": "RPW_PROGRAM",  
                "valor": "program" 
            },
			{ 
                "chave": "RPW_PRG_EMS5", 
                "valor": "isEMS5" 
            },
     		{
        		"chave": "RPW_PRG_VERS",
        		"valor": "version"
      	    },
 	        { 
                "chave": "RPW_PED_EXEC_PAI",      
                "valor": "numPedExec" 
            }, 
            { 
                "chave": "RPW_SEND_EMAIL",      
                "valor": "sendEmail" 
            },
	        {
	        	"parametros_negocio": [
					{
                        "chave" :"string", 
                        "valor" : "string", 
                        "tipo": "string"
                    }      		
	        	]
	        }
	   ]  
	}
}

Campo

Tipo

DescriçãoObrigatório
recurrent

logical

Indica se a execução do job deve ocorrer mais de uma vezNão
monthlyJson ObjectPara criação de agenda semanalNão
monthly.dayintegerDia de execução da agendaNão
monthly.hourintegerHora de execução da agendaNão
monthly.minuteintegerMinuto de execução da agendaNão


No exemplo de preenchimento à seguir, a agenda seria executada mensalmente todo dia 10 às 08:00.  

"monthly": {
      "day": 10,
      "hour": 8,
      "minute": 0
  }



Expandir
titleRecorrência

Os parâmetros de recorrência permitem criar uma faixa de recorrências para execução de uma determinada agenda. 

Campo

Tipo

DescriçãoObrigatório
rangeExecutionsJson ObjectObjeto com as informações do range de execuçõesNão
rangeExecutions.frequencyJson ObjectObjeto com as informações de frequênciaNão
rangeExecutions.frequency.typestringIndica qual o tipo de repetição para os horários a serem gerados. Se 'day', gerará horários incrementando dias; se 'hour', gerará horários incrementando horas; se 'minute', gerará horários incrementando minutosNão
rangeExecutions.frequency.valueintegerFrequência do tipo do intervaloNão
rangeExecutions.rangeLimitJson ObjectObjeto com as informações do limite de range da agendaNão
rangeExecutions.rangeLimit.dayintegerDia limite para término da agenda (válido somente para Monthly)Não
rangeExecutions.rangeLimit.hourintegerHora limite para término da agendaNão
rangeExecutions.rangeLimit.minuteintegerMinuto limite, pertencente à hora, para término da agendaNão
Expandir
titleExemplo recorrência

Alguns exemplos:

  • No exemplo de preenchimento à seguir, a agenda seria executada diariamente das 08:00 às 18:00 de hora em hora.
Bloco de código
languageactionscript3
themeRDark
  "daily": {
      "hour": 8,
      "minute": 0
  },
 "rangeExecutions": {
 	"frequency": {
		"type": hour,
		"value": 1
 	},
   "rangeLimit": {
   		"hour": 18,
		"minute": 00
   }
 }


  • No exemplo de preenchimento à seguir, a agenda seria executada toda segunda feita das 09:15 às 09:30 a cada minuto.
Bloco de código
languageactionscript3
themeRDark
  "weekly":  {
      "daysOfWeek":["monday"],
      "hour": 9,
      "minute": 15
  },
 "rangeExecutions": {
 	"frequency": {
		"type": minute,
		"value": 1
 	},
   "rangeLimit": {
   		"hour": 09,
		"minute": 30
   }
 }


  • No exemplo de preenchimento à seguir, a agenda seria executada mensalmente do dia 1º ao dia 30 às 08:00 a cada dois dias.
Bloco de código
languageactionscript3
themeRDark
 "monthly": {
      "day": 1,
      "hour": 8,
      "minute": 0
 },
 "rangeExecutions": {
 	"frequency": {
		"type": day,
		"value": 2
 	},
   "rangeLimit": {
        "day": 30
   		"hour": 8,
		"minute": 0
   }
 }