Jump to content
thiago riccieri

Melhorar performance na velocidade da consulta mysqli

Recommended Posts

Como posso melhorar a performance desta consulta mysqli. Ao utilizar o ORDER BY  LIMIT, a performance cai de mais, ficando muito lento.

 

SELECT  
e.idequipamento, e.equipamento, e.circuito, e.conjunto, e.zona, e.idlocalidade, e.trecho, e.soma, e.idregiao, e.idsupervisao, e.kmrede, e.clientes,  
r.mes1, r.mes2,  
g.relatorioanalitico, g.soma, g.iasc, g.planopodas, g.citycity, g.energisaparceira, g.outros  
FROM equipamento AS e  
INNER JOIN rank AS r ON (e.idequipamento = r.idequipamento) 
INNER JOIN gestao AS g ON (e.idequipamento = g.idequipamento)             
WHERE r.mes1>0  AND e.idsupervisao='1' ORDER BY r.mes1 ASC LIMIT 50

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By JorgeeHenrique
      Bom dia, sou iniciante em Delphi, estou fazendo um Cadastro de Clientes, gostaria de usar três Edit´s para filtrar alguns  dados porem com o código abaixo consegui fazer apenas com 1 edit.text, como faço pra usar três e que se algum estiver em branco ele retorna o valor apenas do Edit.text que foi preenchido?
       
      Exemplo: 
       
      Quero buscar por Nome, Situação e Rota (Cliente a da rota B com situação C) e se algum desses campos estiver vazio ele busca apenas o que foi preenchido. Obrigado pela atenção!
       
      .
      procedure TFrm_Cadastro.Bt_BuscarClick(Sender: TObject); begin with Frm_Cadastro.Tbl_Clientes do begin Close; SQL.Clear; SQL.Add( 'Select * from Tbl_Cad_Clientes'); SQL.Add('where Cli_Nome like :nome'); ParamByName('nome').Value := '%' + txt_buscar_nome.Text + '%'; Open; end; end;  
    • By brunoogm
      Pessoal tenho o seguinte select no mysql
       
      SELECT SUM(ValorTotal) as Total_Mes, YEAR(DataPedido) as Ano,
                                                      CASE extract(MONTH from DataPedido)
                                                      WHEN 1 THEN 'Janeiro'
                                                      WHEN 2 THEN 'Fevereiro'
                                                      WHEN 3 THEN 'Março'
                                                      WHEN 4 THEN 'Abril'
                                                      WHEN 5 THEN 'Maio'
                                                      WHEN 6 THEN 'Junho'
                                                      WHEN 7 THEN 'Julho'
                                                      WHEN 8 THEN 'Agosto'
                                                      WHEN 9 THEN 'Setembro'
                                                      WHEN 10 THEN 'Outubro'
                                                      WHEN 11 THEN 'Novembro'
                                                      WHEN 12 THEN 'Dezembro'
                                                  END AS mes
                                                  from comanda Where Year(DataPedido) = year(curdate()) and CodigoSituacao = 2 OR Year(DataPedido) = (year(now())-1) and CodigoSituacao = 2
                                                  group by mes, YEAR(DataPedido)
                                                  limit 0,12
       
      E ele me retorna a seguinte situação : 
       
      Total_Mes      Ano         mes
      555.00            2018       Agosto
      310.00            2019       Agosto
      150.00            2019       Fevereiro
      777.00            2018       Janeiro
      100.00            2019       Janeiro
      70.00             2019         Maio
       
      E no caso eu gostaria de omitir os registros que NÃO se repetem, ou seja, retirar da consulta os resultados onde o mês só apareça uma vez (maio e fevereiro)
      Preciso que o resultado seja o seguinte :
       
      Total_Mes      Ano         mes
      555.00            2018       Agosto
      310.00            2019       Agosto
      777.00            2018       Janeiro
      100.00            2019       Janeiro
       
      Alguém tem uma  ideia de como fazer isso ?
    • By bradry
      Eae galera tranquilo ?
       
      Sou novo no SQL. E estou usando bastante banco agora na empresa e tenho a seguinte dúvida..
       
      Tenho uma base de 1 milhão de registros formados de CPF, NOME e TELEFONE.
       
      Tenho que extrai 10 mil registros por dia. Como faço para continuar de onde parei ? por exemplo, extrai  20 mil reg. é depois como faço pra pegar da linha 20 mil até o 30 mil ?
    • By gilsondsouza10@gmail.com
      select nom_administradora, nome_sucursal, nome_inspetoria, num_contrato_editado, nome_entidade, nome_empresa, dt_vencimento_order, dt_emissao, dt_vencimento, dt_baixa, dt_registro_baixa, dt_cancelamento, txt_nosso_numero, txt_nosso_numero_banco, num_fatura, nom_tipo_ciclo, nome_tipo_cobranca, mes_ano_ref, ind_tipo_baixa, nome_tipo_baixa, val_fatura, val_a_pagar, val_pago, val_desconto, val_saldo, nom_arquivo, cod_banco, ind_estado_cobranca, situacao, forma_baixa, num_agencia, impostos, diferenca, qtd_dias_atraso, num_cgc, venc_alterado, ins_encargos, nome_usu, celula, ind_tipo_produto, tipo_empresa, nome_tipo_empresa, segmento, cedente, dt_prorrogacao, contrato_mae, num_nota_fiscal, status_contrato, data_status, nom_cancelamento, cod_ts, ind_apos_dem, ind_acao_jud, num_operadora_ans, nom_operadora, cod_plano_medico, nome_plano_medico, cod_plano_dental, nome_plano_dental, Val_medico, Val_outros, val_dental, val_taxas, val_mensalidade_associativa, Val_net_medico, val_net_dental, cod_grupo_empresa, nome_grupo_empresa, nvl(val_medico,0) - nvl(val_net_medico,0) val_over_medico, nvl(val_dental,0) - nvl(val_net_dental,0) val_over_dental, nvl(val_medico,0) - nvl(val_net_medico,0) + (nvl(val_dental,0) - nvl(val_net+ 1_dental,0)) val_over_total, endereco, telefone, acao_judicial, dt_ini_vigencia, data_inclusao, num_cpf, dia_vencimento, email, nome_corretor, regiao, num_contrato_operadora, data_nascimento, idade, Marca_otica_Medico, marca_otica_dental, data_reativacao, motivo_exclusao, dia_vigencia, nom_empresa_cartao from ( select /*rec_acompanhamento_cobranca.monta_query "principal"*/ + op.nom_operadora nom_administradora, + su.nome_sucursal, + ip.nome_inspetoria, + ce.num_contrato_editado, + fa.nome_cliente nome_entidade, + es.nome_entidade nome_empresa, + nvl(co.dt_vencimento_orig,co.dt_vencimento) dt_vencimento_order,+ 1 to_char(co.dt_emissao, 'dd/MM/rrrr') dt_emissao, + 1 to_char(co.dt_vencimento, 'dd/MM/rrrr') dt_vencimento, + 1 to_char(co.dt_baixa, 'dd/MM/rrrr') dt_baixa, + 1 to_char(co.dt_registro_baixa, 'dd/MM/rrrr') dt_registro_baixa+ 1, to_char(co.dt_cancelamento, 'dd/MM/rrrr') dt_cancelamento, + 1 co.txt_nosso_numero, + co.txt_nosso_numero_banco, + fa.num_fatura, + tc.nom_tipo_ciclo, + to_char(cf.mes_ano_ref, 'mm/rrrr') mes_ano_ref, + 1 tcob.nome_tipo_cobranca, + co.ind_tipo_baixa, + tb.nome_tipo_baixa, + fa.val_fatura, + nvl(co.val_a_pagar, 0) val_a_pagar, + nvl(co.val_pago, 0) val_pago, + case + when co.ind_estado_cobranca = '1' and + 1 co.val_pago < nvl(co.val_a_pagar, 0) then + nvl(co.val_a_pagar, 0) - co.val_pago + when 1 = 1 then + 0 + end val_desconto, + when co.ind_estado_cobranca = '6' and + 1 end val_saldo, + (select crsur.nom_arquivo:n + 1 from controle_recebimento_sur crsur:n + 1 Where crsur.num_seq_controle_recbto = (select min(crs.num_seq_+ 1controle_recbto):n + 1 from credito_recebido_sur crs:n + where c+ 1rs.ind_estado_credito = 1:n + and co.num_seq_cobranca = crs.num_seq_+ 1cobranca ):n + 1 ) as nom_arquivo, when co.cod_tipo_cobranca = 3 then + nvl(co.cod_banco_dcc,co.cod_banco) + else + co.cod_banco + end cod_banco, + co.ind_estado_cobranca, + when co.dt_baixa is not null and + co.ind_estado_cobranca = '1' then + 1 'P' + 1 when co.dt_vencimento < trunc(sysdate) and + co.ind_estado_cobranca in ('0', '3') then + 1 'Ve' + 1 when co.dt_vencimento >= trunc(sysdate) and + 'Vi' + 1 when co.dt_cancelamento is not null then + 'C' + 1 when co.ind_estado_cobranca = '4' then + 1 'Rn' + 1 when co.ind_estado_cobranca = '6' then + 1 'BP' + 1 end situacao, + (select csr1.ind_forma_criacao:n + 1 from credito_recebido_sur csr1:n + 1 where csr1.num_seq_credito_recebido = (select min(crs.num_+ 1seq_credito_recebido):n + from credito_recebido_sur crs:n + + 1 where crs.ind_estado_credito = 1:n + and co.num_seq_cobranca = c+ 1rs.num_seq_cobranca):n and csr+ 11.ind_estado_credito = 1:n and+ 1 co.num_seq_cobranca = csr1.num_seq_cobranca) as forma_baixa, + 1 decode(co.num_dv_agencia_dcc,null,to_char(co.cod_agencia_dcc)+ 1,to_char(co.cod_agencia_dcc)) num_agencia, nvl(fa.val_irrf, 0) + nvl(fa.val_csll, 0) + + nvl(fa.val_cofins, 0) + nvl(fa.val_pis, 0) impostos, + case when nvl(co.val_a_pagar, 0) - nvl(co.val_pago, 0) > 0 an+ 1d co.ind_estado_cobranca = '1' then nvl(co.val_a_pagar, 0) - nvl(co.val_pago, 0) + else 0 + end diferenca, + nvl(co.qtd_dias_atraso, 0) qtd_dias_atraso, + nvl(es.num_cgc, '') num_cgc, + 1 decode(co.dt_vencimento_orig, null, 'NÃO', 'SIM') venc_altera+ 1do, when nvl(co.val_a_pagar_orig, 0) > 0 then + case + when nvl(co.val_a_pagar_orig, 0) < nvl(co.val_a_pagar, 0) th+ 1en 'SIM' + 1 else + 'NÃO' + 1 end else 'NÃO' end ins_encargos, + 1 when co.dt_vencimento_orig is not null then + (select nom_usuario + from usuario + where cod_usuario = co.cod_usuario_atu) + '' + 1 end nome_usu, + eq.num_celula_posvenda celula, + (select case + when exists + (select + from associado_aditivo aa2 + where aa2.cod_ts = b.cod_ts_tit + and aa2.dt_ini_vigencia <= last_day(cf.mes_ano_+ 1ref ) and (aa2.dt_fim_vigencia is null or + aa2.dt_fim_vigencia >= cf.mes_ano_ref)) th+ 1en 'Ambos' + 1 else + decode(pm.cod_tipo_plano, '1', 'Médico', '4', 'Dent+ 1al') end case + from beneficiario b, plano_medico pm, ciclo_faturamento cf + where b.cod_ts = co.cod_ts and cf.num_ciclo_ts = co.num_cicl+ 1o_ts and b.cod_plano = pm.cod_plano) ind_tipo_produto, + ce.tipo_empresa, + rg.nome_tipo_empresa, + 'P' || tcon.ind_tipo_pessoa segmento, + 1 case + when co.cod_tipo_cobranca = 3 then + nvl(cedcc.cod_cedente,ced.cod_cedente) + ced.cod_cedente + end cedente, + to_char(co.dt_vencimento, 'dd/mm/rrrr') dt_prorrogacao, + 1 ce_ge.num_contrato_editado contrato_mae, + fa.num_fatura_ret_rps num_nota_fiscal, + nvl(sass.nom_situacao, scon.nom_situacao) status_contrato, + null data_status, + mot.nom_cancelamento, + co.cod_ts, + co.ind_apos_dem, + co.ind_acao_jud, + ppf_op.num_operadora_ans, + ppf_op.nom_operadora, + (select pm.cod_plano + from itens_cobranca ic + inner join plano_medico pm + on pm.cod_plano = ic.cod_plano + where co.num_seq_cobranca = ic.num_seq_cobranca + and ic.cod_plano is not null + and pm.cod_tipo_plano = + and rownum = 1) cod_plano_medico, + (select pm.nome_plano + from itens_cobranca ic, plano_medico pm + and ic.cod_plano = pm.cod_plano + and rownum = 1) nome_plano_medico, + (select nvl(ic.cod_aditivo, decode(pm.cod_tipo_plano, 4, ic.+ 1cod_plano, null)) from itens_cobranca ic + left join plano_medico pm + on pm.cod_plano = ic.cod_plano + where ic.num_seq_cobranca = co.num_seq_cobranca + and (pm.cod_tipo_plano = 4 or ic.cod_aditivo is not null+ 1) and rownum = 1) cod_plano_dental, (select nvl(ad.nom_aditivo, pm.nome_plano) + from itens_cobranca ic, aditivo ad, plano_medico pm + and ic.cod_plano = pm.cod_plano (+) + and pm.cod_tipo_plano (+) = 4 + and ic.cod_aditivo = ad.cod_aditivo (+) + and (pm.cod_tipo_plano = 4 or ic.cod_aditivo is not null+ 1) and rownum = 1) nome_plano_dental, (select sum(val_item_cobranca) + inner join plano_medico pm + on ic.cod_plano = pm.cod_plano + where ic.num_seq_cobranca = co.num_Seq_cobranca + and pm.cod_tipo_plano = 1 + and ic.cod_grupo_rubrica in (1, 2,9) + and ic.cod_aditivo is null + and ic.cod_tipo_rubrica not in (45, 46, 244)) Val_medico, + nvl((select sum(val_item_cobranca) + and ic.cod_grupo_rubrica not in (1, 2,6,9) + and ic.cod_tipo_rubrica not in (45, 46, 244)),0) Val_out+ 1ros, nvl((select sum(val_item_cobranca) valor + from itens_cobranca ic, plano_medico pm + where ic.num_seq_cobranca = co.num_Seq_cobranca + and ic.cod_plano = pm.cod_plano + and ic.cod_grupo_rubrica in (1, 2,9) + and ic.cod_tipo_rubrica not in (45, 46, 244) + and pm.cod_tipo_plano = 4),0) + + from itens_cobranca ic, aditivo ad + and ic.cod_grupo_rubrica = 6 + and ic.cod_aditivo = ad.cod_aditivo),0) val_dental, + and ic.cod_tipo_rubrica in (46, 244)) val_taxas, + and ic.cod_tipo_rubrica in (45)) val_mensalidade_associa+ 1tiva, (select sum(nvl(val_item_pagar, 0)) + and ic.cod_tipo_rubrica not in (45, 46, 244)) Val_net_medi+ 1co, nvl((select sum(val_item_pagar) valor + and pm.cod_tipo_plano = 4),0) + + and ic.cod_aditivo = ad.cod_aditivo),0) val_net_denta+ 1l, ge.cod_grupo_empresa, + ge.nome_grupo_empresa, + (DECODE(fa.nom_logradouro, NULL, NULL, fa.nom_logradouro + 1 || ' ') || DECODE(fa.num_endereco, NULL, NULL, fa.num_endereco + 1 || ', ') || DECODE(fa.txt_complemento, NULL, NULL, fa.txt_complemento + 1 || ' - ') || DECODE(fa.num_cep, NULL, NULL, fa.num_cep + 1 || ' - ') || DECODE(fa.nome_bairro, NULL, NULL, fa.nome_bairro + 1 || ' - ') || DECODE(fa.nome_cidade, NULL, NULL, fa.nome_cidade + 1 || ' - ') || DECODE(fa.sgl_uf, NULL, NULL, fa.sgl_uf) ) endereco,+ (SELECT '('||becon.num_ddd||')' ||' '||becon.num_telefone + 1 FROM beneficiario_contato becon + WHERE becon.cod_entidade_ts = be.cod_entidade_ts + AND becon.ind_class_contato in ('T','C') + 1 AND becon.num_telefone IS NOT NULL + AND ROWNUM = 1) telefone, + NVL((SELECT 'S' + 1 FROM acao_jud_pgto + WHERE dt_ini_acao <= TRUNC(SYSDATE) + AND (dt_fim_acao > TRUNC(SYSDATE) OR dt_fim_acao IS NU+ 1LL) AND cod_ts = be.cod_ts + AND rownum =1), 'N') acao_judicial, + 1 to_char(ce.data_inicio_vigencia, 'dd/mm/rrrr') dt_ini_vigencia+ 1, to_char(be.data_inclusao, 'dd/mm/rrrr') data_inclusao, + 1 nvl(es.num_cpf, fa.num_cpf) NUM_CPF, + (SELECT dia_vencimento from associado a where a.cod_ts = be.cod+ 1_ts and rownum = 1) DIA_VENCIMENTO, (SELECT end_email + FROM beneficiario_contato + WHERE cod_entidade_ts = be.cod_entidade_ts + AND ind_class_contato = 'E' + 1 AND ROWNUM = 1) email, + coalesce(es_corr.nome_entidade,es_corrPj.nome_entidade) nome_co+ 1rretor, reg.nome_regional regiao, + ce.num_contrato_operadora , + ent_bene.data_nascimento , + ts_calcula_idade(ent_bene.data_nascimento, cf.mes_ano_ref, 'A+ 1') as idade , be.num_associado_operadora as Marca_otica_Medico , + 1 (select num_associado_operadora + from associado_aditivo ad, + aditivo adi, + contrato_aditivo ca, + grupo_aditivo ga + where ca.cod_ts_contrato = ad.cod_ts_contrato + and ca.dt_ini_vigencia <= ad.dt_ini_vigencia + and ca.cod_aditivo = ad.cod_aditivo + and ca.cod_ts_contrato_aditivo is not null + and ad.cod_aditivo = adi.cod_aditivo + and adi.cod_grupo_aditivo = ga.cod_grupo_aditivo + and ga.cod_grupo_aditivo = 1 + and ad.cod_ts = be.cod_ts) as marca_otica_dental, + : 1(select ass.data_reativacao from associado ass where cod_ts = be.cod_ts) as d+ 1ata_reativacao, (select mea.nome_motivo_exc_assoc from motivo_exclusao_assoc mea, beneficiar+ 1io_contrato bec:n where mea.cod_motivo_exc_asso+ 1c = bec.cod_motivo_exclusao:n and bec.cod_ts + 1= be.cod_ts) as motivo_exclusao , + 1 to_char(ce.data_inicio_vigencia,'dd') as dia_vigencia, + 1 enc.nom_empresa_cartao + : 1V: 1) x order by 39, 7, 5 : 1C: 1) x order by 39, 4, 7 : 1E: 1) x order by 39, 5, 7 : 1P: 1) x order by 39, 20, 7 : 1TRIM select /*rec_acompanhamento_cobranca.monta_query "resumo"*/ + mes_ano_ref + , mes_ano_ref_order + , ind_estado_cobranca + , situacao + , nome_estado_cobranca + , sum(nvl(val_a_pagar, 0)) val_a_pagar + , sum(nvl(val_pago, 0)) val_pago + , sum(nvl(val_desconto, 0)) val_desconto + , sum(nvl(val_saldo, 0)) val_saldo + from ( select + op.nom_operadora + , su.nome_sucursal + , ip.nome_inspetoria + , ce.num_contrato_editado num_contrato_editado + , nvl(nvl(es.nome_entidade, bent.nome_entidade), ge.nome_grupo+ 1_empresa) nome_entidade , es.nome_entidade nome_empresa + , nvl(co.dt_vencimento_orig,co.dt_vencimento) dt_vencimento_or+ 1der , to_char(co.dt_emissao,'dd/mm/rrrr') dt_emissao + , to_char(co.dt_vencimento,'dd/mm/rrrr') dt_vencimento + , to_char(co.dt_baixa,'dd/mm/rrrr') dt_baixa + , to_char(co.dt_registro_baixa,'dd/mm/rrrr') dt_registro_baixa+ , to_char(co.dt_cancelamento,'dd/mm/rrrr') dt_cancelamento + , co.txt_nosso_numero + , fa.num_fatura + , tc.nom_tipo_ciclo + , to_char(cf.mes_ano_ref, 'mm/rrrr') mes_ano_ref + , tcob.nome_tipo_cobranca + , co.ind_tipo_baixa + , tb.nome_tipo_baixa + , nvl(co.val_a_pagar, 0) val_a_pagar + , nvl(co.val_pago, 0) val_pago + , case when co.ind_estado_cobranca = '1' and co.val_pago < co.+ 1val_a_pagar then co.val_a_pagar - co.val_pago when 1 = 1 then 0 + end val_desconto + , case when co.ind_estado_cobranca = '6' and co.val_pago < co.+ 1val_a_pagar then co.val_a_pagar - co.val_pago end val_saldo + , null nom_arquivo + , co.cod_banco + , co.ind_estado_cobranca + , case when co.dt_baixa is not null and co.ind_estado_cobranca+ 1 = '1' then 'P' when co.dt_vencimento < trunc(sysdate) and co.ind_estad+ 1o_cobranca in ('0','3') then 'Ve' when co.dt_vencimento >= trunc(sysdate) and co.ind_esta+ 1do_cobranca in ('0','3') then 'Vi' when co.dt_cancelamento is not null then 'C' + when co.ind_estado_cobranca = '4' then 'Rn' + when co.ind_estado_cobranca = '6' then 'BP' + end situacao + , sc.nome_estado_cobranca + , cf.mes_ano_ref mes_ano_ref_order + ) group by mes_ano_ref , mes_ano_ref_order , ind_estado_cobranca , situacao , nome_estado_cobranca order by mes_ano_ref_order desc from contrato_empresa ce, cobranca co, entidade_sistema es, beneficiario_entidade bent, ciclo_faturamento cf, tipo_ciclo tc, tipo_cobranca tcob, fatura fa, operadora op, sucursal su, inspetoria ip, tipo_baixa tb, cedente_sur ced, cedente_sur cedcc , motivo_cancelamento mot, grupo_empresa ge, contrato_empresa ce_ge, tipo_contrato tcon, regra_empresa rg, cms_equipe_vendas eq, situacao_cobranca sc, ppf_operadoras ppf_op, situacao_contrato scon, beneficiario be, ppf_proposta ppf, entidade_sistema es_corr, corretor_venda cov, pj_proposta pj, entidade_sistema es_corrPj, corretor_venda covPj, regional reg, situacao_associado sass, beneficiario_entidade ent_bene, empresa_contrato enc where ce.cod_ts_contrato = co.cod_ts_contrato and ce.cod_titular_contrato = es.cod_entidade_ts(+) and ce.cod_titular_contrato_pf = bent.cod_entidade_ts(+) and co.num_ciclo_ts = cf.num_ciclo_ts and cf.cod_tipo_ciclo = tc.cod_tipo_ciclo and co.cod_tipo_cobranca = tcob.cod_tipo_cobranca and co.num_seq_fatura_ts = fa.num_seq_fatura_ts(+) and co.ind_tipo_baixa = tb.ind_tipo_baixa(+) and co.cod_operadora = op.cod_operadora and ce.cod_operadora_contrato = ppf_op.cod_operadora and ce.ind_situacao = scon.ind_situacao and co.dt_emissao is not null and co.cod_ts = be.cod_ts (+) and be.ind_situacao = sass.ind_situacao (+) and co.cod_sucursal = su.cod_sucursal and co.cod_inspetoria_ts = ip.cod_inspetoria_ts and co.cod_banco = ced.cod_banco(+) and co.num_seq_cedente = ced.num_seq_cedente(+) and co.cod_banco_dcc = cedcc.cod_banco(+) and co.num_seq_cedente_dcc = cedcc.num_seq_cedente(+) and ce.cod_cancelamento = mot.cod_cancelamento(+) and co.cod_grupo_empresa = ge.cod_grupo_empresa(+) and ge.cod_ts_contrato = ce_ge.cod_ts_contrato(+) and ce.cod_tipo_contrato = tcon.cod_tipo_contrato(+) and ce.tipo_empresa = rg.tipo_empresa(+) and ce.cod_equipe_posvenda = eq.cod_equipe_vendas(+) and be.num_seq_proposta_ts = ppf.num_seq_proposta_ts(+) and ppf.cod_produtor_ts = cov.cod_corretor_ts(+) and cov.cod_entidade_ts = es_corr.cod_entidade_ts(+) and ce.num_seq_proposta_pj_ts = pj.num_seq_proposta_pj_ts(+) and pj.cod_produtor_ts = covPj.cod_corretor_ts(+) and covPj.cod_entidade_ts = es_corrPj.cod_entidade_ts(+) and ce.cod_regional = reg.cod_regional(+) and co.ind_estado_cobranca = sc.ind_estado_cobranca(+) and ce.cod_ts_contrato = enc.cod_ts_contrato(+) and be.cod_entidade_ts = ent_bene.cod_entidade_ts(+) and ce.cod_tipo_contrato in ( select /*+cardinality( x 20 )*/ *:n + from ta+ 1ble(cast(top_utl_padrao.Split(::pCodTipoContrato ,',') as LST_VARCHAR_4K))x:n+ ) + + 1 and nvl(::pCodTipoContrato, 0) = 0 + : 1!=: 1S and nvl(cred.ind_estado_credito, 1) = + and co.cod_ts_contrato = ::pCodTsContrato + and nvl(::pCodTsContrato, 'X') = 'X' + and co.cod_entidade_ts = ::pCodEntidadeTs + and nvl(::pCodEntidadeTs, 0) = 0 + and co.cod_ts = ::pCodTs + and nvl(::pCodTs, 0) = 0 + : 1A and be.ind_situacao in('A') : 1ELSIF and be.ind_situacao = 'S' and be.ind_situacao = 'E' and co.cod_prestador_ts = ::pCodPrestadorTs + and nvl(::pCodPrestadorTs, 0) = 0 + and co.cod_tipo_cobranca = ::pCodTipoCobranca + and nvl(::pCodTipoCobranca, 0) = 0 + and co.ind_tipo_baixa = ::pIndTipoBaixa + and nvl(::pIndTipoBaixa, 0) = 0 + and co.dt_emissao >= to_date(::pDtIniEmissao,'dd/mm/rrrr') + and nvl(::pDtIniEmissao, 'X') = 'X' + and co.dt_emissao <= to_date(::pDtFimEmissao,'dd/mm/rrrr') + and nvl(::pDtFimEmissao, 'X') = 'X' + and co.dt_vencimento >= to_date(::pDtIniVencimento,'dd/mm/rrrr') + and nvl(::pDtIniVencimento, 'X') = 'X' + and co.dt_vencimento <= to_date(::pDtFimVencimento,'dd/mm/rrrr') + and nvl(::pDtFimVencimento, 'X') = 'X' + and co.dt_baixa >= to_date(::pDtIniPagamento,'dd/mm/rrrr') + and nvl(::pDtIniPagamento, 'X') = 'X' + and co.dt_baixa <= to_date(::pDtFimPagamento,'dd/mm/rrrr') + and nvl(::pDtFimPagamento, 'X') = 'X' + and co.dt_registro_baixa >= to_date(::pDtIniLiquidacao||' 00::00::00' ,'dd+ 1/mm/rrrr hh24::mi::ss') and nvl(::pDtIniLiquidacao, 'X') = 'X' + and co.dt_registro_baixa <= to_date(::pDtFimLiquidacao||' 23::59::59','dd+ 1/mm/rrrr hh24::mi::ss') and nvl(::pDtFimLiquidacao, 'X') = 'X' + and co.dt_cancelamento >= to_date(::pDtIniCancelamento||' 00::00::00','dd/+ 1mm/rrrr hh24::mi::ss') and nvl(::pDtIniCancelamento, 'X') = 'X' + and co.dt_cancelamento <= to_date(::pDtFimCancelamento||' 23::59::59','dd/+ 1mm/rrrr hh24::mi::ss') and nvl(::pDtFimCancelamento, 'X') = 'X' + and co.dt_competencia >= to_date(::pDtIniCompetencia,'dd/mm/rrrr') + and nvl(::pDtIniCompetencia, 'X') = 'X' + and co.dt_competencia <= to_date(::pDtFimCompetencia,'dd/mm/rrrr') + and nvl(::pDtFimCompetencia, 'X') = 'X' + and co.num_seq_cobranca = ::pNumSeqCobranca + and nvl(::pNumSeqCobranca, 0) = 0 + and co.num_seq_fatura_ts = ::pNumSeqFaturaTs + and nvl(::pNumSeqFaturaTs, 0) = 0 + and ((co.cod_tipo_cobranca != 3 and co.cod_banco = ::pCodBanco) or + (co.cod_tipo_cobranca = 3 and co.cod_banco_dcc = : 1)) and nvl(::pCodBanco, 0) = 0 + and cf.cod_tipo_ciclo = ::pCodTipoCiclo + and nvl(::pCodTipoCiclo, 0) = 0 + and cf.num_ciclo_ts = ::pNumCicloTs + and nvl(::pNumCicloTs, 0) = 0 + and co.cod_grupo_empresa = ::pSGrupoEmpresa + and nvl(::pSGrupoEmpresa, 'X') = 'X' + and ce.cod_operadora in ( select /*+cardinality( x 20 )*/ *:n + from table(cast+ 1(top_utl_padrao.Split(::pCodOperadora ,',') as LST_VARCHAR_4K))x:n + ) + and nvl(::pCodOperadora, 'X') = 'X' + and ce.cod_sucursal in ( select /*+cardinality( x 20 )*/ *:n + from table(cast(+ 1top_utl_padrao.Split(::pCodSucursal ,',') as LST_VARCHAR_4K))x:n + ) + and nvl(::pCodSucursal, 0) = 0 + and ce.cod_inspetoria_ts in ( select /*+cardinality( x 20 )*/ *:n + from ta+ 1ble(cast(top_utl_padrao.Split(::pCodInspetoriaTs ,',') as LST_VARCHAR_4K))x:n+ ) + and nvl(::pCodInspetoriaTs, 0) = 0 + and ce.cod_operadora_contrato in ( select /*+cardinality( x 20 )*/ *:n + from t+ 1able(cast(top_utl_padrao.Split(::pCodOperadoraContrato ,',') as LST_VARCHAR_4+ 1K))x:n + 1) and nvl(::pCodOperadoraContrato, 'X') = 'X' + and ce.ind_tipo_produto = ::pIndTipoProduto + and nvl(::pIndTipoProduto, '3') = '3' + and ce.tipo_empresa in ( select /*+cardinality( x 20 )*/ *:n + from table(cast(t+ 1op_utl_padrao.Split(::pIndTipoEmpresa ,',') as LST_VARCHAR_4K))x:n + ) + and nvl(::pIndTipoEmpresa, 0) = 0 + : 1F and co.cod_ts is not null + : 1J and co.cod_ts is null + and nvl(co.dt_vencimento_orig,co.dt_vencimento) != co.dt_vencimento + : 1N: 1AG: 1: 1,2: 1,3 and co.ind_tipo_cobranca in (: 1) and ( ( co.dt_baixa is not null and co.ind_estado_cobranca in ('1', '6') ) or ( co.dt_vencimento < trunc(sysdate) and co.ind_estado_cobranca in ('0', '3')+ 1 ) ( co.dt_vencimento >= trunc(sysdate) and co.ind_estado_cobranca in ('0', '3'+ 1) ) ( co.dt_cancelamento is not null ) ( co.ind_estado_cobranca = '4' ) ) :  
    • By Lucas Pedro Lopes Corrêa
      Bom dia pessoal, preciso de ajuda com um código que comecei a modificar. 
      Tenho uma pagina que exibe um formulário de consulta, e nesse formulário existem apenas duas funções, que são:
      Consultar por nota de entrega e consultar por protocolo. 
       
      Eu gostaria que quando o usuário setar a função de consulta por protocolo, apareça apenas a caixa do numero do protocolo, e que quando o usuário setar a caixa da nota de entrega apareça a caixa de talão e de numero de nota de entrega.
       
      O código da pagina de resultados é esse aqui:
      function page_render_upload() { global $wpdb; if ($_POST) { if (!function_exists('wp_handle_upload')) { require_once( ABSPATH . 'wp-admin/includes/file.php' ); } $uploadedfile = $_FILES['cf-file']; $upload_overrides = array('test_form' => false); $movefile = wp_handle_upload($uploadedfile, $upload_overrides); if ($movefile && !isset($movefile['error'])) { $arquivo = $movefile['file']; $file = fopen($arquivo, 'r'); $linha_atual = 0; $insert_ok = 0; $insert_erro = 0; while (($line = fgetcsv($file)) !== FALSE) { if ($linha_atual > 0) { $dados = $line[0]; $dados_exp = explode(";", $dados); $NUMERO_PROTOCOLO = $dados_exp[0]; $TALAO_NOTA = $dados_exp[1]; $NUMERO_NOTA = $dados_exp[2]; $DESCRICAO_SERVICO = htmlentities($dados_exp[3]); $DESCRICAO_SITUACAO = htmlentities($dados_exp[4]); $DATA_SITUACAO = $dados_exp[5]; $HORA_SITUACAO = $dados_exp[6]; $DATA_SOLICITACAO = $dados_exp[7]; $HORA_SOLICITACAO = $dados_exp[8]; $NOME_SOLICITANTE = htmlentities($dados_exp[9]); $EMAIL_SOLICITANTE = $dados_exp[10]; $TELEFONE_SOLICITANTE = htmlentities($dados_exp[11]); $CODIGO_VALIDADOR = htmlentities($dados_exp[12]); $sql = $wpdb->query("INSERT INTO {$wpdb->prefix}consulta_dado VALUES (NULL, " . "'$NUMERO_PROTOCOLO', " . "'$TALAO_NOTA'," . "'$NUMERO_NOTA'," . "'$DESCRICAO_SERVICO'," . "'$DESCRICAO_SITUACAO'," . "'$DATA_SITUACAO'," . "'$HORA_SITUACAO'," . "'$DATA_SOLICITACAO'," . "'$HORA_SOLICITACAO'," . "'$NOME_SOLICITANTE'," . "'$EMAIL_SOLICITANTE'," . "'$TELEFONE_SOLICITANTE'," . "'$CODIGO_VALIDADOR')"); if ($sql == 1) { $insert_ok++; } else { $insert_erro++; } } $linha_atual = $linha_atual + 1; } fclose($file); echo ' <div id="lost-connection-notice" class="error"> <p>Resultado da importação.<br> <span class="hide-if-no-sessionstorage"> <b>Sucesso:</b> ' . $insert_ok . '<br> <b>Erro:</b> ' . $insert_erro . ' </span> </p> </div>'; } else { echo ' <div id="lost-connection-notice" class="error"> <p>Resultado da importação.<br> <span class="hide-if-no-sessionstorage"> ' . $movefile['error'] . ' </span> </p> </div>'; } @unlink($arquivo); } echo '<div class="wrap"> <h1 class="wp-heading-inline">Cadastrar resultados de consultas</h1> <hr class="wp-header-end"> <form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post" enctype="multipart/form-data"> <div id="poststuff"> <div id="post-body" class="metabox-holder columns-1"> <div id="post-body-content"> <div id="titlediv"> <div id="titlewrap"> <label for="title"><h3>Selecione o arquivo</h3></label> <input required type="file" name="cf-file" size="40" accept=".txt"/> </div> </div> <div><input type="submit" name="cf-submitted" value="Enviar" class="button button-primary button-large"></div> </div> </div> </form> </div>'; } function page_resultado() { global $wpdb; echo '<div class="row"> <div class="col-sm-12">'; echo '<form id="upload_resume_form" action="' . esc_url($_SERVER['REQUEST_URI']) . '" method="post"> <div class="form-group"> <label for="por">Consultar por</label> <br> <span class="wpcf7-form-control-wrap por"> <select name="por" id="por" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" required> <option value="" selected>Selecione</option> <option value="protocolo">Número do Protocolo</option> <option value="notadeentrega">Número da Nota de Entrega</option> </select> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <label for="talao_nota">Informe o Talão da Nota: "C", "N" ou "A"</label> <br> <span class="wpcf7-form-control-wrap talao_nota"> <input type="text" name="talao_nota" id="talao_nota" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" /> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <label for="consulta">Informe o Número</label> <br> <span class="wpcf7-form-control-wrap consulta"> <input required type="text" name="consulta" id="consulta" class="wpcf7-form-control wpcf7-text wpcf7-validates-as-required input-lg form-control" aria-required="true" aria-invalid="false" /> </span> <br> <span class="help-block"></span> </div> <div class="form-group"> <div class="col-sm-12"> <input type="submit" name="cf-submitted" value="Consultar" class="wpcf7-form-control wpcf7-submit btn btn-lg btn-primary"> </div> </div> </form>'; if ($_POST) { if (empty($_POST['por'])) { exit; } if ($_POST['por'] == 'protocolo') { $where = " NUMERO_PROTOCOLO = '" . $_POST['consulta'] . "' "; } else { $where = " NUMERO_NOTA = '" . $_POST['consulta'] . "' "; } if (isset($_POST['talao_nota']) && $_POST['talao_nota'] != '') { $where .= " AND TALAO_NOTA = '" . $_POST['talao_nota'] . "' "; } $sql = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}consulta_dado WHERE $where ORDER BY ID DESC LIMIT 1"); echo '<div class="row"> <div class="col-sm-12"> <h4 class="wp-heading-inline">Resultado</h4> <p>'; $total = count($sql); if ($total == 1) { foreach ($sql as $row) { /* * Alterar nome dos serviços */ $servico = "Não informado"; if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null) { if ($row->DESCRICAO_SERVICO == 'CRC') { $servico = "CRC"; } else if ($row->DESCRICAO_SERVICO == 'Certidao') { $servico = "Certidão"; } else if ($row->DESCRICAO_SERVICO == 'Pessoas Juridicas') { $servico = "Pessoas Jurídicas"; } else if ($row->DESCRICAO_SERVICO == 'Titulos e Documento') { $servico = "Títulos e Documento"; } else if ($row->DESCRICAO_SERVICO == 'Registro Especial') { $servico = "Registros Especiais (Livro E)"; } else if ($row->DESCRICAO_SERVICO == 'Apostilamento') { $servico = "Apostilamento"; } } if ($row->NOME_SOLICITANTE != '' || $row->NOME_SOLICITANTE != null) echo '<b>Solicitante:</b> ' . $row->NOME_SOLICITANTE . '<br>'; if ($row->DESCRICAO_SERVICO != '' || $row->DESCRICAO_SERVICO != null) echo '<b>Serviço:</b> ' . $servico . '<br>'; if ($row->NUMERO_NOTA > 0 || $row->NUMERO_NOTA != null) echo '<b>Número da nota de entrega:</b> ' . $row->NUMERO_NOTA . '<br>'; if ($row->NUMERO_PROTOCOLO > 0 || $row->NUMERO_PROTOCOLO != null) echo '<b>Número do protocolo:</b> ' . $row->NUMERO_PROTOCOLO . '<br>'; if ($row->DATA_SOLICITACAO != '' || $row->DATA_SOLICITACAO != null) echo '<b>Data da Solicitação:</b> ' . $row->DATA_SOLICITACAO . '<br>'; if ($row->DESCRICAO_SITUACAO != '' || $row->DESCRICAO_SITUACAO != null) echo '<b>Situação:</b> ' . $row->DESCRICAO_SITUACAO . '<br>'; if ($row->DATA_SITUACAO != '' || $row->DATA_SITUACAO != null) echo '<b>Data da ultima atualização:</b> ' . $row->DATA_SITUACAO . '<br>'; if ($row->HORA_SITUACAO != '' || $row->HORA_SITUACAO != null) echo '<b>Horário da ultima atualização:</b> ' . $row->HORA_SITUACAO . '<br>'; } }else { echo "Nenhum resultado localizado."; } } echo '</p></div></div>'; echo '</div> </div>'; } add_shortcode('consulta_lista', 'page_resultado'); Caso saibam aonde estou errando, gostaria que me falassem.
       
      Esse é meu primeiro post aqui no fórum, espero que tenha feito certo. Obrigado!
       
       
       
       
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.