Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Saatleri Sayıya Çevirme
ikosarer


Çevrimdışı
*

Üye
35
15
19/08/2011
0

İstanbul
26/03/2014, 00:46
#1
Cozuldu 
Merhaba

Ekteki dosyamda bilgi girişi yapılmış detay isimli tablom mevcut.
Detay tablom da sözleşme başlangıç tarihi ve bitiş tarihi içinde yapılan servislerin girişleri var olduğunu kabul edelim.Bu sözleşmede yapılacak işin başlangıç saati ve bitiş saati de mevcut.

* Benim yapmak istediğim iş : Sözleşme dahilinde kaç kere işlem(servis) yapılmış.
* Yapılan her işlemin başlangıç ve bitiş saatleri var.Yapılan her servisin kaç saat sürdüğünü bilmek istiyorum.(Yani Bitiş Saati - Başlangıç Saati)
* Yapılan her hareketteki harcanan saatin rakama dönüştürmek istiyorum.Şöyle ki yaptığım girişte başlangıç saati :10:00, Bitiş saati ise 14:30 yani 2 saat 30 dk yapıyor.
Ben her 2 saat tutan hareketi rakam olarak 1 servis olarak almak istiyorum. Amacım standart servis hizmetimin 2 saat olması, 2 saati geçtiğinde misal 4 saat süren bir işlem bilgisini hizmet süresinin 4 saat olduğundan rakam olarak 2 servis yazmasını istiyorum.
* saat arası kalan dakikaları da 30 dk geçmez ise o saatin başlangıcını almasını eğer 31 dk geçerse başka bir yerde genel toplam alındığında toplanarak saat hesabına dahil edilmesini istiyorum.
Örnek :
başlangıç saati 11:35 bitiş saati:17:00
harcanan zaman : 5 saat 25 Dk
Servis sayısına çevirirsek :
Her servis 2 Saat=1 servis ise, 5 saat 25 dk = 2 servis + 25 dk yapar.
saatlerin toplamında dk yı bir üst saate yuvarlamasını nasıl yapabilirim.

Saygılarımla
İsmail KOŞARER

Ek Dosyam:
Ek Dosya
saat.rar


ozanakkaya
sledgeab

Çevrimdışı
*******

Kurucu
6,984
401
29/10/2008
1940
Ozan Akkaya
Denizli
Bugün, 06:02
#2
Cozuldu 
Çözüm ararken kafama takılan soruları sormak istedim

"Her servis 2 Saat=1 servis ise, 5 saat 25 dk = 2 servis + 25 dk yapar."

5 saat 25 dakika = 2 servis + 1 saat + 25 dakika yapmaz mı.

Bahzettiğiniz hesaba göre 1 saat 40 dakikalık zamanın kaç servis yapması gerekiyor ?


5 saat 25 dakikalık zamanı sorguda sütunlarda
2 servis
1 saat
25 dakika
şeklinde göstermemiz işinizi görecek mi ?




ikosarer


Çevrimdışı
*

Üye
35
15
19/08/2011
0

İstanbul
26/03/2014, 00:46
#3
Cozuldu 
Merhaba

Her servis 2 Saat=1 servis ise, 5 saat 25 dk = 2 servis + 25 dk yapar."

5 saat 25 dakika = 2 servis + 1 saat + 25 dakika yapmaz mı.

Bahzettiğiniz hesaba göre 1 saat 40 dakikalık zamanın kaç servis yapması gerekiyor ?

*****************************************************************

Evet Ben yazarken yukarıda 1 saati unutmuşum.Özür dilerim.

Arada kalan zamanın saat cinsinden değilde toplam dk cinsinden hesaplayıp o firma için gidilen toplam servis sayısını bulurken Toplam dk.larında /120 (2 saat) şeklinde hesaplayıp değer elde edip bu değerin küsüratlı çıkması durumda misal; 0.51 veya üstü,durumlarda servis sayısına +1 , 0,50 ve aşağısı için herhangi bir yuvarlama yapmadan 0 kabul edip servis sayısıyla toplamak işimi görür diye düşünüyorum.

Örnek Yukarıdaki zamanlama üzerinden gidelim.
ilk gittiğim servis 5 saat 25 dk hizmet verilmiş.
bu hizmeti ben kayıtlarıma işlerken saat cinsinde girip sorguda veya formda kendisi

2 saat= 1 Servis kabul edecek
5 Saat;25DK: 2 servis + 1 Saat + 25 dakika

bu durumda 2 servis dışında kalan 1 saat +25 dk yı genel olarak dakikaya çevirip ayrı bir hücrede dakika hesabı olarak tutayım: 60dk(1Saat) +25Dk =85Dakida bu servisin artı süresi var
bunu 85 dk olarak dakika hücresinde tutalım.

Gene Aynı Firmaya Farkı zamanda farklı saat aralığında gitmiş olalım.
bu serviste 3 saat 40 dk hizmet verdiğimizi düşünelim

