criar uma aplicacao que envie email automaticos

(system) #1

Bom dia Amigos

Eu estou querendo criar uma aplicacao que envie email automaticos depois de que uma solicitacao seja feita e nao seja respondida .

Seria email diarios dizendo ja tem 5 dias e ainda nao temos resposta se puder quizer responder ja acesse o site ,ja tem 4 dias ainda nao obtemos uma resposta se puder quizer responder ja acesse o site

se alguem tiver alguma dica .

Desde ja Agradeço a Colaboracao

Rodrigo
Estagiario

(Cleyton Euler) #2

Tenho algo parecido que resolvi sem o SC por questão de tempo, pois não fazia idéia de como fazer no SC ainda. De uma solução temporária ficou permanente. rsrs

Fiz uma página php que faz a verificação e manda os e-mail. No agendador de tarefas do windows agendei para executar a página. Porém neste caso o servidor dentro do site da minha empresa. Se seu projeto ficar hospedado na net acho difícil vc ter acesso ao agendador de tarefas.

No SC vc pode tentar fazer uma aplicação controle e no evento onLoad vc escreve o código que verifica a base e envia os e-mail conforme cada caso.

O problema é que a aplicação controle vai ter que ser executada para que dispare o código. Também pode tentar escrever o código no evento do menu do projeto ou chamar a aplicação controle no evento do menu. Assim sempre o menu for carregado ou executa o código ou chama a aplicação controle. Acho que deve funcionar.

Mas o pessoal mais experiente ai deve ter alguma solução mais prática também.

(system) #3

Eu estou comecando nao entendi bem se vc poder me mandar codigo passo a passo

(system) #4

Minha duvida e como vc executava essa pagina pelo agendador de tarefa .

(Cleyton Euler) #5

Vá no agendador de tarefas do windows w crie uma tarefa agendada. Escolha o nome da pagina.

(system) #6

Seria excutar o iconi da pagina no desktop
sendo uma pagina em php

eu to com seguinte ideia Criar uma pagina talves sc do tipo blank e criar um campo de resposta no meu bd se resposta for = falso envio de email aplicacao envia o imail .

mas ainda nao concretizei nada estou ainda na parte de construcao obrigado Cleyton Euler

se vc tiver mas ideias estou aberto a sugestoes

Obrigado

(Rodrigo Lins) #7

Boa Tarde,

Com relação ao agendador de tarefas, não sei qual foi a forma que o Cleyton utilizou, mas fiz um teste agora da seguinte forma:

Criei um atalho no Desktop do navegado web que utilizo chamando o link da aplicação do ScriptCase.

E fiz o agendamento no Windows para abrir este atalho e ele funcionou corretamente.

E quanto a resposta do banco, vai depender exatamente do que está querendo fazer, mas poderá utilizar a macro sc_lookup do ScriptCase para lhe auxiliar neste processo e fazer a regra que você precisa dentro da aplicação. Uma outra coisa que pode ser feita é, por exemplo: no evento OnExecute disparar o código desejado e no fim executar o javascript window.close, para fechar a janela. Porque ele irá ficar aberto a janela.

Rodrigo Lins.

(system) #8

minha dificudade ta sendo o seguinte essa minha aplicacao precisaria do evento onit do escriptcase quando ela execultasse atraves do agendador de tarefa ela execultaria o Iconi da pagina de email e faria as validacoes

(Rodrigo Lins) #9

Boa Tarde,

Como assim o “link de email”? Será utilizado a macro do scriptcase para enviar ou será de outra maneira?

Pelo que entendi poderia ser feito mais ou menos o seguinte:

  • Criar uma aplicação do tipo Blank, no evento OnExecute colocar as validações (fazendo sc_lookup), etc… e logo abaixo (se for validado) enviar o email através da macro sc_mail_send para conectar com o servidor smtp (envio de email) e disparar os emails.

  • Depois no agendador chamar uma atalho para esta página feita no scriptcase.

Rodrigo Lins.

(system) #10

essa pagina tinha que execultar automaticamento entao eu precisaro do evento onload porem na aplicao blank nao tem

(Rodrigo Lins) #11

Boa Tarde,

Na aplicação blank só existe um evento que é o onExecute, porém, ele é a mesma coisa do onLoad, pois ele é executado assim que carrega a página.

Rodrigo Lins.

(system) #12

estou com dificuldade na criacao dessa aplicacao ainda nao consegui cria-la se tiver algum exemplo poder me mandar agradeço

(Rodrigo Lins) #13

Bom Dia,

Em qual ponto exatamente você está tendo dificuldade? Você conseguiu entender como seria o funcionamento da aplicação, o que precisaria ter? Se sim, seria só seguir os passos por partes e ir implementando. Como, por exemplo, implementar a verificação que precisa fazer antes de enviar o email, então seria utilizar a macro sc_lookup (com o select necessario) e validar se seria para enviar ou não o email. Depois de estar OK este passo, seria ir para a parte de enviar o email, conectar com o smtp, etc, utilizando a macro sc_mail_send, depois de testado estas partes e estando da forma que deseja você pode ir para o passo de enviar emails automaticamente através do gerenciador de tarefas do windows.

