Inserir ou atualizar dados em outra tabela e quantidade de dias de um periodo.

(gilmonteiro) #1

Como sou aprendiz no script case e na linguagem php gostaria a ajuda dos colegas para os dois problemas abaixo.

Tenho uma consulta que traz dados de duas tabelas, fiz uma ligação que abre um form. Que dar acesso a primeira tabela nele consta um botão que abre o form da tabela dois ok! O meu problema é que na tabela1 tem um campo data do contato que é para ser atualizada todas as vezes que incluir ou atualizar dados da tabela 2. Com fazer?

Nesta mesma consulta tem a coluna data do contato, como fazer em uma nova coluna para exibir a quantidade de dias entre a data do contato até a data atual.

Obg.

Gilmar Monteiro

(George Carvalho) #2
    • Quando incluir dados na tabela2 crie no evento on AfterInsert onAfterUpdate lendo a tabela1 e atualizando o campo data do contato

Quando atualizar os dados da tabela2 crie um evento onAfterUpdate lendo a tabela1 e atualizando o campo data do contato

    • Para exibir a quantidade de dias crie um campo na consulta {qtd_dias} e use a macro sc_dif_date no evento onRecord.

George Carvalho

(gilmonteiro) #3

George

Quero pegar a quantidade de dias entre a data do contato com a do sistema ok! agora estou um pouco confuso no macro, ele pede para informar a 1 data, acredito que seja a do contato e a 2 qual seria.

Gilmar Monteiro

(George Carvalho) #4

Gilmar

Segue um exemplo:

$data_atual = date(“d-m-y”);

$qtd_dias = sc_dif_date($data_atual, “dd-mm-aaaa”, {data_contrato, “aaaa-mm-dd”);

George Carvalho

(gilmonteiro) #5

George muito bom!

Esta dando erro de sintax, já tentei de tudo principalmente nos cochetes.

Dúvida , o formato da data atual é dá nossa máquina ou do provedor?

Gilmar …

(George Carvalho) #6

Gilmar,

E que errei na linha

$qtd_dias = sc_dif_date($data_atual, “dd-mm-aaaa”, {data_contrato, “aaaa-mm-dd”);

o correto é

$qtd_dias = sc_dif_date($data_atual, “dd-mm-aaaa”, {data_contrato}, “aaaa-mm-dd”);

George Carvalho

(gilmonteiro) #7

George

Funcionou parcialmente, quando não existe ainda a primeira data do contato, na coluna qtd_dias esta exibindo este valor “734223”

obrg

Gilmar

(George Carvalho) #8

Gilmar,

Teste antes se a data é vazia.

if (sc_date_empty({data_contrato}){
$qtd_dias = 0;
}else{
$qtd_dias = sc_dif_date($data_atual, “dd-mm-aaaa”, {data_contrato}, “aaaa-mm-dd”);
}

George Carvalho

(gilmonteiro) #9

George muito obrigado!

Outro problema é em relação a outra ajuda, por várias tentativas não consigo inserir ou atualizar dados em outra tabela. veja a msg do erro.

Undefined property: form_cad_colocacoes_educacao_apl::$colocacao_educacao
Undefined property: form_cad_colocacoes_educacao_ini::$nm_bases_mssql
in_array() [function.in-array]: Wrong datatype for second argument
Erro ao acessar o banco de dados
Field ‘nome_candidato’ doesn’t have a default value
INSERT INTO tb_candidatos (colocacao_educacao) VALUES (’’)

Gilmar

(George Carvalho) #10

Poste aqui sua rotina, fica melhor para analisá-la.

George Carvalho

(gilmonteiro) #11

Ver se te ajuda.

Na verdade o que eu quero.

Tabela1 e tabela2
Na tabela1 já existe o registro e nele constam as colunas colocadas e data_contato onde o valor da primeira tem que ser 1 e a segunda a data atual este dados serão inseridos após o preenchimento do form da tabela2 .Gostaria de fazer isto ao fechar o form da tabela2.

George,
Aproveitando estou postando, mas uma sem presa uma de cada vez.

Tenho um grid nele há uma ligação para um form neste form têm um bloco e têm um botão que insiro a informação referente ao bloco. Ai tudo bem, o problema é ao fechar o form o bloco não atualiza é preciso fechar o form e abrir-lo novamente.

Obrigadooooo!!!

Gilmar

(George Carvalho) #12

Gilmar,

Sem ver sua rotina fica difícil de dar uma sugestão.

George Carvalho