Filtered x Gravação
Estou utilizando o Filter em uma tabela de Faltas. Esse tabela disponibiliza todas as faltas de um aluno em relação a turma selecionada.
Exemplo: Seleciono a turma, ele me mostra as aulas.
Seleciono a aula, ele me mostra todos os aluno.
Tranquilo, tá funcionando com o filtered.
Minha dúvida é a seguinte: O usuário cadastrande tem que aparece em todas as faltas cadastradas. Como colocar o usuário em todas as faltas cadastradas.
Obs: Eu não posso digitar o usuário na grid. Precisa entrar na tabela automaticamente.
O usuário é obtido através de um Login (também tá funcionando!).
valeu a força!!
JR.
Exemplo: Seleciono a turma, ele me mostra as aulas.
Seleciono a aula, ele me mostra todos os aluno.
Tranquilo, tá funcionando com o filtered.
Minha dúvida é a seguinte: O usuário cadastrande tem que aparece em todas as faltas cadastradas. Como colocar o usuário em todas as faltas cadastradas.
Obs: Eu não posso digitar o usuário na grid. Precisa entrar na tabela automaticamente.
O usuário é obtido através de um Login (também tá funcionando!).
valeu a força!!
JR.
Jrjoliv2003
Curtidas 0
Respostas
Jrjoliv2003
27/06/2004
Desculpe deixe-me explicar melhor, sou novo em programação (desculpe):
1º - Quando entro no sistema, digito uma senha e o usuário (código) fica armazenado em uma variável. certo?
2º - Estou filtrando uma tabela de acordo com algumas condições. ok.
Gostaria de colocar os dados da variável de login (código) em todos os registros filtrados. Existe um campo espeçifico em cada registro para receber o valor deste login (código).
Exemplo: Se na tabela tem 250 registros, de acordo com a filtragem apararecem 20 registros. Gostaria de colocar o código de login nesses 20 registros.
Os registros filtrados não são sequaniciais na tabela.
Valeu a força!!
JR.
1º - Quando entro no sistema, digito uma senha e o usuário (código) fica armazenado em uma variável. certo?
2º - Estou filtrando uma tabela de acordo com algumas condições. ok.
Gostaria de colocar os dados da variável de login (código) em todos os registros filtrados. Existe um campo espeçifico em cada registro para receber o valor deste login (código).
Exemplo: Se na tabela tem 250 registros, de acordo com a filtragem apararecem 20 registros. Gostaria de colocar o código de login nesses 20 registros.
Os registros filtrados não são sequaniciais na tabela.
Valeu a força!!
JR.
GOSTEI 0
Luineumann
27/06/2004
se o que vc quer é gravar no campo usuário da tabela o login do usuário cadastrado coloque no evento onbeforepost da tabela:
begin
tabelausuario.value := usuario;
end;
begin
tabelausuario.value := usuario;
end;
GOSTEI 0
Jrjoliv2003
27/06/2004
Mas assim ficaria em todos os registros? Porque com a filtragem, posso editar todos e gravar todos ao emsmo tempo.
Valeu a força!!
JR.
Valeu a força!!
JR.
GOSTEI 0
Gandalf.nho
27/06/2004
Outra possiblidade é usar OnNewRecord.
GOSTEI 0
Jrjoliv2003
27/06/2004
Galera!!
Parte está resolvido.
Acessei a tabela e Coloquei no evento onChange do campo Faltou o seguinte código:
data.IBTFalFAL_FUNMATRI.Value:=data.IBQLoginUSU_FUNMATRI.Value;
A primeira parte é o campo que recebe o código do usuário.
A segunda parte é o código do usuário especificado no Login.
Tá funcionando. Beleza!!!
Mas só poderia gravar o funcionário de acesso, se fosse alterado o conteúdo da falta.
Por exemplo:
Entrei no registro = está com F (faltou).
Alterei o registro = coloquei P (presença). Nesse caso o Código do funcionário automaticamente entra no campo apropriado.
*****Me enganei e retornei o que era = coloquei F (faltou). Nesse caso teria que retornar para o código do funcionário antigo.
Como faço isso?
OBS: Eu até poderia colocar variáveis de controle. Porém no meu caso a edição de faltas é de uma turma inteira (14 alunos por exemplo).
Valeu a força!!!
JR.
Parte está resolvido.
Acessei a tabela e Coloquei no evento onChange do campo Faltou o seguinte código:
data.IBTFalFAL_FUNMATRI.Value:=data.IBQLoginUSU_FUNMATRI.Value;
A primeira parte é o campo que recebe o código do usuário.
A segunda parte é o código do usuário especificado no Login.
Tá funcionando. Beleza!!!
Mas só poderia gravar o funcionário de acesso, se fosse alterado o conteúdo da falta.
Por exemplo:
Entrei no registro = está com F (faltou).
Alterei o registro = coloquei P (presença). Nesse caso o Código do funcionário automaticamente entra no campo apropriado.
*****Me enganei e retornei o que era = coloquei F (faltou). Nesse caso teria que retornar para o código do funcionário antigo.
Como faço isso?
OBS: Eu até poderia colocar variáveis de controle. Porém no meu caso a edição de faltas é de uma turma inteira (14 alunos por exemplo).
Valeu a força!!!
JR.
GOSTEI 0
Jrjoliv2003
27/06/2004
Galera!!
Resumindo.
Tenho uma tabela onde filtro dados.
Filtrando, pode aparecer vários registros como os campos Turma, Módulo, Falta, Aluno e Funcionário.
Ativo a tabela no modo de edição para editar apenas as Faltas.
Quando clicar no gravar, gostaria de saber quais os registros alterados. O registro que foi
alterado receberá o código do funcionário que está logado.
OBS: Me indicaram trabalhar com Update e Trigger, mas não sei enem como começar.
Quem puder me ajudar!!
Valeu a força!
JR.
Resumindo.
Tenho uma tabela onde filtro dados.
Filtrando, pode aparecer vários registros como os campos Turma, Módulo, Falta, Aluno e Funcionário.
Ativo a tabela no modo de edição para editar apenas as Faltas.
Quando clicar no gravar, gostaria de saber quais os registros alterados. O registro que foi
alterado receberá o código do funcionário que está logado.
OBS: Me indicaram trabalhar com Update e Trigger, mas não sei enem como começar.
Quem puder me ajudar!!
Valeu a força!
JR.
GOSTEI 0
Jrjoliv2003
27/06/2004
Galera!!
Consegui fazer para um registro. Quando edito o registro aramzeno o valor antigo em uma variável. Na hora da gravação ele compara se houve mudança. Se houve mudança, o sistema coloca o código logado no campo funcionário. Se não houve mudança, não muda nada.
Fiz isso no evento onChange do campo da tabela.
Agora preciso fazer isso quando aparecer, por exemplo 10 registros de uma vez na DBGRid. Eu não posso sair declarando variáveis porque não a quantidade que vai aparecer.
Alguém tem alguma idéia?
Valeu a força!!!
JR.
Consegui fazer para um registro. Quando edito o registro aramzeno o valor antigo em uma variável. Na hora da gravação ele compara se houve mudança. Se houve mudança, o sistema coloca o código logado no campo funcionário. Se não houve mudança, não muda nada.
Fiz isso no evento onChange do campo da tabela.
Agora preciso fazer isso quando aparecer, por exemplo 10 registros de uma vez na DBGRid. Eu não posso sair declarando variáveis porque não a quantidade que vai aparecer.
Alguém tem alguma idéia?
Valeu a força!!!
JR.
GOSTEI 0
Jrjoliv2003
27/06/2004
Alguém tem alguma idéia, dica ou sugestão sobre o assunto?
Sei lá preciso de alguma coisa para pensar!! hehehe..
Fiz para um registro. O problema é quando tem mais de um!!
Quem puder.....
JR. :roll:
Sei lá preciso de alguma coisa para pensar!! hehehe..
Fiz para um registro. O problema é quando tem mais de um!!
Quem puder.....
JR. :roll:
GOSTEI 0
Gandalf.nho
27/06/2004
Dê uma olhada na propriedade Modified do dataset
GOSTEI 0
Jrjoliv2003
27/06/2004
Não encontrei essa propriedade!
Se puder continuar me ajudando...
Valeu a força!!!
JR.
Se puder continuar me ajudando...
Valeu a força!!!
JR.
GOSTEI 0
Gandalf.nho
27/06/2004
Essa propriedade só está disponível em runtime, dê uma olhada no help.
GOSTEI 0