Acho que estes seriam mais ou menos passos para conseguir fazer a aplicação. Lembrando que o que eu disse anteriormente, vai independer do tipo de aplicação/evento, poderia ser ate no evento onLoad de um formulário e depois de funcionando corretamente você poderia colocar no tipo de aplicação desejada (blank).

Espero ter ajudado.

Rodrigo Lins.

(system) #14

A minha dificuldade agora esta sendo php mesmo para pegar a data para fazer a logica,
mas estou estudando como fazer isso, por esta trabalhando com datas pela primeira vez
essa esta sendo a minha dificuldade se tiver alguma dica ou algum material o site sobre esse topico agradeco

(Cleyton Euler) #15

// leitura das datas
$dia = date(‘d’);
$mes = date(‘m’);
$ano = date(‘Y’);

// o padrão pt-br (dd/MM/YYYY) é definido pelo formato de exibição do SC
$data = “$ano$mes$dia”;

(system) #16

Se a DATA foi pega pela macro sc_Loockup e desse jeito tambem que eu pego cada elemento da data .

(Cleyton Euler) #17

Não entendi. Quer saber como pegar a data pelo sc_lookup?

(system) #18

a data que eu vou fazer a logica e meu bd para pegar a data eu uso sc_loockup,ela e tranformada em uma variavel do tipo data nesse (aaaa/mm/dd) formato para fazer a minha logica para enviar o email automatico em encima dessa data .

para separar dia, o mes e ano dessa data seria como?

(Cleyton Euler) #19

Já está separado:

// Pega a data atual do sistema e separado em dia, mes e ano
$dia = date(‘d’);
$mes = date(‘m’);
$ano = date(‘Y’);

// Monta a data atual do sistema no formato do BD. Uso mySQL
$data = “$ano$mes$dia”;

Aqui vc pegou uma data na sua tabela:

sc_lookup(datatab, “SELECT SUA_DATA FROM SUA_TABELA WHERE COD=‘1’”);

$minha_data = {datatab[0][0]}; // Pega o primeiro campo da primeira linha do lookup

Você pode fazer uma comparação:

if($minha_data > $Data)
{

// Rotina de código para TRUE

}

else
{

// Rotina de código para FALSE

}

(system) #20

eu estou com dificudade na minha logica ,eu peguei o campo data do meu bd atravez sc_lookup , quando eu pego valor do dia atravez da funcao explode do php para somar mas 5 dias no valor da data ele considera como se fosse numero normal entao quando o dia 30 fica 35 ,tambem a parte da data so do campo vazio so funciona um de cada vez nao os dois ao mesmo tempo alguem pode me ajudar .

$dia = date(‘d’);
$mes = date(‘m’);
$ano = date(‘Y’);
$data = “$ano$mes$dia”;

sc_lookup(dataset,“SELECT
data_ins_ext
FROM
s_inspecao_ext
WHERE
cod_insp_ext=’{cod_insp_ext}’”);
{dataset[0][0]};

$minha_data = {dataset[0][0]};
$m= explode("-",($minha_data));
$m1=$m[2]+5;
$data_limit ="$m[0]$m[1]$m1";

if(empty({superv_ins_exp}) && empty){medidas_arc_ext}
{
if (($data_limit > $data))
{
$setor = {cod_setor};
$num = {cod_insp_ext};
$a = “Messias”;
$b = “Antonio”;
$c = “Robson”;
$d = “Tito”;
$e = “Projeto-SSA”;
$f = “Sesmet”;
$g = “Transporte”;
$h = “Administracao”;

if   ($setor == "9" )
{
$nome = "$a";
$para = "rodrigo.manager@hotmail.com ";
$copia = "rodrigowebdevelop@gmail.com";

$mensagem ="<p align=center><font size=5><em><font color=#000000 size=4><u>Esse e-mail é 

automátio e não é para ser respondido.

$nome,

A inspeção nº $num foi colocada no sistema, solicito que responda com brevidade.

Caso queira, acesse <a href=http://wwwww e responda imediatamente essa inspeção.

Atenciosamente,duvida esse ainda nao foi respondido

Sesmet - Eletec-SSA Agora

";
}
sc_mail_send ("smtp.aaaaaaa.com.br", "ssssssss@eeeeee.com.br", "loca1020",

“xxxxxxxxxx@zzzzzzzzzzzz.com.br”,’$para’,‘Inspeção de Campo para Responder’,’$mensagem’, ‘H’,’$copia’, ‘CCC’, ‘’,’’,’’)

}

}

ELSE
{
echo " o campo esta prenchido ";
}