Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
13/04/2018 23:02
Konu Sahibi
cevahir1
Yorumlar
3
Okunma
557
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
cevahir1

cevahir1

Aktif Üye
84843
mu.... ne.... kö....
 50
 13
 60
 09/10/2016
0
 Adana
 Öğretmen
 Ofis 2013 64 Bit
 10/04/2019,11:19
Çözüldü 
Maliyet hesaplama yapılırken hiçbir problrm yok. ama kayıtlar arası hareket edilince her defasında maliyet kadar ekleme yaparak hesaplama yapıyor. her form çağrıldığında değişkenlere 0 değeri atadım ama yine olmadı. aşağıdaki ekran örneklerini bir kayıt ilieri bir kayıt geri yaptığımda aldım..normal maliyet 36.000 gibi bir şey..

[Resim: do.php?imgf=152364950235931.jpg]



[Resim: do.php?imgf=152364950250792.jpg]


sağ üstteki açılır penceren ürün seçildiğindede maliyette artma oluyor..

yardımlarınız için şimdiden teşekkürler..




ozguryasin

ozguryasin

Uzman
9727
Öz.... Ya....
 36
 44
 1.131
 23/09/2009
613
 Bursa
 Yazılım
 Ofis 2016 32 Bit
 12/07/2019,18:00
kısa bir göz atma sonucunda  form_current olayında 

for GSayi=1 to 60  döngüsünü 1 den fazla kontrolsüz kullandığınız için oluyor bir kontrol edin isterseniz. 

1 for döngüsünde işlemde sorun yok fakat ikinci for döngüsüne girdiği vakit üst alan değerlerini tekrar hesaba katarak devam edyor. bu her seferinde tekrarlandıı için yeni ürün de seçtiğiniz için  hep artarak gidiyor.







Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
Private Sub Form_Current()

 For GSayi = 1 To 60

    Controls("mtn_tutar" & GSayi) = 0
    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)

Next

mtn_indirim = 0
mtn_net = 0
mtn_kar = 0
mtn_net = N0
mtn_maliyetek = 0
mtn_netek = 0
mtn_nettek = 0
mtn_toptek = 0


 For GSayi = 1 To 60

    Controls("mtn_tutar" & GSayi) = Controls("mtn_mik" & GSayi) * Controls("fiy" & GSayi)
    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)

Next

mtn_indirim = mtn_maliyet * mtn_oran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_kar = mtn_maliyet * mtn_karoran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_maliyetek = Nz([mtn_tutar55]) + Nz([mtn_tutar56]) + Nz([mtn_tutar57]) + Nz([mtn_tutar58]) + Nz([mtn_tutar59]) + Nz([mtn_tutar60])
mtn_netek = Nz([mtn_maliyetek]) + Nz([mtn_karek])
mtn_nettek = Nz([mtn_netek])
mtn_toptek = Nz([mtn_net]) + Nz([mtn_netek])

