22 Aralık 2012 Cumartesi

stok takip programı(inventory tracking program)

Dim S As Long
Dim CT As Currency ' CİROLAR TOPLAMI
Dim TC As Currency ' TOPLAM CİRO
Dim EDUSUK As Currency ' EndÜŞÜK FİAT
Dim EBUYUK As Currency 'ENBÜYÜK FIAT
Dim BIRA As Currency
Dim IKIA As Currency
Dim UCA As Currency
Dim DORTA As Currency
Dim BESA As Currency
Dim ALTIA As Currency
Dim YEDIA As Currency
Dim SEKIZ As Currency
Dim DOKUZ As Currency
Dim ONA As Currency
Dim ONBIRA As Currency
Dim ONIKIA As Currency

Dim KUT As Long
Dim K As Long
Dim I As Long
Dim T As Currency 'TOPLAM KİLO
Sub TAMAMI()

BIRTOPLAM = Val(Left$(Trim(TARIHBIR), 4)) + Val(Mid$(Trim(TARIHBIR), 4, 2)) * 31 + Val(Right$(Trim(TARIHBIR), 4)) * 360
IKITOPLAM = Val(Left$(Trim(TARIHIKI), 4)) + Val(Mid$(Trim(TARIHIKI), 4, 2)) * 31 + Val(Right$(Trim(TARIHIKI), 4)) * 360

If Val(SS) > 0 Then
Dim CT As Currency: CT = 0: ' CİROLAR TOPLAMI SIFIRLANIYOR
CIRROLARTOPLAMI = 0
BUTUN.Caption = BIR + "-" + IKI + " TARİHLERİ ARASI ÜRÜN SATIŞ RAPORU"
TABLOAYAR2
For K = 0 To Val(SS) - 1
STOKLISTE.Selected(K) = True
If T > 0 Then
CT = CT + YC
TABLO2.Row = TABLO2.Row + 1
TABLO2.Col = 0: TABLO2.Text = ADI
TABLO2.Col = 1: TABLO2.Text = T
TABLO2.Col = 2: TABLO2.Text = YC
TABLO2.Col = 3: TABLO2.Text = ENDUSUKFIAT
TABLO2.Col = 4: TABLO2.Text = ENYUKSEKFIAT
TABLO2.Col = 5: TABLO2.Text = ORTALAMA
End If
Next K
CIROLARTOPLAMI = CT
End If
End Sub
Sub HAREKETEAC()
If KUT = 1 Then
Close #5: Open "HAREKET1.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 2 Then
Close #5: Open "HAREKET2.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 3 Then
Close #5: Open "HAREKET3.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If

If KUT = 4 Then
Close #5: Open "HAREKET4.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 5 Then
Close #5: Open "HAREKET5.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 6 Then
Close #5: Open "HAREKET6.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 7 Then
Close #5: Open "HAREKET7.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 8 Then
Close #5: Open "HAREKET8.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 9 Then
Close #5: Open "HAREKET9.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If
If KUT = 10 Then
Close #5: Open "HAREKET10.DAT " For Random As #5 Len =Len(HAREKETBILGI)

End If

End Sub
Sub YILBOYUNCA()
BIRTOPLAM = Val(Left$(Trim(BIR), 4)) + Val(Mid$(Trim(BIR), 4, 2)) * 31 + Val(Right$(Trim(BIR), 4)) * 360
IKITOPLAM = Val(Left$(Trim(IKI), 4)) + Val(Mid$(Trim(IKI), 4, 2)) * 31 + Val(Right$(Trim(IKI), 4)) * 360

PANO.Caption = BIR + "-" + IKI + " TARİHLERİ ARASI " + Trim(ADI) + " TOPLAMLARI"
TOPLAM = ""
YC = ""
ENDUSUKFIAT = ""
ENYUKSEKFIAT = ""
ORTALAMA = ""
T = 0: 'TOPLAM KİLO
Dim YENICIRO As Currency: YENICIRO = 0: ' TOPLAMCIRO
Dim ENDUSUK As Currency: ENDUSUK = 999999
Dim ENYUKSEK As Currency: ENYUKSEK = 0

