Вы находитесь на странице: 1из 7

VERSION 1.

0 CLASS BEGIN MultiUse = -1 'True END Attribute VB_Name = "Form_Report of the Reservation" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = True Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Option Compare Database Private Sub ReservationList_Change() Dim Dim Dim Dim Dim Dim Dim Dim Dim conn As New ADODB.Connection rstClReU As New ADODB.Recordset rstClRes As New ADODB.Recordset rstRoRes As New ADODB.Recordset rstRoom As New ADODB.Recordset rstRoKind As New ADODB.Recordset rstRoRoKd As New ADODB.Recordset rstRoCharg As New ADODB.Recordset rstSeason As New ADODB.Recordset

Dim basepath As String Dim numreserve As Long Dim kindreserve As Boolean Dim roomvolume As Integer Dim measurer As Integer Dim roomnum As Integer Dim roomusagefact As Integer Dim resroomstart As Date Dim resroomexpiry As Date Dim instantday As Date Dim resroomactive As Boolean Dim typeroom As Integer Dim roomdescription As String Dim roomCVF As Integer Dim stringroomCVF As String Dim insdatestart As String Dim insdateexpiry As String Dim desday As String Dim desmonth As String

Dim desyear As String Dim commvalue(2) As Integer Dim Ratio As Double Dim DateSeasonStart As Date Dim DateSeasonExpiry As Date Dim seasontype As Integer Dim dailyroomcharge As Currency Dim bondCharge As Currency Dim sumroomcharge() As Currency Dim sumreservcharge As Currency Dim DiscountFactor As Double Dim Discountly As Currency Dim Finalreservcharge As Currency Dim Residuum As Currency Dim roomactivedisplay As String Dim Roomdisplay As String Me.reserveId_Label.Visible = True Me.reserveId.Visible = True Me.LabelCUSTOMER.Visible = True Me.LabelSurname.Visible = True Me.LabelAFM.Visible = True Me.LabelAddress.Visible = True Me.LabelTelephone.Visible = True Me.surname.Visible = True Me.AFM.Visible = True Me.address.Visible = True Me.telephone.Visible = True Me.LabelCUSTOMERSCHARGE.Visible = True Me.LabelVolumeCharge.Visible = True Me.LabelDiscount.Visible = True Me.LabelFinalCharge.Visible = True Me.LabelBond.Visible = True Me.LabelResidual.Visible = True Me.VolumeCharge.Visible = True Me.Discount.Visible = True Me.FinalCharge.Visible = True Me.Bond.Visible = True Me.Residual.Visible = True Me.commReserve_text.Visible = True Me.roomId_Label.Visible = True Me.description_Label.Visible = True Me.CVF_Label.Visible = True Me.start_Label.Visible = True

Me.expiry_Label.Visible = True Me.active_Label.Visible = True Me.roomcharge_Label.Visible = True Me.LabelRooms.Visible = True Me.Rooms.Visible = True conn.Provider = "Microsoft.Jet.OLEDB.4.0" basepath = Application.CurrentProject.path & "\HOTELS_10_2.mdb" conn.Open basepath commvalue(1) = 0 rstRoRoKd.Open "SELECT SUM(roomKind.commValueFactor) AS summa FROM roomKind INNE R JOIN rooms ON (roomKind.roomType) = (rooms.roomType) ;", conn commvalue(2) = CInt(Val(rstRoRoKd("summa"))) rstRoRoKd.Close ''''''Me.displaycvf = CStr(commvalue(2)) numreserve = CLng(Val(Me.ReservationList)) Me.reserveId = CStr(numreserve) rstClReU.Open "SELECT clients.surname, clients.AFM, clients.address, clients.tel ephone FROM clients INNER JOIN clientReservation ON clients.AFM = clientReservat ion.AFM WHERE ((clientReservation.reserveID) = " & numreserve & ");", conn Me.surname = CStr(rstClReU("surname")) Me.AFM = CStr(rstClReU("AFM")) Me.address = CStr(rstClReU("address")) Me.telephone = CStr(rstClReU("telephone")) rstClReU.Close rstClRes.Open "SELECT * FROM clientReservation WHERE reserveId = " & numreserve & ";", conn rstRoRes.Open "SELECT * FROM roomReservation WHERE reserveId = " & numreserve & ";", conn, adOpenKeyset, adLockOptimistic ' adOpenKeyset, adLockOptimistic rstRoRes.RecordCount ' Recordset rstRoRes Update rstSeason.Open "SELECT * FROM seasons", conn roomvolume = rstRoRes.RecordCount ''''''Me.displayroomVolume = CStr(roomvolume) ReDim sumroomcharge(roomvolume) 'rstClRes.MoveFirst ' recordset rstRoRes.MoveFirst kindreserve = CBool(rstClRes("commReserve"))

If kindreserve = True Then Me.commReserve_text = "It is a Commercial Reservation" Me.commReserve_text.ForeColor = vbRed Else Me.commReserve_text = "It is an Individual Reservation" Me.commReserve_text.ForeColor = vbBlue End If For measurer = 1 To roomvolume sumroomcharge(measurer) = 0 Next measurer bondCharge = 0 sumreservcharge = 0 Ratio = 0 DiscountFactor = 0 Discountly = 0 Finalreservcharge = 0 Residuum = 0 measurer = 1 Do roomnum = CInt(Val(rstRoRes("roomID"))) roomusagefact = CInt(Val(rstRoRes("usageFactor"))) rstRoom.Open "SELECT rooms.roomType FROM rooms WHERE ((rooms.roomId) =" & roo mnum & ")", conn

