Query Disparos: mudanças entre as edições

De Wiki NBS
Ir para navegação Ir para pesquisar
(Criou página com ''''<big>Query que seleciona os eventos para disparo</big>''' SELeCT agenda.cod_empresa, agenda.cod_os_agenda ,   cli.prefixo_cel , cli.telefone_cel, agenda.data_agendada...')
 
Sem resumo de edição
Linha 1: Linha 1:
'''<big>Query que seleciona os eventos para disparo</big>'''
'''<big>Query que seleciona os eventos para disparo</big>'''
 
SELeCT agenda.cod_empresa, agenda.cod_os_agenda , 
SELeCT agenda.cod_empresa, agenda.cod_os_agenda , 


Linha 32: Linha 31:


 and length(cli.telefone_cel) >= 8
 and length(cli.telefone_cel) >= 8
'''<big>Query que lê a fila de disparos e envia mensagem</big>'''
SELECT   disparo.template,
         fila.ddd,
         fila.celular,
         fila.cod_empresa,
         fila.cod_evento,
         disparo.id_disparo,
         disparo.template,
         fila.id_disparo_fila,
         Nvl(fila.cod_os_agenda, ag.cod_os_agenda) cod_os_agenda
FROM     crm_disparo disparo,
         crm_disparo_fila fila,
         os_agenda ag
WHERE    disparo.id_disparo = fila.id_disparo
         AND fila.cod_empresa = ag.crm_cod_empresa(+)
         AND fila.cod_evento = ag.crm_cod_evento(+)
         AND EXISTS (SELECT a.cod_evento
                     FROM   vw_crm_template_agendamento a
                     WHERE  a.cod_empresa = fila.cod_empresa
                            AND a.cod_evento = fila.cod_evento)
         AND fila.data_disparo <= SYSDATE
         AND Length(fila.ddd) = 2
         AND Length(celular) >= 8
         AND fila.status = 'P'
         AND EXISTS (SELECT 1
                     FROM   crm_parm_fluxo p
                     WHERE  p.cod_empresa = fila.cod_empresa
                            AND Nvl(p.ativar_leadzap, 'N') = 'S')
         AND EXISTS (SELECT 1
                     FROM   crm_whatsapp_empresa a
                     WHERE  a.cod_empresa = fila.cod_empresa)


'''<big>Query que lê a fila de disparos e envia mensagem</big>'''
ORDER BY fila.cod_empresa

Edição das 14h41min de 17 de agosto de 2020

Query que seleciona os eventos para disparo

SELeCT agenda.cod_empresa, agenda.cod_os_agenda , 

 cli.prefixo_cel , cli.telefone_cel, agenda.data_agendada

 from  os_agenda agenda , clientes cli, crm_parm_fluxo parm, cliente_diverso div

 where agenda.cod_cliente = cli.cod_cliente

 and   agenda.cod_empresa = parm.cod_empresa

 and   cli.cod_cliente    = div.cod_cliente

 and agenda.status_agenda = 'A' -- se ja confirmada nao precisa 'C'

  AND Nvl(agenda.apagar_ao_sair, 'N') <> 'X'

 -- cliente tem flag de envio liberado

 and nvl(div.crm_sms,'N') = 'N' 

 -- pega a turma do futuro: amanha, conforme parametro. se vazio poe 1 dia na frente

 and (agenda.data_agendada - nvl(parm.tempo_aviso_recepcao,1)) >=  trunc(sysdate)

 and (agenda.data_agendada - nvl(parm.tempo_aviso_recepcao,1)) <   trunc(sysdate+1)

 --telefone celular tem que ser valido

 and length(cli.prefixo_cel)   = 2

 and length(cli.telefone_cel) >= 8

Query que lê a fila de disparos e envia mensagem

SELECT   disparo.template,

         fila.ddd,

         fila.celular,

         fila.cod_empresa,

         fila.cod_evento,

         disparo.id_disparo,

         disparo.template,

         fila.id_disparo_fila,

         Nvl(fila.cod_os_agenda, ag.cod_os_agenda) cod_os_agenda

FROM     crm_disparo disparo,

         crm_disparo_fila fila,

         os_agenda ag

WHERE    disparo.id_disparo = fila.id_disparo

         AND fila.cod_empresa = ag.crm_cod_empresa(+)

         AND fila.cod_evento = ag.crm_cod_evento(+)

         AND EXISTS (SELECT a.cod_evento

                     FROM   vw_crm_template_agendamento a

                     WHERE  a.cod_empresa = fila.cod_empresa

                            AND a.cod_evento = fila.cod_evento)

         AND fila.data_disparo <= SYSDATE

         AND Length(fila.ddd) = 2

         AND Length(celular) >= 8

         AND fila.status = 'P'

         AND EXISTS (SELECT 1

                     FROM   crm_parm_fluxo p

                     WHERE  p.cod_empresa = fila.cod_empresa

                            AND Nvl(p.ativar_leadzap, 'N') = 'S')

         AND EXISTS (SELECT 1

                     FROM   crm_whatsapp_empresa a

                     WHERE  a.cod_empresa = fila.cod_empresa)

ORDER BY fila.cod_empresa