1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
6:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
|
/* Gebührenzählungs-Bericht über den derzeitigen Stand 11/22/03
Korrigiertes 5/6/06 *
NOCOUNT AN EINSTELLEN
TABELLE #Records VERURSACHEN
(
TicketNumber varchar (20),
Besuchsdatum/uhrzeit,
LastDateFiled Datum/Uhrzeit,
FirstDateFiled Datum/Uhrzeit,
InsBalance Geld,
PatBalance Geld,
PrimaryInsuranceCarrier varchar (50),
CurrentInsuranceCarrier varchar (50),
CurrentCarrier numerisch (1, 0),
BillStatus varchar (50),
BillStatusID int,
Eingeführtes Datum/Uhrzeit,
FilingType int,
DaysSinceFiled int,
PatientName varchar (50),
VisitOwner varchar (50),
Beschreibung varchar (100),
Doktor varchar (100),
Credentialed varchar (1)
)
-- Die neuen Rekorde einsetzen
WENN „1“ = „1“
ODER 1 IN (NULL)
EINSATZ IN #Records
ISNULL (a.TicketNumber, „kein ") VORWÄHLEN,
UMWANDELN (varchar, a.ApptStart, 101),
'',
'',
0,
0,
ISNULL (ic.ListName, „kein "),
ISNULL (ic.ListName, „kein "),
1,
„Neu“,
1,
'',
0,
0,
pp. Letztes + „,“ + pp. Zuerst + „-“ + pp.PatientID,
„Verabredung“,
'',
d.ListName,
FALL, WENN icd.InsuranceCarriersDoctorID NICHT UNGÜLTIG IST
DANN „X“
SONST ''
ENDE
VON dbo.InsuranceCarriers IC
INNER dbo.PatientInsurance PU AUF sich ANSCHLIESSEN ic.InsuranceCarriersId = pi.InsuranceCarriersId
RECHTE ÄUSSERE VERBINDEN dbo. Verabredungen a AUF pi.PatientProfileId = a.OwnerId
INNER dbo.PatientProfile pp. AUF VERBINDEN a.OwnerID = pp.PatientProfileID
INNER DoctorFacility d AUF ISNULL VERBINDEN (a.DoctorID,
a.ResourceID) = d.DoctorFacilityID
LINKS SCHLIESSEN sich InsuranceCarriersDoctor icd AUF pi.InsuranceCarriersID = icd.InsuranceCarriersID an
UND ISNULL (a.DoctorID, a.ResourceID) = icd.DoctorID
WO (pi.OrderForClaims = 1)
UND (a.PatientVisitId IST UNGÜLTIG)
UND (a.ApptKind = 1)
UND (a.HideNewVisit IST UNGÜLTIG
ODER a.HideNewVisit = 0
)
UND (a.Canceled IST UNGÜLTIG
ODER a.Canceled = 0
)
UND (a.ApptStart < GETDATE ())
UND a.ApptStart >= ISNULL (NULL, „1/1/1900“)
UND a.ApptStart < dateadd (Tag, 1, ISNULL (NULL, „1/1/3000“))
UND --Filter auf Versicherungsfördermaschine
((NULL IST NICHT UNGÜLTIG
UND ic.InsuranceCarriersId IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Anlage
((NULL IST NICHT UNGÜLTIG
UND a.FacilityID IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Versicherungsgruppe
((NULL IST NICHT UNGÜLTIG
UND ic.InsuranceGroupId IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Doktor
((NULL IST NICHT UNGÜLTIG
UND a.ResourceID IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
-- Die Besuchs-Aufzeichnungen eintragen
IN #Records EINSETZEN
pv.TicketNumber VORWÄHLEN,
pv. Besuch,
pv.LastFiledDate,
pv.FirstFiledDate,
pva.InsBalance,
pva.PatBalance,
ISNULL (ic.ListName, „kein "),
ISNULL (ic.ListName, „kein "),
pv.CurrentCarrier,
BS. Beschreibung,
pv.BillStatus,
pv. Hereingekommen,
ISNULL (pv.FilingType, 0),
FALL, WENN pv.LastFiledDate UNGÜLTIGES DANN 0 IST
SONST DATEDIFF (d, pv.LastFiledDate, getdate ())
ENDE,
pp. Letztes + „,“ + pp. Zuerst + „-“ + pp.PatientID,
ISNULL (Vl. Beschreibung, „kein Inhaber "),
ISNULL (GELASSEN (pv. Beschreibung, 100), ''),
d.ListName,
FALL, WENN icd.InsuranceCarriersDoctorID IST NICHT UNGÜLTIGES DANN „X“
SONST ''
ENDE
VON dbo.PatientVisit pv
INNER dbo.PatientProfile pp. AUF VERBINDEN pv.PatientProfileId = pp.PatientProfileId
LINKE ÄUSSERE VERBINDEN dbo.InsuranceCarriers IC AUF pv.PrimaryInsuranceCarriersId = ic.InsuranceCarriersId
LINKE ÄUSSERE VERBINDEN dbo.PatientVisitAgg pva AUF pv.PatientVisitId = pva.PatientVisitId
LINKE ÄUSSERE VERBINDEN dbo.InsuranceCarriers cic AUF pv.CurrentInsuranceCarriersId = cic.InsuranceCarriersId
LINKE ÄUSSERE VERBINDEN dbo.MedLists BS AUF bs.JoinId = pv.BillStatus
UND bs.TableName = „BillStatus“
INNER DoctorFacility d AUF VERBINDEN pv.DoctorID = d.DoctorFacilityID
LINKE ÄUSSERE SCHLIESSEN sich MedLists Vl AUF pv.VisitOwnerMID = vo.MedListsID an
LINKS SCHLIESSEN sich InsuranceCarriersDoctor icd AUF pv.CurrentInsuranceCarriersId = icd.InsuranceCarriersID an
UND pv.DoctorID = icd.DoctorID
WO pv. Besuch >= ISNULL (NULL, „1/1/1900“)
UND pv. Besuch < dateadd (Tag, 1, ISNULL (NULL, „1/1/3000“))
UND pv.BillStatus NICHT INNEN (12, 10)
--Filter auf BillStatus
UND ((NULL IST UNGÜLTIG
UND „1“ = „1“
)
ODER („1“ = „2“
UND NULL IST UNGÜLTIG
)
ODER pv.BillStatus IN (NULL)
)
UND --Filter auf Versicherungsfördermaschine
((NULL IST NICHT UNGÜLTIG
UND ic.InsuranceCarriersId IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Anlage
((NULL IST NICHT UNGÜLTIG
UND pv.FacilityID IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Versicherungsgruppe
((NULL IST NICHT UNGÜLTIG
UND ic.InsuranceGroupId IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND -- Einzuschließen Fördermaschinepriorität
((1 = 1)
ODER (1 = 2
UND pv.CurrentCarrier = 1
)
ODER (1 = 3
UND pv.CurrentCarrier > 1
)
)
UND --Filter auf visitowner
((NULL IST NICHT UNGÜLTIG
UND pv.VisitOwnerMID IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
UND --Filter auf Doktor
((NULL IST NICHT UNGÜLTIG
UND pv.DoctorID IN (NULL)
)
ODER (NULL IST UNGÜLTIG)
)
WENN 0 <> 1
VORWÄHLEN *
Von den #Records
SONST
VORWÄHLEN *
Von den #Records
WO BillStatus <> „neu“
|