'rstRoom.MoveFirst ' recordse typeroom = CInt(Val(rstRoom("roomType")))

rstRoom.Close typeroom = typeroom - roomusagefact ' usageFactor

rstRoKind.Open "SELECT * FROM roomKind WHERE ((roomKind.roomType) =" & typero om & ")", conn

'rstRoKind.MoveFirst ' record commvalue(1) = commvalue(1) + CInt(Val(rstRoKind("commValueFactor"))) roomdescription = CStr(rstRoKind("description")) roomCVF = CInt(Val(rstRoKind("commValueFactor"))) rstRoKind.Close resroomstart = CDate(rstRoRes("start")) resroomexpiry = CDate(rstRoRes("expiry")) resroomactive = CBool(rstRoRes("active"))

If resroomactive = False Then resroomexpiry = resroomstart End If

'

instantday = resroomstart Do dailyroomcharge = 0 rstSeason.MoveFirst Do ' season (1,2,3) instantday DateSeasonStart = CDate(rstSeason("seasonStart")) DateSeasonExpiry = CDate(rstSeason("seasonExpiry"))

If instantday >= DateSeasonStart And instantday <= DateSeasonExpiry Then ' seasontype = CInt(Val(rstSeason("seasonTypeCode"))) Exit Do End If rstSeason.MoveNext Loop Until rstSeason.EOF rstRoCharg.Open "SELECT roomCharges.roomCharge FROM roomCharges WHERE (( (roomCharges.roomType) =" & typeroom & ") AND ((roomCharges.commReserve) =" & ki ndreserve & ") AND ((roomCharges.seasonTypeCode) =" & seasontype & "))", conn

'rstRoCharg.MoveFirst ' dailyroomcharge = CCur(Val(rstRoCharg("roomCharge"))) rstRoCharg.Close sumroomcharge(measurer) = sumroomcharge(measurer) + dailyroomcharge If instantday = resroomstart Then bondCharge = bondCharge + dailyroomcharge End If instantday = CDate(DateAdd("d", 1, CDate(instantday))) Loop While instantday <= resroomexpiry If resroomactive = True Then roomactivedisplay = " active" Else roomactivedisplay = "inactive" End If If roomCVF <= 9 Then stringroomCVF = " " & CStr(roomCVF) Else stringroomCVF = CStr(roomCVF) End If

Roomdisplay = Roomdisplay & roomnum & " " & roomdescription & " " & stringr oomCVF & " " & resroomstart & " " & resroomexpiry & " " & roomactivedisplay & " " & sumroomcharge(measurer) & " " & vbCrLf sumreservcharge = sumreservcharge + sumroomcharge(measurer) measurer = measurer + 1 rstRoRes.MoveNext Loop Until rstRoRes.EOF rstSeason.Close rstRoRes.Close rstClRes.Close Me.VolumeCharge = CStr(sumreservcharge) & " ''''''Me.displaythcvf = CStr(commvalue(1)) Ratio = CDbl(commvalue(1)) / CDbl(commvalue(2)) If Ratio < 0.25 Then DiscountFactor = 0 ElseIf Ratio < 0.4 Then DiscountFactor = 0.15 Else DiscountFactor = 0.25 End If " ' While measurer <= roomvolume

' ' commercial value f '

Discountly = DiscountFactor * sumreservcharge Me.Discount = CStr(Discountly) & " "

Finalreservcharge = sumreservcharge - Discountly Me.FinalCharge = CStr(Finalreservcharge) & " Me.Bond = CStr(bondCharge) & " " "

Residuum = Finalreservcharge - bondCharge Me.Residual = CStr(Residuum) & " Me.Rooms = Roomdisplay conn.Close End Sub Private Sub RESETBUTTON_Click() Me.ReservationList = "" Me.reserveId = "" Me.surname = "" Me.AFM = "" Me.address = "" Me.telephone = "" "

Me.VolumeCharge = "" Me.Discount = "" Me.FinalCharge = "" Me.Bond = "" Me.Residual = "" Me.commReserve_text = "" Me.Rooms = "" Me.reserveId_Label.Visible = False Me.reserveId.Visible = False Me.LabelCUSTOMER.Visible = False Me.LabelSurname.Visible = False Me.LabelAFM.Visible = False Me.LabelAddress.Visible = False Me.LabelTelephone.Visible = False Me.surname.Visible = False Me.AFM.Visible = False Me.address.Visible = False Me.telephone.Visible = False Me.LabelCUSTOMERSCHARGE.Visible = False Me.LabelVolumeCharge.Visible = False Me.LabelDiscount.Visible = False Me.LabelFinalCharge.Visible = False Me.LabelBond.Visible = False Me.LabelResidual.Visible = False Me.VolumeCharge.Visible = False Me.Discount.Visible = False Me.FinalCharge.Visible = False Me.Bond.Visible = False Me.Residual.Visible = False Me.commReserve_text.Visible = False Me.roomId_Label.Visible = False Me.description_Label.Visible = False Me.CVF_Label.Visible = False Me.start_Label.Visible = False Me.expiry_Label.Visible = False Me.active_Label.Visible = False Me.roomcharge_Label.Visible = False Me.LabelRooms.Visible = False Me.Rooms.Visible = False End Sub

Вам также может понравиться