Attribute VB_Name = "modCDF" Option Explicit Public Function ShowCDF(strAdmNumber As String, strHospNum As String) As Boolean Dim intI As Integer Dim intX As Integer Dim dblRA As Double Dim dblPH As Double Dim dblCS As Double Dim dblGS As Double Dim dblUR As Double Dim dblVT As Double Dim dblHD As Double Dim dblXR As Double Dim dblNU As Double Dim dblLB As Double Dim dblPT As Double Dim dblNS As Double Dim dblCV As Double Dim dblPA As Double Dim dblPE As Double Dim dblMF As Double Dim dblPF As Double Dim dblSS1 As Double Dim dblSS2 As Double Dim dblSS3 As Double Dim dblSS4 As Double Dim dblPY As Double Dim dblDX As Double Dim dblQF As Double Dim dblPP As Double Dim dblCP As Double Dim intReccount As Integer Dim dblHoursConfined As Double Dim dblHalfDay As Double Dim strLocalClassification As String Dim strLocalMedicareClassification As String Dim dblHospBill As Double Dim dblTotalDed As Double Dim dblNetHospBill As Double Dim dblCDF As Double Dim blnWithRoomChargesKidney As Boolean Dim r As New ADODB.Recordset Dim blnCDFPatient As Boolean Dim blnOutPatientBilling As Boolean Dim CDF As New ADODB.Recordset Dim strBillNum As String Dim dblCDFBalance As Double If IsIdNumNumeric(strAdmNumber) = True Then blnOutPatientBilling = False Else blnOutPatientBilling = True End If CDF.CursorLocation = adUseClient If blnOutPatientBilling = False Then CDF.Open "Billing..sp_billing_search_for_patient_transactions_Kidney '" & strAdmNumber & "', '" & strBillNum & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockOptimistic Else CDF.Open "Billing..sp_billing_search_for_patient_transactions_Kidney_Consolidated '', '" & strAdmNumber & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockOptimistic End If If CDF.RecordCount > 0 Then intReccount = CDF.RecordCount For intI = 1 To intReccount Select Case UCase(CDF!RevenueID & "") Case "CP" dblCP = dblCP + (CDF!Amount) Case "X1", "RA" dblRA = dblRA + (CDF!Amount) Case "X2", "PH", "PC" Select Case UCase(CDF!locationid & "") Case "114" dblMF = dblMF + (CDF!Amount) Case "93", "109", "110" 'UM,XD,CN dblXR = dblXR + (CDF!Amount) Case "113" 'RN dblPA = dblPA + (CDF!Amount) Case "103" 'RM dblGS = dblGS + (CDF!Amount) Case Else dblPH = dblPH + (CDF!Amount) End Select Case "X3", "CS", "CC", "NS" If (CDF!hemorequest) = 1 Then dblHD = dblHD + (CDF!Amount) Else Select Case UCase(CDF!locationid & "") Case "22" dblMF = dblMF + (CDF!Amount) Case "100" 'OS dblGS = dblGS + (CDF!Amount) Case "30", "26", "43" 'UU, XS, CU dblXR = dblXR + (CDF!Amount) Case "41" 'HU dblHD = dblHD + (CDF!Amount) Case "31" 'RU dblPA = dblPA + (CDF!Amount) Case "36" 'OS dblGS = dblGS + (CDF!Amount) Case Else dblCS = dblCS + (CDF!Amount) End Select End If Case "X4", "OR", "OS", "RM" dblGS = dblGS + (CDF!Amount) Case "X5", "OR" dblUR = dblUR + (CDF!Amount) Case "X6", "OR" dblVT = dblVT + (CDF!Amount) Case "X7", "DI", "KS" dblHD = dblHD + (CDF!Amount) Case "X8", "XR", "US", "CT" dblXR = dblXR + (CDF!Amount) Case "X9", "NU" dblNU = dblNU + (CDF!Amount) Case "Y1", "LB" dblLB = dblLB + (CDF!Amount) Case "Y2", "PT" dblPT = dblPT + (CDF!Amount) Case "Y3", "NE" dblNS = dblNS + (CDF!Amount) Case "Y4", "EL", "HS" dblCV = dblCV + (CDF!Amount) Case "Y5", "PA" dblPA = dblPA + (CDF!Amount) Case "Y6", "PN" dblPE = dblPE + (CDF!Amount) Case "SS" Select Case UCase(CDF!ItemID & "") Case "SS1" dblSS1 = dblSS1 + (CDF!Amount) Case "SS2" dblSS2 = dblSS2 + (CDF!Amount) Case "SS3" dblSS3 = dblSS3 + (CDF!Amount) Case "SS4" dblSS4 = dblSS4 + (CDF!Amount) End Select Case "Z1" dblSS1 = dblSS1 + (CDF!Amount) Case "Z2" dblSS2 = dblSS2 + (CDF!Amount) Case "Z3" dblSS3 = dblSS3 + (CDF!Amount) Case "Z4" dblSS4 = dblSS4 + (CDF!Amount) Case "Z5", "PY" dblPY = dblPY + (CDF!Amount) Case "Z6", "CD" dblDX = dblDX + (CDF!Amount) Case "Z7", "PP" dblPP = dblPP + (CDF!Amount) Case "Z8", "QF" dblQF = dblQF + (CDF!Amount) Case "MD" dblPF = dblPF + (CDF!Amount) Case Else 'Miscellaneous Select Case UCase(CDF!ItemID & "") Case "SS1" dblSS1 = dblSS1 + (CDF!Amount) Case "SS2" dblSS2 = dblSS2 + (CDF!Amount) Case "SS3" dblSS3 = dblSS3 + (CDF!Amount) Case "SS4" dblSS4 = dblSS4 + (CDF!Amount) Case Else If UCase(CDF!DrCr & "") = "P" Then dblPF = dblPF + (CDF!Amount) Else If UCase(CDF!LGRP & "") = "D" Then dblDX = dblDX + (CDF!Amount) Else dblMF = dblMF + (CDF!Amount) End If End If End Select End Select CDF.MoveNext Next intI CDF.Close dblHospBill = dblRA + dblPH + dblCS + dblGS + dblUR + dblVT + _ dblHD + dblXR + dblNU + dblLB + dblPT + dblNS + dblCV + _ dblPA + dblPE + dblMF + dblPF dblTotalDed = dblSS1 + dblSS2 + dblSS3 + dblSS4 + dblPY + dblDX + dblQF + dblPP + dblCP If dblTotalDed < 0 Then dblNetHospBill = dblHospBill - (dblTotalDed * -1) Else dblNetHospBill = dblHospBill - dblTotalDed End If CDF.Open "Select * from Billing..tbParsCDFTransaction where hospnum = '" & strHospNum & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockReadOnly If Not CDF.EOF Then blnCDFPatient = True If CDF.RecordCount > 1 Then r.Open "Select sum(amount) as amount from Billing..tbParsCDFTransaction where hospnum = '" & strHospNum & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockReadOnly dblCDF = r!Amount r.Close Else dblCDF = CDF!Amount End If Else blnCDFPatient = False dblCDF = 0 End If CDF.Close CDF.Open "Billing..sp_Pars_Get_UtilizedCDF '" & strHospNum & "'" If CDF!Amount > 0 Then If dblCP < 0 Then dblCP = dblCP + (CDF!Amount * -1) Else dblCP = dblCP + CDF!Amount End If End If CDF.Close Else CDF.Close CDF.Open "Select * from Billing..tbParsCDFTransaction where hospnum = '" & strHospNum & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockReadOnly If Not CDF.EOF Then blnCDFPatient = True If CDF.RecordCount > 1 Then r.Open "Select sum(amount) as amount from Billing..tbParsCDFTransaction where hospnum = '" & strHospNum & "'", CurrentUser.SQLConnection, adOpenDynamic, adLockReadOnly dblCDF = r!Amount r.Close Else dblCDF = CDF!Amount End If Else blnCDFPatient = False dblCDF = 0 End If CDF.Close CDF.Open "Billing..sp_Pars_Get_UtilizedCDF '" & strHospNum & "'" If CDF!Amount > 0 Then If dblCP < 0 Then dblCP = dblCP + (CDF!Amount * -1) Else dblCP = dblCP + CDF!Amount End If End If CDF.Close End If dblCDFBalance = dblCDF - dblCP With frmCdfViewing .HospBill = dblNetHospBill .TotalCDF = dblCDF .PaidCDF = dblCP .CDFBalance = dblCDFBalance .NetHospBill = dblNetHospBill - dblCDF - dblCP End With ShowCDF = blnCDFPatient And (dblCDFBalance <> 0) End Function Private Function UpTrim(strText As String) As String UpTrim = RTrim$(LTrim$(UCase$(strText))) End Function