her 2 saat =1 Servis Sayısı

3 Saat 40Dk = 1 Servis + 1 Saat +40 Dk şekinde durum geliyor.

Bu durumda kalan 1 saat 40 dk.yı Dakika cinsine çeviriyorum yani 100 Dk yapıyor.
Kayıtlarıma ben Servis Sayısına 1, Dakika Hücresine 100 Dk yazıyorum.

Sonra Bu firmaya ben kaç kere gitmişim kaç servis sayısı kadar hizmet etmişim diye sorguya aldığımda ;

bu firmaya 2 kere gitmişim
Toplam (2+1) servis + (85 Dk+ 100Dk) Dakika servis bilgisi mevcut

Ben Burda Kesin rakam istediğimden 3 servis + 185 dk değilde
185dk /120 (2saat lik Servis Saati) =1,54 çıkar
Ben 1,54 lük rakamı yuvarlama yaptığımda küsüratın 051 den büyük olduğu için bu toplam dakikanın servis karşılığını 2 kabul etmesini küsüratın .50 den küçük ise +0 şeklinde olması gerekecek.Yani başındaki saati kabul edecek,Saat olmasa bile gene 0 olacak(Bazen 15 dk veya 45 dk gibi de çıkabilir).Fakat Benim toplam dakikalarım 1.54 çıktığından dolayı Servis karşılığını 2 olarak almasını ve dakikda toplamından elde ettiğim 2 rakamıyla Diğer hücredeki servis sayınını toplayıp tek bir rakam almasını istiyorum.

Servis Sayısı Toplamı :3
Dakikadan Elde Edlien servis Sayısı : 1,54 den = 2
bunların toplamı da 3+2=5

Özetle 2 kere gittiğim Firmaya 5 servislik saat/dk harcamışım.
Benim özellikle yapmak istediğim iş bu.

(2 Servis Hizmetinde = 5 Servislik Hizmet(Zaman) verilmiş.)


Yardımlarınız İçin Şimdiden Teşekkür Ederim.
Saygılarımla
İsmail KOŞARER




ayhan2122
accesstr.net , gayet net ;)

Çevrimdışı
***

Onursal Üye
674
26
30/10/2008
451

Mersin
Dün, 00:20
#4
Cozuldu 
Yeni bir modül açıp ;

Public Function ssaat(bsl As Date, bts As Date, moDkk As Integer)
Dim frk, artan, ServSat
frk = DateDiff("n", bsl, bts) '400=120+120+120+40
ServSat = Fix(frk / moDkk) '3
artan = frk - (ServSat * moDkk) '200-(3*120)

ssaat = ServSat + IIf(artan >= moDkk / 2, 1, 0)
End Function


yazın ve sorgudaki alanda bu fonksiyonu şu şekilde kullanın;

Servis: ssaat([bas_saat];[bit_saat];120)



Saygılar, iyi çalışmalar.
*********
Kod, formül vs bilmek önemlidir ama mantığını yürütebilmek, nerede ve nasıl kullanılacağını bilmek daha önemlidir.

ikosarer


Çevrimdışı
*

Üye
35
15
19/08/2011
0

İstanbul
26/03/2014, 00:46
#5
Cozuldu 
Yazdığınız modül gerçekten istediğim gibi çalıştı.Çok Teşekkür ederim.
Sormak istediğim 400 =120+120+120+40 formülünün ne anlama geldiği.
Teşekkürler İyi Çalışmalar

Kur@l
AccessTR.Net

Çevrimdışı
******

Site Yönetimi
1,976
58
05/11/2008
1629

Belirtilmemiş
Dün, 05:28
#6
Cozuldu 
'400=120+120+120+40 Kısmında Ayhan hocam kod içinde açıklama kullanmış.
' Tek tırnaktan sonra yazılanlar Visual Basicte Açıklamalardır.




 Etiketler -
 Direk Link
 HTML Link
 BBCode Link
 Sosyal Paylaş

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Cozuldu Önceki Tarihi, Bulunulan Yıla Çevirme ? SCavusoglu 3 239 16/05/2014, 22:31
Son Yorum: accessdelisi
Cozuldu dakikayı saniyeye çevirme osman06 3 646 22/01/2014, 03:23
Son Yorum: ozanakkaya
Cozuldu Hexadecimal sayıyı Decimal sayıya çevirme ucloy 2 631 25/11/2013, 11:43
Son Yorum: ucloy
Cozuldu Access Sayıyı Yazıya Çevirme naftalanj 8 4,465 23/04/2013, 08:23
Son Yorum: feyyazselim
Cozuldu 2010 nu 2003 çevirme A4177 6 850 10/04/2013, 17:48
Son Yorum: attila52



Users browsing this thread: 2 Ziyaretçi



Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2014 MyBB Group.
MyTrade theme by XSTYLED © 2014.
This forum uses Lukasz Tkacz MyBB addons.