Instale o zBot (para Windows). Rode este sistema no seu computador e vários outros que podem ser baixados diretamente pelo zBot ou criados por você mesmo(a)!
26/12/2023 | Build: 74
Do pacote: Funil de vendas
Descrição: Permite adicionar e classificar contatos de acordo com sua etapa no funil de vendas, facilitando a gestão da comunicação e otimizando custos e esforços nas ações de comunicação.
&CriarBotaoPopup("Exibir...";"Desfazer filtro, Prospects (1),Produção (2),Lista VIP (3),Descadastrados (4),Inválidos (5)";"desfazer filtro, exibir prospect, exibir produção, exibir lista vip, exibir descadastrado, exibir inválido";110) //*
&CriarBotaoPopup("Adicionar...";"Inserir contatos etapa 1 (prospects),Inserir contatos etapa 2 (produção),Inserir contatos etapa 3 (lista vip),Inserir contatos etapa 4 (descadastrados),Inserir contatos etapa 5 (inválidos)";"adicionar prospect, adicionar produção, adicionar lista vip, adicionar descadastrado, adicionar inválido";130) //*
&CriarBotaoPopup("Nos selecionados...";"Forçar categoria,Forçar data de contato"; "definir categoria,definir data contato";150) //*
&CriarBotao("Obter selecionados";"obter selecionados")
&CriarBotaoPopup("Filtro gerencial..."; "Filtro gerencial detalhado, Obter contatos pela data da última abordagem" ;"filtro gerencial, filtro gerencial 2")
//* Adiciona o campo "interações" se não existir
&TbAdicionarCampo("interacoes"; "inteiro")[0] //* tipo: texto, inteiro, moeda, data
//&TbCores("ativo";"";"clGreen";"=";"sim")
//&TbCores("ativo";"";"clRed";"=";"não")
&TextoObterDataHora("hoje")[0] //*
&TextoDataInfo([hoje]; "data"; "hoje")[0]
&TbCores("data_contato";"clLime";"";"=";[hoje])
&TbCores("status";"$0081D1F8";"";"=";"prospect")
&TbCores("status";"$00BCFBAA";"";"=";"produção")
&TbCores("status";"$00FDC6DE";"";"=";"lista vip")
&TbCores("status";"$00E4DEDE";"";"=";"descadastrado")
&TbCores("status";"$008E8DCB";"";"=";"inválido")
#categorias
v0=indefinido
v1=prospect
v2=produção
v3=lista vip
v4=descadastrado
v5=inválido
#
#status
indefinido=0
prospect=1
produção=2
lista vip=3
descadastrado=4
inválido=5
#
// faz uma seleção de dados para ações de comunicação
#filtro gerencial
[data] = ""
[interacoes] = ""
[status] = ""
[filtro] = ""
[conectivo] = ""
&ValorPedirVarios("Defina os critérios do seu filtro"; "data menor que, data maior que, interações menor que, interações maior que, status|prospect#produção#lista vip#descadastrado#inválido")[0] //*
&Se([último resultado];igual;"FALHA")
&VaiPara("pular filtro gerencial")
.fimse
&Se([data menor que];#-\#-/;"")
[filtro] = "(data_contato #-\ '[data menor que]')"
.fimse
&Se([data maior que];#-\#-/;"")
&Se([filtro];#-\#-/;"")
[conectivo] = ' e '
.fimse
[filtro] = "[filtro][conectivo](data_contato #-/ '[data maior que]')"
.fimse
&Se([interações menor que];#-\#-/;"")
&Se([filtro];#-\#-/;"")
[conectivo] = ' e '
.fimse
[filtro] = "[filtro][conectivo](interacoes #-\ [interações menor que])"
.fimse
&Se([interações maior que];#-\#-/;"")
&Se([filtro];#-\#-/;"")
[conectivo] = ' e '
.fimse
[filtro] = "[filtro][conectivo](interacoes #-/ [interações maior que])"
.fimse
&Se([status];#-\#-/;"")
&Se([filtro];#-\#-/;"")
[conectivo] = ' e '
.fimse
[filtro] = "[filtro][conectivo](status = '[status]')"
.fimse
//&Mensagem([filtro])
&TbFiltrar([filtro])[0] //*
&Marcador("pular filtro gerencial")
#
// filtra registros não contatados (pela data último contato) a mais de X dias
#filtro gerencial 2
[data] = ""
[status] = ""
[filtro] = ""
[conectivo] = ""
&ValorPedirVarios("Defina os critérios do seu filtro"; "Não contatatos há pelo menos (em dias), status|todos#prospect#produção#lista vip#descadastrado#inválido")[0] //*
&Se([último resultado];igual;"FALHA")
&VaiPara("pular filtro gerencial 2")
.fimse
[dias] = [Não contatatos há pelo menos (em dias)]
&Se([dias];#-\#-/;"")
&TextoHojeInfo("data"; "data")[0] //* valor -#-/ data, ano, mês, dia, hora, minuto, segundo, dia_semana, secao_hora
&TextoDataInc("data"; "-[dias]")[0] //*
[filtro] = "(data_contato #-\= '[data]')"
.fimse
&Se([status];#-\#-/;"todos")
&Se([filtro];#-\#-/;"")
[conectivo] = ' e '
.fimse
[filtro] = "[filtro][conectivo](status = '[status]')"
.fimse
//&Mensagem([filtro])
&TbFiltrar([filtro])[0] //*
&Marcador("pular filtro gerencial 2")
#
// Força uma redefinição bruta em uma categoria, para os registros selecinoados
#definir categoria
&TextoGerarIdUnico("id_unico")[0] //* Gera um id único
[categoria] = 0
&ValorPedirVarios("Forçar definição de uma categoria"; "status|prospect#produção#lista vip#descadastrado#inválido")[0] //*
&BlocoLer("status";"categoria");
[categoria] = [categoria*[status]]
&Se([categoria];#-\#-/;0)
&TbSelecionadosValorDefinir("status,categoria";"[status],[categoria]")[0] //*
//&TbSelecionadosValorDefinir("categoria";[categoria])[0] //*
//&TbSelecionadosValorDefinir("id_unico";[id_unico])[0] //*
.fimse
#
// Força uma redefinição de data do último contato
#definir data contato
&TextoGerarIdUnico("id_unico")[0] //* Gera um id único
[data] = ""
&ValorPedirVarios("Forçar data de contato"; "data")[0] //*
&Se([data];#-\#-/;"")
&TbSelecionadosValorDefinir("data_contato,id_unico";"[data],[id_unico]")[0] //*
//&TbSelecionadosValorDefinir("id_unico";[id_unico])[0] //*
.fimse
#
// copia os contatos selecionados
// Define a data de último contato para hoje
// Incrementa o campo interacoes
#obter selecionados
&TextoGerarIdUnico("id_unico")[0] //* Gera um id único
&StatusInserir("OBTER CONTATOS SELECIONADOS";"cinza")[0]
&TextoObterDataHora("hoje")[0] //*
&TextoDataInfo([hoje]; "secao_data"; "hoje")[0] //* valor -#-/ ano, mês, dia, hora, minuto, segundo, dia_semana, secao_data, secao_hora
&StatusInserir("Copiando contatos...";"preto")[0]
&TbSelecionadosCopiar("contato";"dados")[0] //*
&StatusInserirExtra("[OK]";"sucesso")[0] //*
//* Edita os registros selecionados
&StatusInserir("Atualizando registros...";"preto")[0]
&TbLerCampo("interacoes")[0] //*
&Se([interacoes];=;"")
[interacoes] = "0"
.fimse
&ValorInc("interacoes";1)[0] //*
&TbSelecionadosValorDefinir("id_unico, data_contato, interacoes";"[id_unico], [hoje], [interacoes]")[0] //*
&StatusInserirExtra("[OK]";"sucesso")[0] //*
&StatusInserir("Exibindo dados copiados (AGUARDE)...";"preto")[0]
&TextoSalvar([dados]; "tmp_obter.txt")[0] //*
&ExecutarComando("notepad.exe tmp_obter.txt")[0]
&StatusInserirExtra("[OK]";"sucesso")[0] //*
&StatusInserir("FIM DA OPERAÇÃO";"cinza")[0]
#
#desfazer filtro
&TbFiltrar("")[0] //*
#
#exibir prospect
&TbFiltrar("categoria='1'")[0] //*
#
#exibir produção
&TbFiltrar("categoria='2'")[0] //*
#
#exibir lista vip
&TbFiltrar("categoria='3'")[0] //*
#
#exibir descadastrado
&TbFiltrar("categoria='4'")[0] //*
#
#exibir inválido
&TbFiltrar("categoria='5'")[0] //*
#
// dados (lista de contatos para adicionar)
// categoria (1,2,3,4, 5)
#adicionar dados em uma etapa
&TextoGerarIdUnico("id_unico")[0] //* Gera um id único
&TextoObterDataHora("hoje")[0] //*
&TextoDataInfo([hoje]; "secao_data"; "hoje")[0] //* valor -#-/ ano, mês, dia, hora, minuto, segundo, dia_semana, secao_data, secao_hora
&BlocoLer("categorias";"lista_status")[0] //*
&TextoQtdLinhas([dados]; "qtd")[0] //* Obtém a quantidade de linhas
&Progresso1Iniciar("Progresso";[qtd])[0] //*
&Repetir([qtd]) //* a variável _indice terá o número do ciclo atual
&Progresso1Inc(1)[0] //*
[linha] = ""
&TbLocalizar("contato";[dados*[_indice]]; "linha")[0] //*
[categoria_origem] = [linha*categoria]
&Se([categoria_origem];igual;"")
[categoria_origem] = 0
.fimse
[status_origem] = [lista_status*v[categoria_origem]]
[status_destino] = [lista_status*v[categoria]]
&Se([forçar];=;"não")
&Se([categoria_origem];#-/=;[categoria])
&StatusInserir("Contato [linha*contato] já tem o status [status_origem]";"erro")[0] //* cor: erro, sucesso, alerta, preto, cinza, importante
&VaiPara("continuar")
.fimse
.fimse
&Se([categoria_origem];=;0)
&TbInserir("id_unico,ativo,contato,categoria,status,data_cadastro";"[id_unico],sim,[dados*[_indice]],[categoria],[status_destino],[hoje]")[0] //*
&StatusInserir("Inserido: [dados*[_indice]]";"sucesso")[0]
.senao
&TbLocalizarEditar("contato";[linha*contato];"categoria,status,id_unico";"[categoria],[status_destino],[id_unico]")[0] //*
[temp] = [dados*[_indice]]
&StatusInserir("Editado: [temp] ([status_destino])";"sucesso")[0]
.fimse
&Marcador("continuar")
.fimrepetir
#
//&TextoSalvar("francisco@linkws.com"; "teste.txt")[0] //*
//&ExecutarComando("notepad.exe teste.txt")[0]
// Adiciona contatos como prospects
#adicionar prospect
[dados] = ""
&ValorPedirVarios("Cole a lista de prospects (um em cada linha)"; "dados, forçar|não#sim")[0] //*
&Se([dados];diferente;"")
[categoria] = 1
&BlocoExec("adicionar dados em uma etapa")[0] //*
.senao
&Mensagem("Sem dados")
.fimse
#
// Adiciona contatos como produção
#adicionar produção
[dados] = ""
&ValorPedirVarios("Cole a lista de produção (um em cada linha)"; "dados, forçar|não#sim")[0] //*
&Se([dados];diferente;"")
[categoria] = 2
&BlocoExec("adicionar dados em uma etapa")[0] //*
.senao
&Mensagem("Sem dados")
.fimse
#
// Adiciona contatos como lista vip
#adicionar lista vip
[dados] = ""
&ValorPedirVarios("Cole a lista vip (um em cada linha)"; "dados, forçar|não#sim")[0] //*
&Se([dados];diferente;"")
[categoria] = 3
&BlocoExec("adicionar dados em uma etapa")[0] //*
.senao
&Mensagem("Sem dados")
.fimse
#
// Adiciona contatos como descadstrado
#adicionar descadastrado
[dados] = ""
&ValorPedirVarios("Cole a lista de descadastrados (um em cada linha)"; "dados, forçar|não#sim")[0] //*
&Se([dados];diferente;"")
[categoria] = 4
&BlocoExec("adicionar dados em uma etapa")[0] //*
.senao
&Mensagem("Sem dados")
.fimse
#
// Adiciona contatos inválidos
#adicionar inválido
[dados] = ""
&ValorPedirVarios("Cole a lista de inválidos (um em cada linha)"; "dados, forçar|não#sim")[0] //*
&Se([dados];diferente;"")
[categoria] = 5
&BlocoExec("adicionar dados em uma etapa")[0] //*
.senao
&Mensagem("Sem dados")
.fimse
#