Files
elwig-misc/wgmaster/vba/form/Form_MChargenAuswahl.frm

251 lines
5.0 KiB
Plaintext

Dim lastCNR
Private Sub BAusPlanung_Click()
Dim date1
date1 = InputBox("Geben Sie bitte das Datum ein, für welches Chargen erstellt werden sollen:", , Date)
If IsDate(date1) Then
ChargenErstellenAusPlanung (date1)
RefreshAll
End If
End Sub
Private Sub BBearbeiten_Click()
If LChargen >= 0 Then
lastCNR = LChargen
DoCmd.OpenForm "FChargen", acNormal, , "CNR=" + Format(LChargen)
End If
End Sub
Private Sub BBefuellungBeenden_Click()
If LChargen >= 0 Then
lastCNR = LChargen
ChargeBefuellungBeenden (LChargen)
RefreshAll
End If
End Sub
Private Sub BBefuellungStarten_Click()
If LChargen >= 0 Then
lastCNR = LChargen
ChargeBefuellungStarten (LChargen)
RefreshAll
End If
End Sub
Private Sub BDrucken_Click()
DoCmd.OpenForm "MChargenListe"
End Sub
Private Sub BJahrWeiter_Click()
If Not IsNull(TLesejahr) Then
TLesejahr = TLesejahr + 1
RefreshAll
End If
End Sub
Private Sub BJahrZurueck_Click()
If Not IsNull(TLesejahr) Then
TLesejahr = TLesejahr - 1
RefreshAll
End If
End Sub
Private Sub BLoeschen_Click()
If LChargen > 0 Then
If DCount("LINR", "TLieferungen", "CNR=" + Format(LChargen)) > 0 Then
MsgBox "Die ausgewählte Charge kann nicht gelöscht werden, da bereits Lieferungen zugeordnet sind!", vbCritical
Exit Sub
End If
If DCount("CNR_Parent", "TChargenHierarchie", "CNR_Parent=" + Format(LChargen)) > 0 Then
MsgBox "Die ausgewählte Charge kann nicht gelöscht werden, da aus dieser Charge andere Chargen erstellt worden sind!", vbCritical
Exit Sub
End If
If MsgBox("Wollen Sie die ausgewählte Charge wirklich löschen?", vbYesNo) = vbYes Then
Dim db1 As Database
Set db1 = CurrentDb
db1.Execute ("DELETE FROM TChargen WHERE CNR=" + Format(LChargen))
RefreshAll
End If
End If
End Sub
Private Sub BNeu_Click()
Dim CNR1 As Long
CNR1 = NeueCharge(TLesejahr)
DoCmd.OpenForm "FChargen", acNormal, , "CNR=" + Format(CNR1)
End Sub
Private Sub BUmfuellen_Click()
DoCmd.OpenForm "FChargeUmfuellen"
End Sub
Private Sub Form_Activate()
RefreshAll
End Sub
Private Sub Form_Load()
If Month(Date) < 9 Then
TLesejahr = year(Date) - 1
Else
TLesejahr = year(Date)
End If
TSortierung = "BefuellungsBeginn,Chargennummer"
lastCNR = -1
ODetailLieferungen = False
RefreshAll
End Sub
Private Sub LChargen_DblClick(Cancel As Integer)
lastCNR = LChargen
DoCmd.OpenForm "FChargen", acNormal, , "CNR=" + Format(LChargen)
End Sub
Private Sub TBSNR_Change()
RefreshAll
End Sub
Private Sub TBSNR_Click()
RefreshAll
End Sub
Private Sub TCSNR_Change()
RefreshAll
End Sub
Private Sub TLesejahr_Exit(Cancel As Integer)
RefreshAll
End Sub
Function GetFilter() As String
Dim filter1
filter1 = "Jahrgang=" + Format(TLesejahr)
If Not IsNull(TZNR) Then
filter1 = filter1 + " AND TChargen.ZNR=" + TZNR
End If
If Not IsNull(TCSNR) Then
filter1 = filter1 + " AND TChargen.CSNR=" + TCSNR
End If
If Not IsNull(TBSNR) Then
filter1 = filter1 + " AND TBehaelter.BSNR=" + TBSNR
End If
GetFilter = filter1
End Function
Function GetOrder() As String
If Not IsNull(TSortierung) Then
GetOrder = " ORDER BY " + TSortierung
Else
GetOrder = ""
End If
End Function
Sub RefreshAll()
Dim filter1
Dim query1
'query1 = "SELECT TLieferungen.CNR, TLieferungen.Lieferscheinnummer AS Lieferscheinnr, TLieferungen.Datum, Format(TLieferungen.Uhrzeit,'HH:MM') as Zeit, TMitglieder.MGNR, [Nachname]+' '+IIf(IsNull([Vorname]),'',[Vorname]) AS Mitglied, TSorten.Bezeichnung AS Sorte, TLieferungen.Gewicht, TLieferungen.Oechsle, IIf(Storniert=True,'STORNIERT',Left(TLieferungen.Anmerkung,20)) AS Info FROM TSorten INNER JOIN (TMitglieder INNER JOIN TLieferungen ON TMitglieder.MGNR = TLieferungen.MGNR) ON TSorten.SNR = TLieferungen.SNR"
query1 = "SELECT TChargen.CNR, TChargen.Chargennummer as ChNr, TChargen.Befuellungsbeginn as BefStart, TChargen.Befuellungsende as BefEnde, TChargen.BehaelterEntleertAm as Entleerg, TChargenStatus.ChargenStatus as Status, TChargen.SNR, TChargen.SANR, TQualitaetsstufen.Bezeichnung as Qualitaet, TChargen.Menge,TBehaelter.Kurzbezeichnung as Behaelter, TZweigstellen.Name as Zweigstelle FROM ((TZweigstellen RIGHT JOIN (TChargen LEFT JOIN TChargenStatus ON TChargen.CSNR = TChargenStatus.CSNR) ON TZweigstellen.ZNR = TChargen.ZNR) LEFT JOIN TBehaelter ON TChargen.BNR = TBehaelter.BNR) LEFT JOIN TQualitaetsstufen ON TChargen.QSNRVon = TQualitaetsstufen.QSNR"
filter1 = GetFilter
query1 = query1 + " WHERE " + filter1 + GetOrder
'MsgBox (query1)
LChargen.RowSource = query1
LChargen.Requery
LChargen.SetFocus
If lastCNR = -1 And LChargen.ListCount > 0 Then
'MsgBox (LChargen.ItemData(1))
LChargen = LChargen.ItemData(1)
End If
If lastCNR >= 0 Then
LChargen = lastCNR
End If
End Sub
Private Sub TSortierung_Change()
RefreshAll
End Sub
Private Sub TZNR_Change()
RefreshAll
End Sub
Private Sub Befehl88_Click()
On Error GoTo Err_Befehl88_Click
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.PrintOut acSelection
Exit_Befehl88_Click:
Exit Sub
Err_Befehl88_Click:
MsgBox Err.Description
Resume Exit_Befehl88_Click
End Sub