Attribute VB_Name = "mdlKassenabschluss"
Sub EintragenAlleUmsaetzeRestaurant()
    
    Dim VarSummeBar1Lokal As Currency
    Dim VarSummeBar2Lokal As Currency
    Dim VarSummeKARTE1Lokal As Currency
    Dim VarSummeKARTE2Lokal As Currency
    Dim VarSummeGUTSCHEIN1Lokal As Currency
    Dim VarSummeGUTSCHEIN2Lokal As Currency
    Dim VarSummeGesamt1Lokal As Currency
    Dim VarSummeGesamt2Lokal As Currency
    
    Dim objConn As ADODB.Connection
    Dim rsAlleUmsaetzeAbschluss As ADODB.Recordset
    Dim rsRechnungsuebersichtDatum As ADODB.Recordset
    Dim rsRechnungsuebersichtLokalAbschluss As ADODB.Recordset
    Dim rsRechnungsuebersichtAusserHausAbschluss As ADODB.Recordset
    
    Dim strPath As String
    
    Set objConn = New ADODB.Connection
    Set rsAlleUmsaetzeAbschluss = New ADODB.Recordset
    Set rsRechnungsuebersichtDatum = New ADODB.Recordset
    Set rsRechnungsuebersichtLokalAbschluss = New ADODB.Recordset
    Set rsRechnungsuebersichtAusserHausAbschluss = New ADODB.Recordset
    
    On Error GoTo err_Handler
    
    strPath = App.Path
    If Right$(strPath, 1) <> "\" Then strPath = strPath & "\"
     
    With objConn
        .Provider = "Microsoft Jet 4.0 OLE DB Provider"
        .Properties("Jet OLEDB:Database Password") = VarPasswordDatenbank
        .ConnectionString = "Data Source=" & VarDatenbank
        .CursorLocation = adUseClient
        .Open
    End With
      
    'Tabelle Rechnungsuebersicht öffnen
    With rsRechnungsuebersichtDatum
        .ActiveConnection = objConn
        .CursorLocation = adUseClient
        .LockType = adLockOptimistic
        .Open "Select Datum from Rechnungsuebersicht GROUP BY Datum"
    End With
    
    
    While Not rsRechnungsuebersichtDatum.EOF = True
        
        VarDatumLokal = rsRechnungsuebersichtDatum.Fields("Datum").Value
        VarStationLokal = "Außer Haus"
        'Tabelle Rechnungsuebersicht öffnen

        With rsRechnungsuebersichtLokalAbschluss
            .ActiveConnection = objConn
            .CursorLocation = adUseClient
            .LockType = adLockOptimistic
            .Open "Select Sum(BAR) As SummeBAR1,Sum(KARTE) As SummeKARTE1,Sum(GUTSCHEIN) AS SummeGUTSCHEIN1, Sum(Gesamt) AS SummeGesamt1 from Rechnungsuebersicht WHERE Datum=#" & Format$(VarDatumLokal, "mm-dd-yyyy") & "# and Station <> '" & VarStationLokal & "' "
        End With
        
        If rsRechnungsuebersichtLokalAbschluss.EOF = True Or rsRechnungsuebersichtLokalAbschluss.Fields("SummeGesamt1").Value = 0 Then
            VarSummeBar1Lokal = 0
            VarSummeKARTE1Lokal = 0
            VarSummeGUTSCHEIN1Lokal = 0
            VarSummeGesamt1Lokal = 0
        Else
            If IsNull(rsRechnungsuebersichtLokalAbschluss.Fields("SummeBAR1").Value) = True Then
                VarSummeBar1Lokal = 0
            Else
                VarSummeBar1Lokal = rsRechnungsuebersichtLokalAbschluss.Fields("SummeBAR1").Value
            End If
            
            If IsNull(rsRechnungsuebersichtLokalAbschluss.Fields("SummeKARTE1").Value) = True Then
                VarSummeKARTE1Lokal = 0
            Else
                VarSummeKARTE1Lokal = rsRechnungsuebersichtLokalAbschluss.Fields("SummeKARTE1").Value
            End If
            
            If IsNull(rsRechnungsuebersichtLokalAbschluss.Fields("SummeGUTSCHEIN1").Value) = True Then
                VarSummeGUTSCHEIN1Lokal = 0
            Else
                VarSummeGUTSCHEIN1Lokal = rsRechnungsuebersichtLokalAbschluss.Fields("SummeGUTSCHEIN1").Value
            End If
            
            If IsNull(rsRechnungsuebersichtLokalAbschluss.Fields("SummeGesamt1").Value) = True Then
                VarSummeGesamt1Lokal = 0
            Else
                VarSummeGesamt1Lokal = rsRechnungsuebersichtLokalAbschluss.Fields("SummeGesamt1").Value
            End If
            
        End If
        

         
        'Tabelle Rechnungsuebersicht öffnen
        With rsRechnungsuebersichtAusserHausAbschluss
            .ActiveConnection = objConn
            .CursorLocation = adUseClient
            .LockType = adLockOptimistic
            .Open "Select Sum(BAR) As SummeBAR2,Sum(KARTE) As SummeKARTE2,Sum(GUTSCHEIN) AS SummeGUTSCHEIN2, Sum(Gesamt) AS SummeGesamt2 from Rechnungsuebersicht WHERE Datum=#" & Format$(VarDatumLokal, "mm-dd-yyyy") & "# and Station = '" & VarStationLokal & "' "
            '.Open "Select Sum(BAR) As SummeBAR2 from Rechnungsuebersicht WHERE Datum=#" & Format$(VarDatumLokal, "mm-dd-yyyy") & "# and Station = '" & VarStationLokal & "' "
        End With
        
        
        If rsRechnungsuebersichtAusserHausAbschluss.EOF = True Or rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeGesamt2").Value = 0 Then
            VarSummeBar2Lokal = 0
            VarSummeKARTE2Lokal = 0
            VarSummeGUTSCHEIN2Lokal = 0
            VarSummeGesamt2Lokal = 0
        Else
            If IsNull(rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeBAR2").Value) = True Then
                VarSummeBar2Lokal = 0
            Else
                VarSummeBar2Lokal = rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeBAR2").Value
            End If
            
            If IsNull(rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeKARTE2").Value) = True Then
                VarSummeKARTE2Lokal = 0
            Else
                VarSummeKARTE2Lokal = rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeKARTE2").Value
            End If
            
            If IsNull(rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeGUTSCHEIN2").Value) = True Then
                VarSummeGUTSCHEIN2Lokal = 0
            Else
                VarSummeGUTSCHEIN2Lokal = rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeGUTSCHEIN2").Value
            End If
            
            If IsNull(rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeGesamt2").Value) = True Then
                VarSummeGesamt2Lokal = 0
            Else
                VarSummeGesamt2Lokal = rsRechnungsuebersichtAusserHausAbschluss.Fields("SummeGesamt2").Value
            End If
        End If
                         

        
        'Tabelle AlleUmsaetze öffnen
        With rsAlleUmsaetzeAbschluss
            .ActiveConnection = objConn
            .CursorLocation = adUseClient
            .LockType = adLockOptimistic
            .Open "Select *FROM AlleUmsaetze WHERE Datum=#" & Format$(VarDatumLokal, "mm-dd-yyyy") & "#"
        End With

 
              
        If rsAlleUmsaetzeAbschluss.EOF = True Then
            rsAlleUmsaetzeAbschluss.AddNew
        End If

        rsAlleUmsaetzeAbschluss.Fields("Datum").Value = VarDatumLokal
         
        rsAlleUmsaetzeAbschluss.Fields("Lokal").Value = Format(VarSummeGesamt1Lokal, "####,#####0.00")
               
        rsAlleUmsaetzeAbschluss.Fields("AußerHaus").Value = Format(VarSummeGesamt2Lokal, "####,#####0.00")
        
        rsAlleUmsaetzeAbschluss.Fields("BAR").Value = Format(VarSummeBar1Lokal + VarSummeBar2Lokal, "####,#####0.00")

        rsAlleUmsaetzeAbschluss.Fields("KARTE").Value = Format(VarSummeKARTE1Lokal + VarSummeKARTE2Lokal, "####,#####0.00")
        
        rsAlleUmsaetzeAbschluss.Fields("GUTSCHEIN").Value = Format(VarSummeGUTSCHEIN1Lokal + VarSummeGUTSCHEIN2Lokal, "####,#####0.00")
        
        rsAlleUmsaetzeAbschluss.Fields("Gesamt").Value = Format(VarSummeGesamt1Lokal + VarSummeGesamt2Lokal, "####,#####0.00")
           
        rsAlleUmsaetzeAbschluss.Update
        rsAlleUmsaetzeAbschluss.Close
        
        rsRechnungsuebersichtLokalAbschluss.Close
        rsRechnungsuebersichtAusserHausAbschluss.Close
        
        rsRechnungsuebersichtDatum.MoveNext
     Wend
     
     
     Set objConn = Nothing
     Set rsRechnungsuebersichtLokalAbschluss = Nothing
     Set rsAlleUmsaetzeAbschluss = Nothing
     Set rsRechnungsuebersichtAußerHausAbschluss = Nothing
     
exit_Sub:
     On Error GoTo 0
     Set objConn = Nothing
     Set rsRechnungsuebersichtLokalAbschluss = Nothing
     Set rsAlleUmsaetzeAbschluss = Nothing
     Set rsRechnungsuebersichtAußerHausAbschluss = Nothing
       
     Exit Sub
     
err_Handler:
         MsgBox "Fehlernummer " & Err.Number & Chr$(13) & Error$(Err), _
                 vbCritical, "Fehler"
         
     Resume exit_Sub
     Set objConn = Nothing
     Set rsRechnungsuebersichtLokalAbschluss = Nothing
     Set rsAlleUmsaetzeAbschluss = Nothing
     Set rsRechnungsuebersichtAußerHausAbschluss = Nothing
End Sub
Sub DelAlleTabellenRestaurant()

Dim objConn As ADODB.Connection
Dim rsRechnungsuebersicht As ADODB.Recordset
Dim rsRechnungDetails As ADODB.Recordset

Dim strPath As String

Set objConn = New ADODB.Connection
Set rsRechnungsuebersicht = New ADODB.Recordset
Set rsRechnungDetails = New ADODB.Recordset

On Error GoTo err_Handler

  strPath = App.Path
  If Right$(strPath, 1) <> "\" Then strPath = strPath & "\"

 
  With objConn
    .Provider = "Microsoft Jet 4.0 OLE DB Provider"
    .Properties("Jet OLEDB:Database Password") = VarPasswordDatenbank
    .ConnectionString = "Data Source=" & VarDatenbank
    .CursorLocation = adUseClient
    .Open
  End With
    
    
   'Tabelle Rechnungsuebersicht öffnen
   With rsRechnungsuebersicht
     .ActiveConnection = objConn
     .CursorLocation = adUseClient
     .LockType = adLockOptimistic
     .Open "Select *from Rechnungsuebersicht"
   End With
   
   If Not rsRechnungsuebersicht.EOF = True Then
    While Not rsRechnungsuebersicht.EOF = True
     rsRechnungsuebersicht.Delete
     rsRechnungsuebersicht.MoveNext
    Wend
    
  End If
      
   'Tabelle RechnungsDetails öffnen
   With rsRechnungDetails
     .ActiveConnection = objConn
     .CursorLocation = adUseClient
     .LockType = adLockOptimistic
     .Open "Select *from RechnungDetails"
   End With

   If Not rsRechnungDetails.EOF = True Then
   While Not rsRechnungDetails.EOF = True
        rsRechnungDetails.Delete
        rsRechnungDetails.MoveNext
   Wend
   
  End If


Set objConn = Nothing
Set rsRechnungsuebersicht = Nothing
Set rsRechnungDetails = Nothing

exit_Sub:
  On Error GoTo 0
Set objConn = Nothing
Set rsRechnungsuebersicht = Nothing
Set rsRechnungDetails = Nothing
  
  Exit Sub

err_Handler:
    MsgBox "Fehlernummer " & Err.Number & Chr$(13) & Error$(Err), _
            vbCritical, "Fehler"
    
  Resume exit_Sub
Set objConn = Nothing
Set rsRechnungsuebersicht = Nothing
Set rsRechnungDetails = Nothing
End Sub
