No Schedule existe uma forma para a definição dos Perguntes para o botão Parâmetros, além do cadastro das funções no SXD.
Ao definir em sua rotina a static function SchedDef(), no cadastro da rotina no Agendamento do Schedule será verificado se existe esta static function e irá executá-la habilitando o botão Parâmetros com as informações do retorno da SchedDef(), deixando de verificar assim as informações na SXD. O retorno da SchedDef deverá ser um array com o seguinte padrão:
aReturn[1] - Tipo: "P" - para Processo, "R" - para Relatórios
aReturn[2] - Nome do Pergunte
aReturn[3] - Alias (para Relatório)
aReturn[4] - Array de ordem (para Relatório)
aReturn[5] - Título (para Relatório)
aReturn[6] - Nome do relatório (parâmetro 1 do método new da classe TReport)
Observações:
//-------------------------------------------------------------------
/*/{Protheus.doc} TSTSCHD
Função TSTSCHD
@author Totvs
@since 12/08/2024
//-----------------------------------------------------------------*/
User function TSTSCHD()
If IsBlind()
BatchProcess("Teste","Teste",,{ || TSTExec() })
EndIf
Return
//-------------------------------------------------------------------
/*/{Protheus.doc} TSTExec
Função TSTExec
@author Caio Lima
@since 12/08/2024
//-----------------------------------------------------------------*/
Static Function TSTExec()
conout("MV_PAR01 " + MV_PAR01)
conout("MV_PAR02 " + MV_PAR02)
conout("MV_PAR03 " + MV_PAR03)
Return
//-------------------------------------------------------------------
/*/{Protheus.doc} Scheddef
Função para definição de parametros na tela de schedule
@author Totvs
@since 12/08/2024
//-----------------------------------------------------------------*/
Static Function Scheddef()
Local aParam as array
Local aOrd as array
aParam := {}
aOrd := {OemToAnsi(" Por Codigo "),OemToAnsi(" Alfabetica ")}
Aadd(aParam, "R" ) // 01 - Tipo R para relatorio P para processo
Aadd(aParam, "ACA070" ) // 02 - Pergunte do relatorio, caso nao use passar ParamDef
Aadd(aParam, "SA1" ) // 03 - Alias
Aadd(aParam, aOrd ) // 04 - Array de ordens
Aadd(aParam, "Titulo teste" ) // 05 - Titulo
Aadd(aParam, "report01" ) // 06 - Nome do relatório (parametro 1 do metodo new da classe TReport)
Return aParam |