TABLOAYAR: BIRA = 0: IKIA = 0: UCA = 0: DORTA = 0: BESA = 0: ALTIA = 0
YEDIA = 0: SEKIZ = 0: DOKUZ = 0: ONA = 0: ONBIRA = 0: ONIKIA = 0:

For KUT = 1 To 10
HAREKETEAC '***************************

For I = 1 To LOF(5) / Len(HAREKETBILGI)
If I <> 0 Then
Get #5, I, HAREKETBILGI
If Val(HAREKETBILGI.URUNNO) = Val(KAYITNO) AndVal(HAREKETBILGI.ISLENDI) = 1 And Val(HAREKETBILGI.NAKIT) = 0 Then
HT = Trim(HAREKETBILGI.HAREKETTARIHI)
HARTOPLAM = Val(Left$(Trim(HT), 4)) + Val(Mid$(Trim(HT), 4, 2)) * 31 +Val(Right$(Trim(HT), 4)) * 360

If BIRTOPLAM <= HARTOPLAM And HARTOPLAM <= IKITOPLAM Then
AY = (Mid$(Trim(HAREKETBILGI.HAREKETTARIHI), 4, 2))
If Val(AY) = 1 Then
BIRA = BIRA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 2 Then
IKIA = IKIA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 3 Then
UCA = UCA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 4 Then
DORTA = DORTA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 5 Then
BESA = BESA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 6 Then
ALTIA = ALTIA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 7 Then
YEDI = YEDIA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 8 Then
SEKIZA = SEKIZA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 9 Then
DOKUZA = DOKUZA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 10 Then
ONA = ONA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 11 Then
ONBIRA = ONBIRA + Val(HAREKETBILGI.SAFI)
End If
If Val(AY) = 12 Then
ONIKIA = ONIKIA + Val(HAREKETBILGI.SAFI)
End If
T = T + Val(HAREKETBILGI.SAFI)
YENICIRO = YENICIRO + HAREKETBILGI.SATISTUTAR:
YLIRA = Int(YENICIRO): YKURUS = Int((YENICIRO - Val(YLIRA)) * 100)
If Val(YKURUS) = 0 Then
YKURUS = "00"
End If
YC = YENICIRO: ' Trim(YLIRA) + "," + Trim(YKURUS)

Dim FIAT As Currency: FIAT = 0
FIAT = HAREKETBILGI.SATISBIRIMFIAT

YLIRA = Int(FIAT): YKURUS = Int((FIAT - Val(FIAT)) * 100)
If Val(YKURUS) = 0 Then
YKURUS = "00"
End If
FI = Trim(YLIRA) + "," + Trim(YKURUS)
'FIAT = FI

If ENDUSUK < FIAT Then
ENDUSUK = ENDUSUK
Else
ENDUSUK = FIAT
End If

If ENYUKSEK > FIAT Then
ENYUKSEK = ENYUKSEK
Else
ENYUKSEK = FIAT
End If

End If
End If
End If
Next I
Next KUT

TABLO.Row = 1
TABLO.Col = 0: TABLO.Text = "1 AY": TABLO.Col = 1: TABLO.Text = BIRA
TABLO.Row = 2
TABLO.Col = 0: TABLO.Text = "2 AY": TABLO.Col = 1: TABLO.Text = IKIA
TABLO.Row = 3
TABLO.Col = 0: TABLO.Text = "3 AY": TABLO.Col = 1: TABLO.Text = UCA
TABLO.Row = 4
TABLO.Col = 0: TABLO.Text = "4 AY": TABLO.Col = 1: TABLO.Text = DORTA
TABLO.Row = 5
TABLO.Col = 0: TABLO.Text = "5 AY": TABLO.Col = 1: TABLO.Text = BESA
TABLO.Row = 6
TABLO.Col = 0: TABLO.Text = "6 AY": TABLO.Col = 1: TABLO.Text = ALTIA
TABLO.Row = 7
TABLO.Col = 0: TABLO.Text = "7 AY": TABLO.Col = 1: TABLO.Text = YEDIA
TABLO.Row = 8
TABLO.Col = 0: TABLO.Text = "8 AY": TABLO.Col = 1: TABLO.Text = SEKIZA
TABLO.Row = 9
TABLO.Col = 0: TABLO.Text = "9 AY": TABLO.Col = 1: TABLO.Text = DOKUZA
TABLO.Row = 10
TABLO.Col = 0: TABLO.Text = "10 AY": TABLO.Col = 1: TABLO.Text = ONA
TABLO.Row = 11
TABLO.Col = 0: TABLO.Text = "11 AY": TABLO.Col = 1: TABLO.Text = ONBIRA
TABLO.Row = 12
TABLO.Col = 0: TABLO.Text = "12 AY": TABLO.Col = 1: TABLO.Text = ONIKIA
If T > 0 Then
TOPLAM = T



