dbGrid 2 valores
Olá Pessoal...
Estou desenvolvendo um sistema pra hotel.
Preciso fazer uma agenda, tipo um dbGrid assim:
quarto 1 : quarto 2 : quarto 3 : etc...
data
01/01/05
02/01/05
03/01/05
04/01/05
05/01/05
etc...
Aí, quando o quarto estiver ocupado, ou em reserva, eu trabalharei com cores...
A questão é: Existe um componente tipo o Dbgrid, que trabalhe com os valores de data, daquele jeito ???
Aguardo respostas...
Obrigado pela Paciencia !!
Estou desenvolvendo um sistema pra hotel.
Preciso fazer uma agenda, tipo um dbGrid assim:
quarto 1 : quarto 2 : quarto 3 : etc...
data
01/01/05
02/01/05
03/01/05
04/01/05
05/01/05
etc...
Aí, quando o quarto estiver ocupado, ou em reserva, eu trabalharei com cores...
A questão é: Existe um componente tipo o Dbgrid, que trabalhe com os valores de data, daquele jeito ???
Aguardo respostas...
Obrigado pela Paciencia !!
Buck
Curtidas 0
Respostas
Adielrr
15/05/2005
Pelo que entendi, tu quer colocar uma máscara na data, é simpres na tabela dar dois clique, na lista de campos escolhe o campo data e tem uma opção com o nome de editmask e la coloca a seguinte mascara = !99/99/00;1;_
se nao for isso explica teu erro direito
se nao for isso explica teu erro direito
GOSTEI 0
Buck
15/05/2005
Não é um lance de mascara...
A questão, é que eu preciso, é como se fosse uma agenda de compromisso, ou melhor, uma planilha....
no lado direito vai ter as data,
................Quarto 1 : Quarto 2
21/01/05
22/01/05
23/01/05
etc
e em cima. como campos do dbGrid, vão os quartos.
Quando o quarto 1 estiver ocupado,dia 21 e 22, eu pintarei o Grid na posição correspondente.
A questão, é que eu preciso, é como se fosse uma agenda de compromisso, ou melhor, uma planilha....
no lado direito vai ter as data,
................Quarto 1 : Quarto 2
21/01/05
22/01/05
23/01/05
etc
e em cima. como campos do dbGrid, vão os quartos.
Quando o quarto 1 estiver ocupado,dia 21 e 22, eu pintarei o Grid na posição correspondente.
GOSTEI 0
Buck
15/05/2005
Pessoal, me ajudem, por favor ....
GOSTEI 0
Edilcimar
15/05/2005
eu aconselharia o uso de stringgrid, onde vc colocaria na coluna 0 o número do quarto, na coluna 1 a data de entrada e na coluna 2 a data prevista para a desocupação, e colocaria a cor que quizesse
GOSTEI 0
Silviogs
15/05/2005
Olá
tenho um sistema que muda a cor de uma célula quando a data é preenchida.
a rotina:
procedure TFmProcessos.DBGridTramitacaoDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
Check : TBitmap;
begin
inherited;
TDBSuperGrid(Sender).Canvas.Brush.Color := clGray;
if (Column.Index = 0) and (not (gdFixed in State)) then begin
with DM do
if QryTramitacaoDTTRAMITAcao.Value <> 0 then begin
try
Check := TBitMap.Create;
Check.LoadFromResourceName(HInstance, ´IMG_GRID_CHECK´);
TDBSuperGrid(Sender).Canvas.Draw((Rect.Right - Rect.Left - Check.Width) div 2 + Rect.Left , Rect.Top, Check);
finally
Check.Free;
end;
end
else begin
try
Check := TBitMap.Create;
Check.LoadFromResourceName(HInstance, ´IMG_GRID_UNCHECK´);
TDBSuperGrid(Sender).Canvas.Draw((Rect.Right - Rect.Left - Check.Width) div 2 + Rect.Left , Rect.Top, Check);
finally
Check.Free;
end;
end; // if - else...
end;
// esta é a parte da rotina para mudar a cor da célula
if (Column.Index = 2) and (not (gdFixed in State)) then begin
if DM.QryTramitacaoDTTRAMITAcao.Value <> 0 then begin
TDBSuperGrid(Sender).Canvas.Brush.Color:= clBackGround;
TDBSuperGrid(Sender).Canvas.Font.Color:= clWindowText;
TDBSuperGrid(Sender).Canvas.FillRect(Rect);
TDBSuperGrid(Sender).DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
end;
Atenciosamente
Silvio Guedes
tenho um sistema que muda a cor de uma célula quando a data é preenchida.
a rotina:
procedure TFmProcessos.DBGridTramitacaoDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
var
Check : TBitmap;
begin
inherited;
TDBSuperGrid(Sender).Canvas.Brush.Color := clGray;
if (Column.Index = 0) and (not (gdFixed in State)) then begin
with DM do
if QryTramitacaoDTTRAMITAcao.Value <> 0 then begin
try
Check := TBitMap.Create;
Check.LoadFromResourceName(HInstance, ´IMG_GRID_CHECK´);
TDBSuperGrid(Sender).Canvas.Draw((Rect.Right - Rect.Left - Check.Width) div 2 + Rect.Left , Rect.Top, Check);
finally
Check.Free;
end;
end
else begin
try
Check := TBitMap.Create;
Check.LoadFromResourceName(HInstance, ´IMG_GRID_UNCHECK´);
TDBSuperGrid(Sender).Canvas.Draw((Rect.Right - Rect.Left - Check.Width) div 2 + Rect.Left , Rect.Top, Check);
finally
Check.Free;
end;
end; // if - else...
end;
// esta é a parte da rotina para mudar a cor da célula
if (Column.Index = 2) and (not (gdFixed in State)) then begin
if DM.QryTramitacaoDTTRAMITAcao.Value <> 0 then begin
TDBSuperGrid(Sender).Canvas.Brush.Color:= clBackGround;
TDBSuperGrid(Sender).Canvas.Font.Color:= clWindowText;
TDBSuperGrid(Sender).Canvas.FillRect(Rect);
TDBSuperGrid(Sender).DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
end;
Atenciosamente
Silvio Guedes
GOSTEI 0
Buck
15/05/2005
Olha pessoal, não é bem isso não...
As cores do DbGrid sim, valeu...
Mas eu preciso exibir TODOS OS QUARTOS, e um ´CALENDÁRIO´ ao lado
....................Quarto 1 : Quarto 2 : Quarto 3 :etc
mais
21/01/05
22/05/05
23/05/05
24/05/05
25/05/05
26/05/05
27/05/05
28/05/05
mais
Valeu pelas dicas pessoal !!!
Mas a duvida é esta..
As cores do DbGrid sim, valeu...
Mas eu preciso exibir TODOS OS QUARTOS, e um ´CALENDÁRIO´ ao lado
....................Quarto 1 : Quarto 2 : Quarto 3 :etc
mais
21/01/05
22/05/05
23/05/05
24/05/05
25/05/05
26/05/05
27/05/05
28/05/05
mais
Valeu pelas dicas pessoal !!!
Mas a duvida é esta..
GOSTEI 0
Marco Salles
15/05/2005
:arrow: Pera ai
Como esta a construção da sua tabela :?: :?: :?:
Como esta a construção da sua tabela :?: :?: :?:
GOSTEI 0
Buck
15/05/2005
tem o num de cada quarto quartos....
GOSTEI 0
Turbo Drive
15/05/2005
Na sua tabela, os campos dela são os números dos quartos? Se sim, qtos campos vc tem ?
GOSTEI 0
Marco Salles
15/05/2005
tem o num de cada quarto quartos....
Não entendi??? :cry: :cry: :cry:
GOSTEI 0
Buck
15/05/2005
Na verdade, a tabela que contem as datas para saber se o quarto vai estar ocupado, é outra. É o ´voucher´, que é um tipo de ficha de reserva. Lá tem os campos periodo, de e até. Para fazer aquele lance de planilha, eu criei um outro banco de dados, com os numeros dos quarto como campos. 1, 2, 3... Mas a tentativa não desenrolou pq eu não sou como colocar a data, como um calendário, no lado esquerdo da planilha.
[img]C:\Documents and Settings\Administrador\Desktop\buck\imagem.jpeg[/img]
[img]C:\Documents and Settings\Administrador\Desktop\buck\imagem.jpeg[/img]
GOSTEI 0
Buck
15/05/2005
pessoal, tentem me ajudar por favor....
GOSTEI 0