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

Derecelendirme: 0/5 - 0 oy

cevahir1

Aktif Üye
84843
mu.... ne.... kö....
 49
 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

Uzman
9727
Öz.... Ya....
 36
 44
 1.130
 23/09/2009
613
 Bursa
 Yazılım
 Ofis 2016 32 Bit
 Bugün,09:46
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

Uzman
9727
Öz.... Ya....
 36
 44
 1.130
 23/09/2009
613
 Bursa
 Yazılım
 Ofis 2016 32 Bit
 Bugün,09:46
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

Aktif Üye
84843
mu.... ne.... kö....
 49
 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ü Excel Kitaplar Arası Geçişte Problem ertus35 20 401 11/05/2019, 02:36
Son Yorum: ertus35
Çözüldü İki Tarih Arası Ay Bazında Satır Ekleme fkilic76 6 292 06/03/2019, 09:13
Son Yorum: haliliyas
Çözüldü İki Tarih Arası Satır Ekleme Ve Veri Kaydetme fkilic76 5 206 26/02/2019, 18:04
Son Yorum: fkilic76
Çözüldü İki Tarih Arası Veri Sayma furens 6 343 25/01/2019, 15:15
Son Yorum: furens
Çözüldü Birden Fazla Ölçüt Kullanma zaferlacin 2 189 18/01/2019, 15:22
Son Yorum: zaferlacin

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