ENDUSUKFIAT = ENDUSUK:

ENYUKSEKFIAT = ENYUKSEK
If Val(TOPLAM) > 0 Then
Dim ORT As Currency
ORT = Val(YC) / Val(TOPLAM)


ORTALAMA = Int(ORT * 100) / 100
End If

End If

End Sub


Sub TABLOAYAR()
TABLO.Clear
TABLO.Row = 0: A = 1000
TABLO.Col = 0: TABLO.ColWidth(0) = 800: TABLO.Text = "İŞLEM AY"
TABLO.Col = 1: TABLO.ColWidth(1) = A: TABLO.Text = "TOPLAM"



End Sub
Sub TABLOAYAR2()
TABLO2.Clear
TABLO2.Row = 0: A = 1400
TABLO2.Col = 0: TABLO2.ColWidth(0) = A: TABLO2.Text = "ÜRÜN"
TABLO2.Col = 1: TABLO2.ColWidth(1) = A: TABLO2.Text = "TOPLAM KG"
TABLO2.Col = 2: TABLO2.ColWidth(2) = A: TABLO2.Text = "TOPLAM CİRO"
TABLO2.Col = 3: TABLO2.ColWidth(3) = A: TABLO2.Text = "EndÜŞÜK FİAT"
TABLO2.Col = 4: TABLO2.ColWidth(4) = A: TABLO2.Text = "ENYÜKSEK FİAT"
TABLO2.Col = 5: TABLO2.ColWidth(5) = A: TABLO2.Text = "ORTALAMA FİAT"
End Sub
Sub KAYDET()
If Val(KAYITNO) > 0 Then

STOKBILGI.ADI = ADI
STOKBILGI.BIRIM = BIRIM



STOKBILGI.BIRINCIFIAT = Trim(BIRINCIFIAT) + "," + Trim(BIRKURUS)
STOKBILGI.IKINCIFIAT = Trim(IKINCIFIAT) + "," + Trim(IKIKURUS)
STOKBILGI.MASRAF = Trim(MASRAFLIRA) + "," + Trim(MASRAFKURUS)
STOKBILGI.KONTROL = "**"
Put #3, Val(KAYITNO), STOKBILGI
Else
MsgBox " KAYIT NUMARASI SIFIR OLMAZ"
End If
End Sub
Sub KAYITOKU()
If Val(KAYITNO) > 0 Then
Get #3, Val(KAYITNO), STOKBILGI
ADI = STOKBILGI.ADI
BIRIM = STOKBILGI.BIRIM
BIRINCIFIAT = Int(Val(STOKBILGI.BIRINCIFIAT))
IKINCIFIAT = Int(Val(STOKBILGI.IKINCIFIAT))
MASRAFLIRA = Int(Val(STOKBILGI.MASRAF))

BIRKURUS = Right$(Trim(STOKBILGI.BIRINCIFIAT), 2)
IKIKURUS = Right$(Trim(STOKBILGI.IKINCIFIAT), 2)
MASRAFKURUS = Right$(Trim(STOKBILGI.MASRAF), 2)





End If
End Sub
Sub STOKLISTESI()
Close #3: Open "STOK.DAT " For Random As #3 Len = Len(STOKBILGI)
S = 0
STOKLISTE.Clear

For I = 1 To LOF(3) / Len(STOKBILGI)
Get #3, I, STOKBILGI
If STOKBILGI.KONTROL = "**" Then
STOKLISTE.AddItem Str$(I) + "=>" + STOKBILGI.ADI

S = S + 1
End If
Next I
SS = S
End Sub

Private Sub ADI_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
BIRIM.SetFocus
End If
End Sub

