Como Mesclar Linhas de um Dbgrid?
olá Amigos,
Procurei no fórum algum tópico que tratasse do assunto, mas não encontrei nenhum... entao decidi postar.
Eu tenho uma Agenda, e eu Gostaria de Mesclar as linhas de todos os registos do mesmo horario.
tipo mesclar as linhas da hora... tipo assim.
alguém tem alguma idéia?
fico grato pela ajuda..
Procurei no fórum algum tópico que tratasse do assunto, mas não encontrei nenhum... entao decidi postar.
Eu tenho uma Agenda, e eu Gostaria de Mesclar as linhas de todos os registos do mesmo horario.
tipo mesclar as linhas da hora... tipo assim.
alguém tem alguma idéia?
fico grato pela ajuda..
Daniel Martins
Curtidas 0
Respostas
Carlosrm
11/12/2008
dAniel S Martins,
não compreendi o termo ´mesclar´, por isso vai um palpite meio pelo rumo...
experimente selecionar apenas os registros com o horário desejado (use um filter ou uma sql com a cláusula ´where´, por exemplo...)
Assim, na dbGrid só aparecerão os registros com o mesmo horário. Por aí, acho que já fica mais fácil tomar alguma decisão sobre esses horários.
Sugestão mais segura: Numa tabela de Agendamento, no evento OnBeforePost, verifique se o horário já não está marcado. Se já estiver marcado, mude para um horário que esteja vago. Desse modo, você evita gravar na tabela horários repetidos e não precisará ´mesclar´ esses registros...
Se for, por exemplo, uma Clínica Médica, com vários médicos, poderia haver diversas consultas no mesmo horário, mas com profissionais diferentes. Nesse caso, no OnBeforePost você pesquisaria usando como chave o médico +a data +o horário.
Há outras possibilidades e outros colegas terão sugestões melhores. Mas, como eu ´falei´, nem sei se entendi direito.
espero que seja útil.
carlosrm
não compreendi o termo ´mesclar´, por isso vai um palpite meio pelo rumo...
experimente selecionar apenas os registros com o horário desejado (use um filter ou uma sql com a cláusula ´where´, por exemplo...)
Assim, na dbGrid só aparecerão os registros com o mesmo horário. Por aí, acho que já fica mais fácil tomar alguma decisão sobre esses horários.
Sugestão mais segura: Numa tabela de Agendamento, no evento OnBeforePost, verifique se o horário já não está marcado. Se já estiver marcado, mude para um horário que esteja vago. Desse modo, você evita gravar na tabela horários repetidos e não precisará ´mesclar´ esses registros...
Se for, por exemplo, uma Clínica Médica, com vários médicos, poderia haver diversas consultas no mesmo horário, mas com profissionais diferentes. Nesse caso, no OnBeforePost você pesquisaria usando como chave o médico +a data +o horário.
Há outras possibilidades e outros colegas terão sugestões melhores. Mas, como eu ´falei´, nem sei se entendi direito.
espero que seja útil.
carlosrm
GOSTEI 0
Daniel Martins
11/12/2008
olá amigo, é mais ou menos por aí mesmo.
mas o fato de eu quere ´mesclar´ as células do dbgrid é por que queria achar uma forma de poder visualizar todos os horarios do dia, sem precisar filtrar em uma query.
tippo listar todos os horarios agrupados por hora:
tipo assim..
mas o fato de eu quere ´mesclar´ as células do dbgrid é por que queria achar uma forma de poder visualizar todos os horarios do dia, sem precisar filtrar em uma query.
tippo listar todos os horarios agrupados por hora:
08:00 | Fulano | Beltrano 08:30 |Tomaz | Osmar 9:00 | ... |.. |..
tipo assim..
GOSTEI 0
Rpdesign
11/12/2008
bom dia amigos, tenho duas ideias pra voce, uma é retornar na consulta(select) os valores juntos no horario, se voce usa o firebird procure saber sobre a concatenação.
ou vc pode simplesmente listar os registros ordenados para que todos os compromissos no memo horario fiquem proximos, depois desenhar no canvar em quandro sobre os registros eles ainda permaneceram em linhas separadas mais a visualizacao vai parecer que estao juntos
ou vc pode simplesmente listar os registros ordenados para que todos os compromissos no memo horario fiquem proximos, depois desenhar no canvar em quandro sobre os registros eles ainda permaneceram em linhas separadas mais a visualizacao vai parecer que estao juntos
GOSTEI 0
Micheus
11/12/2008
[b:bee820e187]DAniel S Martins[/b:bee820e187], caso vc venha as mostrar apenas os dados de um único dia, apesar de um pouco trabalhoso, talvez vc pudesse utilizar um [i:bee820e187]StringGrid[/i:bee820e187] e, neste caso, dê uma olhada neste post no [i:bee820e187]ActiveDeslphi[/i:bee820e187] que poderia lhe ser útil: [url=http://www.activedelphi.com.br/forum/viewtopic.php?p=227311#227311]Problema com StringGrid (Mesclar Células)[/url]
Abraços
Abraços
GOSTEI 0
Aeciovc
11/12/2008
vc deve fazer um Mestre detalhe!!
mestre sendo agrupado pela hora e seus respectivos detalhes!!
mestre sendo agrupado pela hora e seus respectivos detalhes!!
GOSTEI 0