If acl_cap > 3500 Then
     etkal = 16
        ElseIf acl_cap > 2800 Then
        etkal = 14
            ElseIf acl_cap > 2500 Then
            etkal = 12
                Else
                    etkal = 10
 End If
 
 bombehacmi = ((0.13 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) * 2
 ghacmi = Nz([acl_hacim]) - Nz([bombehacmi])
 gboyu = (Nz([ghacmi]) * 4) / ((3.14159265 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) - 200
 tuzun = Nz([gboyu]) + 200 + (0.26 * acl_cap - 20) * 2
 cevre = 3.14159265 * Nz([acl_cap]) - (etkal * 3.14159265)
 govdea = (cevre * (gboyu + 200) * etkal * 7860) / 1000000000
 bombea = (2 * (2 * 3.14159265 * (1.174 * Nz([acl_cap]) + 1.7 * 100) * (1.174 * Nz([acl_cap]) + 1.7 * 100) * Nz([etkal]) / 1000000))
 tplagirlik = govdea + bombea
 mtn_mik4 = (govdea / 1000)
 mtn_mik5 = (govdea / 1000)

 If acl_cap = 0 Then 'tüm değerlerin silinmesi için kontrol.
    bombehacmi = 0
    ghacmi = 0
    gboyu = 0
    tuzun = 0
    cevre = 0
    govdea = 0
    bombea = 0
    tplagirlik = 0
    etkal = 0
  End If

Stop

DoCmd.Maximize

End Sub


POWER 'un Çekirgesi :=)
ozguryasin, 23-09-2009 tarihinden beri AccessTr.neT AİLESİ üyesidir.
Access'i Profesyonel Şekilde Öğrenmek İçin https://www.accesstr.net Ailesi Yeter. alkis


Site Kurallarını sorularınızın hızlı cevaplanması için kesinlikle okuyunuz.

...........
ozguryasin

ozguryasin

Uzman
9727
Öz.... Ya....
 36
 44
 1.131
 23/09/2009
613
 Bursa
 Yazılım
 Ofis 2016 32 Bit
 12/07/2019,18:00
form current olayındaki kodarı alttaki ile değiştiriseniz düzelecektir.


Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 For GSayi = 1 To 60

    Controls("mtn_tutar" & GSayi) = 0
    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)

Next

mtn_indirim = 0
mtn_net = 0
mtn_kar = 0
mtn_net = N0
mtn_maliyetek = 0
mtn_netek = 0
mtn_nettek = 0
mtn_toptek = 0


' For GSayi = 1 To 60
'
'    Controls("mtn_tutar" & GSayi) = Controls("mtn_mik" & GSayi) * Controls("fiy" & GSayi)
'    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
'    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)
'
'Next

mtn_indirim = mtn_maliyet * mtn_oran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_kar = mtn_maliyet * mtn_karoran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_maliyetek = Nz([mtn_tutar55]) + Nz([mtn_tutar56]) + Nz([mtn_tutar57]) + Nz([mtn_tutar58]) + Nz([mtn_tutar59]) + Nz([mtn_tutar60])
mtn_netek = Nz([mtn_maliyetek]) + Nz([mtn_karek])
mtn_nettek = Nz([mtn_netek])
mtn_toptek = Nz([mtn_net]) + Nz([mtn_netek])

If acl_cap > 3500 Then
     etkal = 16
        ElseIf acl_cap > 2800 Then
        etkal = 14
            ElseIf acl_cap > 2500 Then
            etkal = 12
                Else
                    etkal = 10
 End If
 
 bombehacmi = ((0.13 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) * 2
 ghacmi = Nz([acl_hacim]) - Nz([bombehacmi])
 gboyu = (Nz([ghacmi]) * 4) / ((3.14159265 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) - 200
 tuzun = Nz([gboyu]) + 200 + (0.26 * acl_cap - 20) * 2
 cevre = 3.14159265 * Nz([acl_cap]) - (etkal * 3.14159265)
 govdea = (cevre * (gboyu + 200) * etkal * 7860) / 1000000000
 bombea = (2 * (2 * 3.14159265 * (1.174 * Nz([acl_cap]) + 1.7 * 100) * (1.174 * Nz([acl_cap]) + 1.7 * 100) * Nz([etkal]) / 1000000))
 tplagirlik = govdea + bombea
 mtn_mik4 = (govdea / 1000)
 mtn_mik5 = (govdea / 1000)

 If acl_cap = 0 Then 'tüm değerlerin silinmesi için kontrol.
    bombehacmi = 0
    ghacmi = 0
    gboyu = 0
    tuzun = 0
    cevre = 0
    govdea = 0
    bombea = 0
    tplagirlik = 0
    etkal = 0
  End If

'Stop

DoCmd.Maximize


POWER 'un Çekirgesi :=)
ozguryasin, 23-09-2009 tarihinden beri AccessTr.neT AİLESİ üyesidir.
Access'i Profesyonel Şekilde Öğrenmek İçin https://www.accesstr.net Ailesi Yeter. alkis


Site Kurallarını sorularınızın hızlı cevaplanması için kesinlikle okuyunuz.

cevahir1

cevahir1

Aktif Üye
84843
mu.... ne.... kö....
 50
 13
 60
 09/10/2016
0
 Adana
 Öğretmen
 Ofis 2013 64 Bit
 10/04/2019,11:19
(14/04/2018 01:03)ozguryasin Adlı Kullanıcıdan Alıntı: form current olayındaki kodarı alttaki ile değiştiriseniz düzelecektir.


Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 For GSayi = 1 To 60

    Controls("mtn_tutar" & GSayi) = 0
    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)

Next

mtn_indirim = 0
mtn_net = 0
mtn_kar = 0
mtn_net = N0
mtn_maliyetek = 0
mtn_netek = 0
mtn_nettek = 0
mtn_toptek = 0


' For GSayi = 1 To 60
'
'    Controls("mtn_tutar" & GSayi) = Controls("mtn_mik" & GSayi) * Controls("fiy" & GSayi)
'    Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
'    mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)
'
'Next

mtn_indirim = mtn_maliyet * mtn_oran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_kar = mtn_maliyet * mtn_karoran / 100
mtn_net = Nz([mtn_maliyet]) + (Nz([mtn_kar]) - Nz([mtn_indirim]))
mtn_maliyetek = Nz([mtn_tutar55]) + Nz([mtn_tutar56]) + Nz([mtn_tutar57]) + Nz([mtn_tutar58]) + Nz([mtn_tutar59]) + Nz([mtn_tutar60])
mtn_netek = Nz([mtn_maliyetek]) + Nz([mtn_karek])
mtn_nettek = Nz([mtn_netek])
mtn_toptek = Nz([mtn_net]) + Nz([mtn_netek])

If acl_cap > 3500 Then
     etkal = 16
        ElseIf acl_cap > 2800 Then
        etkal = 14
            ElseIf acl_cap > 2500 Then
            etkal = 12
                Else
                    etkal = 10
 End If
 
 bombehacmi = ((0.13 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) * 2
 ghacmi = Nz([acl_hacim]) - Nz([bombehacmi])
 gboyu = (Nz([ghacmi]) * 4) / ((3.14159265 * (Nz([acl_cap]) - 20) * (Nz([acl_cap]) - 20)) / 1000000000) - 200
 tuzun = Nz([gboyu]) + 200 + (0.26 * acl_cap - 20) * 2
 cevre = 3.14159265 * Nz([acl_cap]) - (etkal * 3.14159265)
 govdea = (cevre * (gboyu + 200) * etkal * 7860) / 1000000000
 bombea = (2 * (2 * 3.14159265 * (1.174 * Nz([acl_cap]) + 1.7 * 100) * (1.174 * Nz([acl_cap]) + 1.7 * 100) * Nz([etkal]) / 1000000))
 tplagirlik = govdea + bombea
 mtn_mik4 = (govdea / 1000)
 mtn_mik5 = (govdea / 1000)

 If acl_cap = 0 Then 'tüm değerlerin silinmesi için kontrol.
    bombehacmi = 0
    ghacmi = 0
    gboyu = 0
    tuzun = 0
    cevre = 0
    govdea = 0
    bombea = 0
    tplagirlik = 0
    etkal = 0
  End If

'Stop

DoCmd.Maximize

Teşekkürler ayrdımınız için dediğinizi yaptım u seferde tutarları göstermedi..... kodu aşağıdaki gibi değiştirdim. istediğimi elde ettim..

teşekkürler.,


For GSayi = 1 To 60

    Controls("mtn_tutar" & GSayi) = Controls("mtn_mik" & GSayi) * Controls("fiy" & GSayi)
    'Controls("fiy" & GSayi) = Controls("acl_malz" & GSayi).Column(2)
    'mtn_maliyet = Nz(mtn_maliyet, 0) + Nz(Controls("mtn_tutar" & GSayi), 0)

Next




...........

Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü İki Tarih Ve İki Saat Arası Sorgu Formülü furens 5 242 18/06/2019, 15:28
Son Yorum: furens
Çözüldü Sorguda Tüm Kayıtlar Çıkmıyor sambay 6 249 04/06/2019, 23:21
Son Yorum: sambay
Çözüldü Formlar Arası İlişki metınaycıcek 2 168 03/06/2019, 00:32
Son Yorum: metınaycıcek
Çözüldü Excel Kitaplar Arası Geçişte Problem ertus35 20 595 11/05/2019, 02:36
Son Yorum: ertus35
Çözüldü Tablolar Arası İlişki Kurma karaca10 1 165 08/04/2019, 23:32
Son Yorum: ozanakkaya

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.