Private Sub ADI_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 39 And Shift = 0 Then
BIRIM.SetFocus
End If
If KeyCode = 38 And Shift = 0 Then
KAYITNO.SetFocus
End If
If KeyCode = 40 And Shift = 0 Then
BIRINCIFIAT.SetFocus
End If
End Sub

Private Sub BIR_Click()
TAKVIMPANO.Visible = True
TAKVIMPANO.Caption = "HAREKET BAŞLANGIÇ TARİHİNİ SEÇİNİZ"
TAKVIMPANO.Left = 6500
TAKVIMPANO.Top = 3500
TAKVIM.SetFocus
End Sub

Private Sub BIRIM_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
BIRINCIFIAT.SetFocus
End If
End Sub

Private Sub BIRIM_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 37 And Shift = 0 Then
ADI.SetFocus
End If
If KeyCode = 40 And Shift = 0 Then
BIRINCIFIAT.SetFocus
End If
End Sub

Private Sub BIRINCIFIAT_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
BIRKURUS.SetFocus
End If
End Sub

Private Sub BIRINCIFIAT_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 40 And Shift = 0 Then
IKINCIFIAT.SetFocus
End If
If KeyCode = 38 And Shift = 0 Then
ADI.SetFocus
End If
End Sub

Private Sub BIRKURUS_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
IKINCIFIAT.SetFocus
End If
End Sub

Private Sub Command1_Click()
Close
Unload STOK
ANAMENU.Show
End Sub







Private Sub Command2_Click()
CEVAP = MsgBox("LİSTEDE BULUNAN STOK RAPORLARI YAZILACAK . YAZILSIN MI?", 4, " BAYIROĞLU")
If CEVAP = 6 Then
Printer.Print
Printer.Print
Printer.FontSize = 10
Printer.Print Tab(95); "TARİH...:"Date
Printer.Print Tab(30); SIRKETBILGI.SIRKETADI
Printer.FontSize = 10
Printer.Print ; Tab(30); BUTUN.Caption
Printer.Print Tab(30); "-----------------------------------------------------------"
Printer.FontSize = 8
Printer.Print Tab(5); "ÜRÜN ADI"Tab(33); "SAFI"Tab(45); "CİRO";Tab(60); "EN DÜŞÜK"Tab(75); " EN YÜKSEK"Tab(90); "ORTALAMA"
Printer.Print "------------------------------------------------------------------------------------------------------------------------------------------------------------------------"

For K = 1 To 200
TABLO2.Row = K
TABLO2.Col = 0
If Trim(TABLO2.Text) <> "" Then
Printer.Print Tab(5); TABLO2.Text;
TABLO2.Col = 1: U = Len(TABLO2.Text): Printer.Print Tab(38 - U); TABLO2.Text;
TABLO2.Col = 2: U = Len(TABLO2.Text): Printer.Print Tab(50 - U); TABLO2.Text;
TABLO2.Col = 3: U = Len(TABLO2.Text): Printer.Print Tab(65 - U); TABLO2.Text;
TABLO2.Col = 4: U = Len(TABLO2.Text): Printer.Print Tab(80 - U); TABLO2.Text;
TABLO2.Col = 5: U = Len(TABLO2.Text): Printer.Print Tab(95 - U); TABLO2.Text
End If
Next K
Printer.Print "------------------------------------------------------------------------------------------------------------------------------------------------------------------------"
U = Len(Trim(CIROLARTOPLAMI))
Printer.Print Tab(5); " TOPLAM CİRO...:"Tab(50 - U); CIROLARTOPLAMI

Printer.EndDoc

End If

End Sub







Private Sub EKLE_Click()
KAYITNO = LOF(3) / Len(STOKBILGI) + 1
ADI = ""
BIRINCIFIAT = "0"
IKINCIFIAT = "0"
BIRKURUS = "00"
IKIKURUS = "00"
MASRAFLIRA = "0"
MASRAFKURUS = "00"
ALINAN = ""
SATILAN = ""
DEPODA = ""
MLIRA = ""
MKURUS = ""
ADI.SetFocus
End Sub

