Atualizar a hora de um campo data/hora no evento ajaxFieldonChange

(Igor) #1

Olá Pessoal!

Eu estou com a seguinte dúvida:

Estou criando uma rotina que utiliza um campo data/hora (dd/mm/yyyy hh:mm), e eu gostaria que quando o usuário clicasse na data ou preenchesse manualmente o campo data, automaticamente o campo hora fosse preenchido com a hora atual do sistema, eu tentei fazer isso utilizando o evento ajaxFieldonChange por exemplo:

campo: {data}

{data_hora}=date(H:i);

Mas o campo hora não exibe nada (lembrando q é um campo data/hora e o SC exibe 2 inputs separados na tela um para a data e outro p/ a hora), e o curioso é que se eu dou um echo {data_hora}; o valor da hora está no campo. Será que o ScriptCase 5 não aceita esse tipo de operação?

(Cleyton Euler) #2

Não sei como o SC trata esse tipo de campo internamente e vc está atribuindo somente a hora num campo data/hora, o SC te mostra dois campo na tela, mas é um campo só.

Tentou usar campos de data e hora no lugar de data/hora?

(Igor) #3

Então Cleyton acho que me expressei mal.

Na verdade os 2 campos estão sendo preenchidos a data no click do calendário e a hora no evento ajax on change da data mas a hora não aparece. O campo é do tipo “data e hora”. Pelo que eu percebi o SC trata esse campo da seguinte forma:

Suponhamos que temos um campo do tipo “data e hora” {data} ele gera 2 inputs um com o nome {data} : Correspondente à data e o outro com o nome {data_hora} correspondente à hora. No SC4 eu conseguia atribuir valores p/ esses campos separadamente mas neste caso o SC5 não está funcionando.

(carlos) #4

Caro Igor,

Fui eu o operador que estava no chat com o senhor antes do chat cair, segue abaixo o pequeno código que desenvolvi para realizar o que o senhor deseja.
Eu fiz o evento ajax no onClick no “título” do calendario.

$antes = {inicio};
$antes = substr($antes , 0 , 10);
$hora = date(“H:i:s”);

$atual = $antes." ".$hora;

{inicio} = $atual;

Grato,
Carlos Lacerda
Suporte NetMake

(Igor) #5

Carlos,

Eu gerei o código utilizando o seu exemplo mas não funcionou, porém eu não entendi quando você diz “no evento ajax no onClick no “título” do calendario” como assim no “titulo”?? Não é no evento onClick do campo data/hora?

(carlos) #6

Igor,

Eu fiz da seguinte maneira, criei um evento ajax onClick no campo título (na minha aplicação de calendário existe tal campo) e coloquei esse codigo dentro do evento.
No caso se caso o senhor pode criar qualquer evento em qualquer campo que o codigo irá funcionar.

Carlos Lacerda

(Esquiller) #7

RESOLVIDO!!!
Depois de várias tentativas, consegui resolver essa atribuição de Campo Data-Hora com a data do sistema.

A solução ficou assim:

{CAMPO_DATAHORA} = date(“Y-m-d H:i”);

se seu campo do formulário tiver segundos é só inserir na formatação do date do PHP, assim:
{CAMPO_DATAHORA} = date(“Y-m-d H:i:s”);

simples assim.

UFA!!!

Até mais.
Esquiller