Ir para conteúdo
Fórum Script Brasil
  • 0

Codigos Na Dbgrid


Guest --Robinho --

Pergunta

Guest --Robinho --

ola pessoal, estou tentando montar uma tabela de aulas de praticas para a minha auto escola.

e estou tendo problema para montar essa janela.

fiz a tabela no firibird, com os seguintes dados:

antes tem a tabela de cadastros de instrutores, alunos, e veiculos.

pois a tabela da pratica saiu:

aluno referencia

instrutor referencia

veiculo referencia

data e

horario

bom mais o que eu quero saber como eu faço para que na hora que eu for marcar aula na propria grade eu click no campo disponivel da aula para marcar e aparecer o codigo do aluno?

fiz uma imagem para vocês entender melhor e me ajudar, entrem no meu MSN que esu passarei.

robinhocne@hotmail.com

Editado por Micheus
Não observação do item 3.7 das regras do forum - não digite em caixa alta
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Guest --Robinho --

Olá,

Estou precisando de uma boa ajuda!

Antes de toda a explicação, gostaria de adianta que tenho um exemplo que eu fiz e posso

mandar pelo MSN que estarei online qualquer horário:

robinhocne@hotmail.com

Estou querendo construir uma grade de horários semanais para marcar aulas:

Pois fiz 5 tabelas no banco de dados, eu uso o Interbase/Firebird

Tabela de Alunos

Tabela de instrutores

Tabela de veículos

Tabela de horários

Tabela de Aulas práticas

Eu já fiz as janelas no Delphi, atualmente eu uso o Delphi 7.

O problema é que não estou sabendo fazer, gerar horários e construir automaticamente

a grade horária de aulas práticas e gostaria que quando fosse clicado na tabela de horários,

em cada campo aparecesse o código do aluno e a categoria da aula que o mesmo iria fazer.

Se alguém puder me ajudar, eu agradeço!

Editado por Churc
Não utilize o CAPSLOCK para escrever um post, é contra as regras do fórum. "Fale assim!" "NAO ASSIM!" (;
Link para o comentário
Compartilhar em outros sites

  • 0

Robinho, primeiramente, informo que juntei os dois tópicos que você criou por tratarem sobre o mesmo assunto. Dê preferência a postar informações complementares no tópico inicial, ok?!

O problema é que não estou sabendo fazer, gerar horários e construir automaticamente a grade horária de aulas práticas e gostaria que quando fosse clicado na tabela de horários, em cada campo aparecesse o código do aluno e a categoria da aula que o mesmo iria fazer.
Bom, você não mencionou que tipo de componentes utiliza (se são os da paleta BDE, InterBase, ZeosLib ou outro), então, vou tratar simplesmente como dataset (de onde todos são derivados).

Você também não disse como as tabelas estão relacionadas, então vou exemplificar como mostrar/editar em um DBGrid uma tabela onde temos as seguintes colunas: Data, Horario, Aluno, Carro, Instrutor; já que imagino isto seria a tal grade de programação das aulas práticas.

Vejamos se estes itens lhe ajudam:

- Sugiro que para a grade, você utilize um dataset do tipo table ligado a um DBGrid (via datasource, é claro);

- Precisaremos de um dataset do tipo query para consultar cada tabela referenciada (Aluno, Carro, Instrutor) onde, em cada uma, deverá ser incluso na cláusula SELECT o campo de referência e o campo de descrição (p.e., Nome e Placa);

- Agora, no dataset principal, faremos a referência a estes dataset's de consulta (lookup); Para isso, em design-time, acesse a lista de campos do dataset principal (duplo click no componente); Agora, adicione um novo campo (botão direito -> New field...); Em Name, vamos definir NomeAluno, seguido por Type igual a String e Size conforme definido o referido campo na sua tabela de alunos; A seguir, definimos o tipo deste campo como sendo Lookup; Mais abaixo, fazemos a vinculação à consulta definindo KeyFields com o campo de referência a tabela alunos, DataSet apontando para a consulta à alunos, em Lookup Keys selecionamos o campo referenciado e em Result Field selecionamos o campo a ser apresentado no DBGrid;

- O procedimento anterior deverá ser repetido para todos os campos que serão obtidos via lista de seleção no DBGrid (Aluno, Carro e Instrutor);

- Ao DBGrid, são então adicionados os campos Data, Hora, seguido dos que foram criados como Lookup (não os "nativos");

Obs:

1) Antes de o dataset principal ser aberto, as consultas lookup's já devem estar abertas;

2) Se alguma alteração for realizada nas tabelas utilizadas como lookup neste DBGrid, as respectivas consultas tem que ser atualizadas (close e open);

Tenho a impressão que isto vai responder uma parte do que você precisa. Na pior das hipóteses, teste e veja o efeito.

Verifique e qualquer coisa, questione.

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Robinho --

ifelismente eu não entendi muito bem a seu exemplo.

deixa eu exemplifica:

na tabela das aulas:

label: alunos = primeiro edit = buscando o codigo do aluno

label: instrutores = segundo edit = buscando o codigo do instrutor

label: categoria = terceiro edit = buscando o codigo do veiculo para a categoria

depois seria essa grade de marcação de aulas praticas, no caso a tabela de horarios seria para cadastrar os horarios e datas que os instrutores poderiam dar aula.

o problema é que eu não sei quais componentes eu vou usar, se é edit ou dbgrid.

SE É EDIT OU DBGRID.

Editado por Micheus
Respeite as regras do forum. Não digite todo o texto em letres maiúsculas.
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...