Jump to content
andreval

resultado de consulta duplicado

Recommended Posts

Ola pessoal

 

quando faço a pesquisa de 1 palavra tudo fica certo

se fizer de duas ou mais, ele repete de acordo com o

numero de palavras pesquisadas, seque codgio

 

exemplo de resultado com duas palavras

39 | 244 | RECURSOS HUMANOS | IRPF | 2016-04-10 | 2016-04-30 | 2016-04-19 | certidão de casamento | 8f75fd02b40c418cb259a93a7c9b9a29.jpg | ARQUIVADO / DIGITALIZADO | 2016-04-10 22:25:55 | INSITE CONSULTORIA | ADM39 | 244 | RECURSOS HUMANOS | IRPF | 2016-04-10 | 2016-04-30 | 2016-04-19 | certidão de casamento | 8f75fd02b40c418cb259a93a7c9b9a29.jpg | ARQUIVADO / DIGITALIZADO | 2016-04-10 22:25:55 | INSITE CONSULTORIA | ADM

 

codigo da consulta:

//rotina de busca

$busca = @$_REQUEST["busca"];
if ($busca<>"") {
$palavra = explode(" ", $busca);
$totalPalavras = count($palavra);
for($i = 0; $i < $totalPalavras; $i++){
$consultaUsuario = @$consultaUsuario." OR $campoBusca like '%".$palavra[$i]."%'";
}
}else{
$consultaUsuario = "OR $campoBusca like '%".$busca."%'";
}
$buscaUsuario = "WHERE 1=1 ".$consultaUsuario;
echo $buscaUsuario;
$SQL = mysql_query("SELECT * FROM $tabela
$buscaUsuario
ORDER BY $tabela.$campoId DESC
LIMIT $inicio,$limite") OR DIE(mysql_error());
//sql da paginação
$consulta = mysql_query("SELECT * FROM $tabela $buscaUsuario") OR DIE(mysql_error());
//rotina de contagem de paginas
$total_registros = mysql_num_rows($consulta);
$total_paginas = Ceil($total_registros / $limite);
?>
codigo da mostra do resuldado:
<?php while($RF = mysql_fetch_array($SQL)){ ?>
<form method="post" action="<?php echo $arquivoadd?>">
<tr>
<td><?php echo $RF["hstId"];?></td>
<td><?php echo date('d/m/y', strtotime($RF["hstData"]));?></td>
<td><?php echo $RF["hstAcao"];?></td>
<td><?php echo $RF["hstTabela"];?></td>
<td><?php
if($busca == ""){
echo $RF["hstBusca"];
} else {
$pesquisa = explode(" ", $busca);
for ($i = 0; $i < count($pesquisa); $i++) {
$resposta = str_ireplace(trim($pesquisa[$i]), trim("<span style='background-color:#FFFF00'><b>$pesquisa[$i]</b></span>"), $RF["hstBusca"]);
echo $resposta;
}
}
?>
</td>
</tr>
</form>
<?php } ?>
GRATO

Share this post


Link to post
Share on other sites

estou usando mysql

 

--
-- Estrutura da tabela `tb_historico`
--
CREATE TABLE `tb_historico` (
`hstId` int(11) NOT NULL,
`hstData` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`hstAcao` varchar(1) DEFAULT NULL,
`hstTabela` text,
`hstBusca` text
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Share this post


Link to post
Share on other sites

exemplo de resultado com duas palavras


39 | 244 | RECURSOS HUMANOS | IRPF | 2016-04-10 | 2016-04-30 | 2016-04-19 | certidão de casamento | 8f75fd02b40c418cb259a93a7c9b9a29.jpg | ARQUIVADO / DIGITALIZADO | 2016-04-10 22:25:55 | INSITE CONSULTORIA | ADM39 | 244 | RECURSOS HUMANOS | IRPF | 2016-04-10 | 2016-04-30 | 2016-04-19 | certidão de casamento | 8f75fd02b40c418cb259a93a7c9b9a29.jpg | ARQUIVADO / DIGITALIZADO | 2016-04-10 22:25:55 | INSITE CONSULTORIA | ADM



exemplo do sql:


SELECT * FROM tb_historico


WHERE 1=1 OR hstBusca LIKE '%"244"%' OR hstBusca LIKE '%"DIGITALIZADO"%'

ORDER BY tb_historico.hstId DESC

LIMIT 1,50") OR DIE(mysql_error())

Share this post


Link to post
Share on other sites

Amigo, gere o busca apenas em uma instrução LIKE. Dica substitua os espaços em branco por %.

 

Algo parecido com isso

SELECT * FROM tb_historicoWHERE 1=1 OR hstBusca LIKE '%"244"%"DIGITALIZADO"%' 
ORDER BY tb_historico.hstId DESC

Share this post


Link to post
Share on other sites

obrigado pela dica, mas não funcionou, não separou nenhum resultado.

 

e o que acho o meu principal problema esta na exibição dos resultados, pois

ele acha os resultado ai quando vai para exibir ele exibi de acordo com o

numero de palavras pesquisadas, se for 2 duas vezes a pesquisa, a primeira

com a primeira paravra marcada e a segunda exibe com a segunda palavra

marcada.

 

repare dentro do FOR que esta o erro

codigo de exibição:

 

<?php while($RF = mysql_fetch_array($SQL)){ ?>
<form method="post" action="<?php echo $arquivoadd?>">
<tr>
<td><?php echo $RF["hstId"];?></td>
<td><?php echo date('d/m/y', strtotime($RF["hstData"]));?></td>
<td><?php echo $RF["hstAcao"];?></td>
<td><?php echo $RF["hstTabela"];?></td>
<td><?php
if($busca == ""){
echo $RF["hstBusca"];
} else {
$pesquisa = explode(" ", $busca);
for ($i = 0; $i < count($pesquisa); $i++) {
$resposta = str_ireplace(trim($pesquisa[$i]), trim("<span style='background-color:#FFFF00'><b>$pesquisa[$i]</b></span>"), $RF["hstBusca"]);
echo $resposta;
}
}
?>
</td>
</tr>
</form>
<?php } ?>
Grato

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.