112 lines
2.9 KiB
Plaintext
112 lines
2.9 KiB
Plaintext
|
|
Dim f_linr(0 To 1000) As Long
|
|
Dim f_count As Long
|
|
|
|
Private Sub BLöschen_Click()
|
|
|
|
Dim i As Integer
|
|
If MsgBox("Wollen Sie die ausgewählten Lieferungen wirklich löschen?", vbYesNo) = vbYes Then
|
|
|
|
For i = 0 To LLieferungen.ListCount - 1
|
|
If LLieferungen.Selected(i) Then
|
|
If DFirst("Gewicht", "TLieferungen", "LINR=" + Format(LLieferungen.ItemData(i))) > 0 Then
|
|
If MsgBox("Die Lieferung mit LINR=" + Format(LLieferungen.ItemData(i)) + " enthält ein Gewicht > 0. Wollen Sie sie wirklich löschen ?", vbYesNo) = vbYes Then
|
|
'Löschen
|
|
LieferscheinLöschen (LLieferungen.ItemData(i))
|
|
End If
|
|
Else
|
|
'Löschen
|
|
LieferscheinLöschen (LLieferungen.ItemData(i))
|
|
End If
|
|
End If
|
|
Next i
|
|
LLieferungen.Requery
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Sub LieferscheinLöschen(LINR1 As Long)
|
|
|
|
Dim db1 As Database
|
|
|
|
Set db1 = CurrentDb
|
|
db1.Execute ("DELETE * FROM TLieferungAbschlag WHERE LINR=" + Format(LINR1) + ";")
|
|
db1.Execute ("DELETE * FROM TLieferungen WHERE LINR=" + Format(LINR1) + ";")
|
|
|
|
End Sub
|
|
|
|
Private Sub BWeiter_Click()
|
|
|
|
TLesejahr = TLesejahr - 1
|
|
BuildList
|
|
|
|
End Sub
|
|
|
|
Private Sub BZurueck_Click()
|
|
|
|
TLesejahr = TLesejahr + 1
|
|
BuildList
|
|
|
|
End Sub
|
|
|
|
Private Sub Form_Open(Cancel As Integer)
|
|
|
|
If Month(Date) > 7 Then
|
|
TLesejahr = year(Date)
|
|
Else
|
|
TLesejahr = year(Date) - 1
|
|
End If
|
|
BuildList
|
|
|
|
End Sub
|
|
|
|
Private Sub LLieferungen_DblClick(Cancel As Integer)
|
|
|
|
If LLieferungen.ListIndex >= 0 Then
|
|
DoCmd.OpenForm "FLieferungen", , , "LINR=" + Format(LLieferungen.ItemData(LLieferungen.ListIndex + 1))
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub TLesejahr_Exit(Cancel As Integer)
|
|
|
|
BuildList
|
|
|
|
End Sub
|
|
|
|
|
|
Sub BuildList()
|
|
|
|
Dim db1 As Database
|
|
Dim rs1 As Recordset
|
|
Dim where2 As String
|
|
Dim query1 As String
|
|
Dim where1 As String
|
|
Dim order1 As String
|
|
Dim order2 As String
|
|
|
|
query1 = "SELECT LINR, Lieferscheinnummer, TLieferungen.Datum, TLieferungen.Uhrzeit, TLieferungen.SNR, TSorten.Bezeichnung, TLieferungen.MGNR, TMitglieder.Nachname, TMitglieder.Vorname, TLieferungen.Gewicht, TLieferungen.Oechsle, TLieferungen.Storniert FROM TMitglieder RIGHT JOIN (TSorten RIGHT JOIN TLieferungen ON TSorten.SNR = TLieferungen.SNR) ON TMitglieder.MGNR = TLieferungen.MGNR"
|
|
order2 = " ORDER BY LINR"
|
|
f_count = 0
|
|
where2 = "AND Year(TLieferungen.Datum)=" + Format(TLesejahr)
|
|
Set db1 = CurrentDb
|
|
Set rs1 = db1.OpenRecordset("SELECT LINR FROM TMitglieder RIGHT JOIN (TSorten RIGHT JOIN TLieferungen ON TSorten.SNR = TLieferungen.SNR) ON TMitglieder.MGNR = TLieferungen.MGNR WHERE (Lieferscheinnummer Is Null Or Nachname is null or Bezeichnung is null or Oechsle is null or Gewicht is null) " + where2 + order2)
|
|
While Not rs1.EOF
|
|
f_linr(f_count) = rs1!LINR
|
|
f_count = f_count + 1
|
|
rs1.MoveNext
|
|
Wend
|
|
rs1.Close
|
|
|
|
where1 = " WHERE LINR IN (-1,"
|
|
For i = 0 To f_count - 1
|
|
where1 = where1 + Format(f_linr(i)) + ","
|
|
Next i
|
|
where1 = Left(where1, Len(where1) - 1) + ")"
|
|
order1 = " ORDER BY LINR"
|
|
|
|
LLieferungen.RowSource = query1 + where1 + order1
|
|
LLieferungen.Requery
|
|
|
|
End Sub
|