30% OFF para compra e renovaÇÃo. Comprar agora

Autor Tópico: RESOLVIDO - Compara IF - Com resultado falso.  (Lida 641 vezes)

Cezar Moniz

  • Intermediário
  • ***
  • Mensagens: 111
  • Gestão da Informação
    • Gestão da Informação
    • Email
RESOLVIDO - Compara IF - Com resultado falso.
« Online: Maio 06, 2017, 06:02:59 pm »
Pessoal.

Coloquei esta ação no OnChange de um evento Ajax.
O que tem de errado na estrutura abaixo? Ja tentei mudar os TIPOS de VARIAVEIS  mas nao consigo um resultado true.

$check_sql=''; //limpa query
$tempo=0; //limpa variavel do tempo

$ano = 'ANO(S)';

$check_sql = "SELECT guarda_corrente_numeral, guarda_corrente_tempo, CODIGO_TIPO_DOCUMENTAL"
   . " FROM TB_TIPO_DOCUMENTAL"
   . " WHERE especie_documento = '" . {ESPECIE_DOCTO}. "' and codigo_tipo_documental = '". {ESPECIE_DOCTO_DET} . "'";
sc_lookup(rs, $check_sql);

{tempo}={rs[0][0]};
{tempo_corrente}={rs[0][1]};

var_dump({tempo_corrente} == $ano); --> Este $ano teria que ser {ano}?

if ({tempo_corrente} == $ano){
   somar_data({DATA_DOCTO}, 0, 0, {TEMPO}); //SOMAR ANO/

var_dump({tempo_corrente} == {ano}); -> Essa comparação nunca é verdadeira!

Onde poderia estar errado?


Abraços e obrigado
« Última modificação: Maio 09, 2017, 11:31:12 am por Cezar Moniz »
Atenciosamente,
Cezar Moniz

Jailton

  • Expert
  • *****
  • Mensagens: 2646
Re:Compara IF - Com resultado falso.
« Responder #1 Online: Maio 06, 2017, 06:43:21 pm »
Remove este seu código do Ajax OnChange e coloca este evento no OnBlur:
$_Ano='ANO(S)';

/* Macro sc_lookup */

$sql = "
SELECT
      guarda_corrente_numeral,
      guarda_corrente_tempo,
      CODIGO_TIPO_DOCUMENTAL    
FROM
      TB_TIPO_DOCUMENTAL
WHERE
      especie_documento='{ESPECIE_DOCTO}' AND codigo_tipo_documental='{ESPECIE_DOCTO_DET}'
";

sc_lookup(checar_tempo, $sql);

/* Erro no lookup */
if (FALSE === {checar_tempo[}) {
   sc_error_message("Ocorreu um erro no acesso ao banco de dados.<BR>");
}
elseif (empty({checar_tempo[})) { /* EOF */

   sc_error_message("Nenhum valor foi retornado pelo banco.<BR>");
}
else {

   /* Inclua aqui sua rotina de processamento */

   $_Tempo={checar_tempo[0][0]};
   $_Tempo_corrente={checar_tempo[0][1]};

   if ($_Tempo_corrente == $_Ano) { // Se $_Tempo_corrente = 'ANO(S)'
       somar_data({DATA_DOCTO}, 0, 0, $_Tempo)  //SOMAR ANO
   };
   
}

Código: [Selecionar]
$_Ano='ANO(S)';

/* Macro sc_lookup */

$sql = "
SELECT
      guarda_corrente_numeral,
      guarda_corrente_tempo,
      CODIGO_TIPO_DOCUMENTAL  
FROM
      TB_TIPO_DOCUMENTAL
WHERE
      especie_documento='{ESPECIE_DOCTO}' AND codigo_tipo_documental='{ESPECIE_DOCTO_DET}'
";

sc_lookup(checar_tempo, $sql);

/* Erro no lookup */
if (FALSE === {checar_tempo[}) {
sc_error_message("Ocorreu um erro no acesso ao banco de dados.<BR>");
}
elseif (empty({checar_tempo[})) { /* EOF */

sc_error_message("Nenhum valor foi retornado pelo banco.<BR>");
}
else {

/* Inclua aqui sua rotina de processamento */

$_Tempo={checar_tempo[0][0]};
$_Tempo_corrente={checar_tempo[0][1]};

if ($_Tempo_corrente == $_Ano) { // Se $_Tempo_corrente = 'ANO(S)'
    somar_data({DATA_DOCTO}, 0, 0, $_Tempo)  //SOMAR ANO
};

}
« Última modificação: Maio 06, 2017, 06:48:56 pm por Jailton »
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

Cezar Moniz

  • Intermediário
  • ***
  • Mensagens: 111
  • Gestão da Informação
    • Gestão da Informação
    • Email
Re:Compara IF - Com resultado falso.
« Responder #2 Online: Maio 08, 2017, 11:26:08 am »
Jailton.

Funcionou, perfeitamente.

Só não entendi a diferença entre o OnChange para o OnBlur no evento Ajax. Eles se comportam de modo diferente?

Abs
Atenciosamente,
Cezar Moniz

Jailton

  • Expert
  • *****
  • Mensagens: 2646
Re:Compara IF - Com resultado falso.
« Responder #3 Online: Maio 08, 2017, 11:45:24 am »
Jailton.

Funcionou, perfeitamente.

Só não entendi a diferença entre o OnChange para o OnBlur no evento Ajax. Eles se comportam de modo diferente?

Abs

Sim dependendo do campo, conteúdo, o OnChange não pega direito, ai tem que usar o OnBlur.
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

Haroldo

  • Expert
  • *****
  • Mensagens: 8441
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re:Compara IF - Com resultado falso.
« Responder #4 Online: Maio 08, 2017, 11:45:46 am »
onBlur sempre que o campo perde o foco. onChange somente quando o campo teve qualquer tipo de alteração.


Cezar Moniz

  • Intermediário
  • ***
  • Mensagens: 111
  • Gestão da Informação
    • Gestão da Informação
    • Email
RESOLVIDO Compara IF - Com resultado falso.
« Responder #5 Online: Maio 08, 2017, 12:41:45 pm »
Ok. Jailton e Haroldo.

Obrigado a ambos pela orientação.

Abs
« Última modificação: Maio 09, 2017, 11:30:59 am por Cezar Moniz »
Atenciosamente,
Cezar Moniz