Arkadaşlar Günaydın
aşşağıdaki kod daki if lerde sıra veri tabanımla aynı olursa bir problem yok ama veri tabanımdaki sıra ile uyuşmadığı zaman veriyi değiştirmiyor yada değiştirdigini bir daha değitiriyor.
Yani Dbgridimdeki Pazartesi kolonunun ilk sütununa bakıp ona göre hareket etmesini istiyorum. ilk sütuna bitirip bir sonraki sütuna geçecek. Ama beceremedim bir türlü. Bana yardım edebilirmisiniz?
Bunun için ne yapmalıyım
procedure TForm1.Button2Click(Sender: TObject);
begin
table1.First;
while not Table1.Eof do
begin
table1.edit; // her halükarda edit moduna geç.
if table1Pazartesi.Value = '07:00 - 15:00' then
table1pazartesi.value := '10:00 - 15:00'
else
if table1Pazartesi.Value = '10:00 - 15:00' then
table1pazartesi.value := '15:00 - 23:00'
else
if table1Pazartesi.Value = '15:00 - 23:00' then
table1pazartesi.value := '07:00 - 15:00';
table1.Post;
table1.Next;
end;
end;
(Hocam kusura bakmayın)
Arkadaşlar merhaba
Şu deyimi kod a çevirmek istiyorum ama malesef çeviremiyorum. Yardımcı olabilirseniz sevinirim.
Bunu if lerle yapmayı denedim ama dünyanın if ini yazmam gerek.
if table1Pazartesi.value := '07:00 - 15:15' ise 8.15 , '09:00 - 15:15' ise 6.15 , '10:00 - 15:15' ise 5.15 değeri hangisi ise aklında tut diğer günleride aynı şekilde kontrol edip sonuçları TableToplam kısmıda göster.
ben şu şekilde bir şey daha düşündüm ama gülmeyin ltf.
var
t:Extended;
g1:Extended;
G2:Extended;
begin
t:=0;
G1 in değeri '07:00 - 15:15' dir. Oda 8.5 a eşit
g2 nin değeri '09:00 - 15:15' dir. Oda 6.5 a eşit dir.
sanırım yapmak istedigin bir anda yapılan isin saati hangi saat dilimi arasında ise ona gore degerlendirilsin
yani saat bilgisi (yazdıgına gore table1Pazartesi TTime tipinde olacak)
07:00 ila 15:15 arasında ise(tabi bu aralıgın acık mı kapalı mı olacagıda onemli) saat 08:15 olsun
eger yanlıs anlamadıysam
saat:=Table1Pazartesi.AsDateTime
if (saat >=StrToTime(07:00) ) and (saat < StrToTime(15:15) ) then
saat:=StrToTime(08:15)
else if .......//yukardaki gibi diger saatler icinde yazılır
ilk olaak teşekkür ederim ilginize
fakat, Dbgrid de tek bir hücrede '07:00 - 15:15' yazıyor. Ayrı ayrı değil.
Ben şu şekilde bir kod yazıyorum başarılı ama bunu bir döngüye sokamıyorum ve dünyanın if ini yazmam gerek
if table1Pazartesi.value := '07:00 - 15:15' then
Table1Toplam.value = '8.15';
end;
Bu kod da hem günleri bir döngüye hemde saatleri bir döngüye sokmak lazım ama dediğim gibi dünyanın if i yazılması gerek
Daha önce yazdıgım kod da bu olamazmı ?
string uzerinde islem yapıyorsan biraz zahmetli ama
o tek hucredeki 7:15 - 15:15 ifadesini bir fonksiyonda isleyerek ikiye ayırabilir ve dedigim gibi kullanabilirsin
dongu haline de getirebilirsin
ama algoritma kurmak icin biraz kafa yormak lazım