Private Sub EKLE_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
KAYITNO = LOF(3) / Len(STOKBILGI) + 1
ADI = ""
BIRINCIFIAT = ""
IKINCIFIAT = ""
ALINAN = ""
SATILAN = ""
DEPODA = ""
ADI.SetFocus
End If
End Sub

Private Sub EKLE_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 27 Then
Close
Unload STOK
ANAMENU.Show
End If
End Sub

Private Sub Form_Load()
TAKVIM = Date
TAKVIMPANO.Visible = False

EKR = 18
Close #1: Open "SIRKET.DAT" For Random As #1 Len = Len(SIRKETBILGI)
Get #1, 1, SIRKETBILGI
BIR = Trim(SIRKETBILGI.KURULUSTARIHI)
IKI = Date
Close #2: Open "AMBALAJ.DAT " For Random As #2 Len = Len(AMBALAJBILGI)

Close #3: Open "STOK.DAT " For Random As #3 Len = Len(STOKBILGI)


Close #4: Open "CARI.DAT " For Random As #4 Len = Len(CARIBILGI)
TABLOAYAR
TABLOAYAR2
STOKLISTESI
TAMAMI
End Sub

Private Sub IKI_Click()
TAKVIMPANO.Visible = True
TAKVIMPANO.Caption = "HAREKET BİTİŞ TARİHİNİ SEÇİNİZ"
TAKVIMPANO.Left = 6500
TAKVIMPANO.Top = 4100
TAKVIM.SetFocus

End Sub

Private Sub IKIKURUS_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
KAYIT.SetFocus
End If
End Sub

Private Sub IKINCIFIAT_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
IKIKURUS.SetFocus
End If
End Sub

Private Sub IKINCIFIAT_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 39 And Shift = 0 Then
KAYIT.SetFocus
End If
If KeyCode = 38 And Shift = 0 Then
BIRINCIFIAT.SetFocus
End If
End Sub

Private Sub KAYIT_Click()
If Val(BIRINCIFIAT) = 0 Then
BIRINCIFIAT = "0"
End If
If Val(IKINCIFIAT) = 0 Then
IKINCIFIAT = "0"
End If
If Val(MASRAFLIRA) = 0 Then
MASRAFLIRA = "0"
End If



If Len(Trim(BIRKURUS)) = 2 Then
If Len(Trim(IKIKURUS)) = 2 Then
If Len(Trim(MASRAFKURUS)) = 2 Then
KAYDET
STOKLISTESI
EKLE.SetFocus
Else
MsgBox "KURUŞ HANESİ İKİ BASAMAKLI OLMALI", 0, "BAYIROĞLU"
MASRAFKURUS = ""
MASRAFKURUS.SetFocus
End If
Else
MsgBox "KURUŞ HANESİ İKİ BASAMAKLI OLMALI", 0, "BAYIROĞLU"
IKIKURUS = ""
IKIKURUS.SetFocus
End If

Else
MsgBox "KURUŞ HANESİ İKİ BASAMAKLI OLMALI", 0, "BAYIROĞLU"
BIRKURUS = ""
BIRKURUS.SetFocus
End If

End Sub

Private Sub KAYIT_KeyPress(KeyAscii As Integer)
If KeyAscii = 27 Then
Close
Unload STOK
ANAMENU.Show

End If
End Sub

Private Sub KAYITNO_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If (KAYITNO) > 0 Then
KAYITOKU

End If
End If
End Sub

Private Sub KAYITNO_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 40 And Shift = 0 Then
ADI.SetFocus
End If

End Sub

Private Sub Label15_Click()
TAKVIMPANO.Visible = False
End Sub







Private Sub STOKLISTE_Click()
S = 0

KAYITNO = Val(STOKLISTE.Text)
KAYITOKU
YILBOYUNCA

End Sub


Private Sub TAKVIM_DblClick()
If Trim(TAKVIMPANO.Caption) = "HAREKET BAŞLANGIÇ TARİHİNİ SEÇİNİZ"Then
BIR = TAKVIM
End If

If Trim(TAKVIMPANO.Caption) = "HAREKET BİTİŞ TARİHİNİ SEÇİNİZ" Then
IKI = TAKVIM
YILBOYUNCA
TAMAMI
End If
TAKVIMPANO.Visible = False


End Sub

Hiç yorum yok:

Yorum Gönder