× Linguagem de Programação ADVPL

Perguntas Execução de função de usuário via workflow/schedule

Mais
11 anos 7 meses atrás #12686 por cintra_daniel
Luiz me perdoe, mais ainda não estou sabendo como proceder...

Se puder ser só mais um pouco específico... porque eu não tenho experiencia nenhuma com esse lance de workflow / schedule / job ... tudo que eu fiz até hoje foi disparado pelo usuário, em algum momento dentro do sistema, seja em ponto de entrada, ou validação de campo e etc...

eu preciso como eu citei anteriormente saber, como eu vou criar o processo que vai rodar automático e onde que eu defino quando ele precisa ser disparado...

Vou enviar em anexo também 2 fontes, que são os que tem as funções que eu preciso que sejam executadas...

EnviaEmail() que chama uma segunda função -> EnvMail().

EnviaEmail, monta um email para ser enviado. Define, para quem será enviado o email, o assunto do email, e o conteudo.

EnvMail, pega as informações que foram geradas pela EnviaEmail e faz o SendMail, com os dados de usuário que ficam nos parâmetros:

MV_RELSERV
MV_RELACNT
MV_RELPSW

Deu pra entender mais ou menos?
Anexos:

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás #12688 por lalberto
Claro brother, eu entendi você e realmente é muito confuso esse lance de job, schedule do protheus, estou num cliente agora e fica meio dificil acessar o site, por isso baixa estes materiais e veja se consegue te ajudar por enquanto, mais tarde qdo estiver em casa vou tentar montar algo mais fácil de compreender pra vc ok.

Abraços

www.masteradvpl.com.br/index.php/downloads/viewdownload/26/583

www.masteradvpl.com.br/index.php/downloa...load/583#comment-181

Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás #12883 por cintra_daniel
Luiz Bom dia!

Conseguir entender como funciona o schedule do protheus e já até consegui programar a execução da minha função, porém, eu vejo a execução, mas nada acontece...

Ao verificar no modo console está acontecendo um erro de "type missmatch on compare" em um dos "if" que tem dentro do código. Só que o estranho é que essa função roda normalmente quando é chamada por um usuário..

Ai a minha pergunta, quando a função é executada por um job ela precisa ter algo diferente da função que é executada pelo usuário?

É essa questão que você tentou me demonstrar enviando aquele fonte?

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás - 11 anos 7 meses atrás #12896 por cintra_daniel

Só pra ficar mais facil de visualizar meu problema, segue em anexo o print do console, no momento da execução da minha função.

Ele da um erro de type mismatch on compare como eu havia citado anteriormente, na linha 45...

Só que minha linha 45 é exatamente isso:

If (cTipo == 1)


cTipo é uma variável parâmetro da função que pode receber 1,2 ou 3.
Anexos:
Ultima edição: 11 anos 7 meses atrás por cintra_daniel.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás #12897 por kanaamlrr
tenta trocar

If (cTipo == 1)

por

If (cTipo == "1")

ou

If (Val(cTipo) == 1)

da forma que está agora você está comparando um caracter com um numérico, causando o erro de type mismatch.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás - 11 anos 7 meses atrás #12899 por cintra_daniel
Amigo Boa Tarde,

sua sugestão não fez muito sentido pra mim, porque eu já passo um numero e nao uma string, para a variável cTipo, o prefixo dela só esta com 'c' porque antes eu passava um valor de string Ex: 'AF', porém dava esse problema de type mismatch ai resolvi testar com numeros.

Porém mesmo assim resolvi testar o que vc sugeriu, sei lá, vai que funfa né?

Ai deu outro erro, que eu já esperava, porque eu estou tentando converter um valor que já é numerico , em numero...

A função quando eu chamo -> U_EnviaEmail(1,.F.,.F.)

Função Sintaxe: EnviaEmail(cTipo,lJob,lAtualiza)
Anexos:
Ultima edição: 11 anos 7 meses atrás por cintra_daniel.

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.158 segundos
Joomla templates by a4joomla