Changeset 829 for cprs/trunk/CPRS-Chart/BA/UBACore.pas
- Timestamp:
- Jul 7, 2010, 4:31:10 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
cprs/trunk/CPRS-Chart/BA/UBACore.pas
r456 r829 112 112 end; 113 113 114 BAOrderList.Assign(holdOrderList); //assign signable orders to BAOrderList for further processing114 FastAssign(holdOrderList, BAOrderList); //assign signable orders to BAOrderList for further processing 115 115 holdOrderList.Clear; // CQ5025 116 116 117 117 //call with passList determine if LRMP 118 118 if rpcOrderRequiresDx(passList) then 119 BAOrderList.Assign(updatedBAOrderList);119 FastAssign(updatedBAOrderList, BAOrderList); 120 120 121 121 // check of all orders dx columns are flagged with N/A..... … … 165 165 end 166 166 else 167 updatedList.Assign(pList);167 FastAssign(pList, updatedList); 168 168 169 169 // call returns boolean, orders is billable=1 or nonbillable=0 or discontinued = 0 … … 213 213 on EListError do 214 214 begin 215 {$ifdef debug}Show Message('EListError in UBACore.IsOrderBillable()');{$endif}215 {$ifdef debug}Show508Message('EListError in UBACore.IsOrderBillable()');{$endif} 216 216 raise; 217 217 end; … … 334 334 begin 335 335 // Verify Patient is Insured 336 // OR Switch = 2 ask questions for all patients. 336 337 if rpcIsPatientInsured(pPatientDFN) then 337 338 BILLING_AWARE := TRUE; … … 407 408 on EListError do 408 409 begin 409 {$ifdef debug}Show Message('EListError in UBACore.rpcSaveBillingDxEntered()');{$endif}410 {$ifdef debug}Show508Message('EListError in UBACore.rpcSaveBillingDxEntered()');{$endif} 410 411 raise; 411 412 end; … … 419 420 procedure rpcGetSC4Orders; 420 421 begin 422 // ****** RPC Logic returning SC/TF codes for COPAY ******** 423 // if (CIDC is ON) and (PatientInsured is True) then 424 // return SC/TF for OutPatient Meds, Labs, Prosthetics, Imaging. 425 // else 426 // return SC/TF for Outpatient Meds only. 421 427 RPCBrokerV.Param[0].PType := literal; 422 428 RPCBrokerV.Param[0].Value := Patient.DFN; … … 434 440 uDxLst.Clear; 435 441 tCallV(tmplst, 'ORWDBA2 GETDUDC', [ProviderIEN, PatientIEN]); 436 UBACore.UDxLst.Assign(tmplst);442 FastAssign(tmplst, UBACore.UDxLst); 437 443 tmplst.clear; 438 444 end; … … 511 517 function rpcIsPatientInsured(pPatientDFN: string):boolean; 512 518 begin 513 Result := (sCallV('ORWDBA7 ISWITCH',[pPatientDFN]) = '1');519 Result := (sCallV('ORWDBA7 ISWITCH',[pPatientDFN]) > '0'); 514 520 515 521 end; … … 552 558 on EListError do 553 559 begin 554 {$ifdef debug}Show Message('EListError in UBACore.OrdersHaveDx()');{$endif}560 {$ifdef debug}Show508Message('EListError in UBACore.OrdersHaveDx()');{$endif} 555 561 raise; 556 562 end; … … 634 640 UBAGlobals.MST := Copy(x,5,1); 635 641 UBAGlobals.HNC := Copy(x,6,1); 636 UBAGlobals.CV := Copy(x,7,1); 642 UBAGlobals.CV := Copy(x,7,1); 643 UBAGlobals.SHD := Copy(x,8,1); 637 644 end; 638 645 … … 693 700 UBAGlobals.HNC := 'C'; 694 701 702 if UBAGlobals.SHD <> 'N' then 703 if StrPos(PChar(strTFactors),PChar(SHIPBOARD_HAZARD_DEFENSE)) <> nil then 704 UBAGlobals.SHD := 'C'; 705 695 706 // Build Treatment Factor List to be passed to fOrdersSign form 696 strFlagsOut := (SC + AO + IR + EC + MST + HNC + CV );707 strFlagsOut := (SC + AO + IR + EC + MST + HNC + CV + SHD); 697 708 UBAGlobals.BAFlagsOUT.Add(IDX + '^' + strFlagsOut ); 698 709 end; … … 724 735 on EListError do 725 736 begin 726 {$ifdef debug}Show Message('EListError in UBACore.AddProviderPatientDaysDx()');{$endif}737 {$ifdef debug}Show508Message('EListError in UBACore.AddProviderPatientDaysDx()');{$endif} 727 738 raise; 728 739 end; … … 751 762 on EListError do 752 763 begin 753 {$ifdef debug}Show Message('EListError in UBACore.OrderRequiresSCEI()');{$endif}764 {$ifdef debug}Show508Message('EListError in UBACore.OrderRequiresSCEI()');{$endif} 754 765 raise; 755 766 end; … … 875 886 on EListError do 876 887 begin 877 {$ifdef debug}Show Message('EListError in UBACore.CompleteUnsignedBillingInfo()');{$endif}888 {$ifdef debug}Show508Message('EListError in UBACore.CompleteUnsignedBillingInfo()');{$endif} 878 889 raise; 879 890 end; … … 898 909 on EListError do 899 910 begin 900 {$ifdef debug}Show Message('EListError in UBACore.GetUnsignedOrderFlags()');{$endif}911 {$ifdef debug}Show508Message('EListError in UBACore.GetUnsignedOrderFlags()');{$endif} 901 912 raise; 902 913 end; … … 972 983 if piece(x,U,1) = COMBAT_VETERAN then 973 984 begin 974 if piece(x,U,2) = '1' then 975 UBAGlobals.BAFactorsRec.FBAFactorCV := Piece(x,U,3) 976 else 977 UBAGlobals.BAFactorsRec.FBAFactorCV := (UBAGlobals.BAFactorsRec.FBAFactorCV + CRLF + Piece(x,U,3) ); 978 end; 979 end; 985 if piece(x,U,2) = '1' then 986 UBAGlobals.BAFactorsRec.FBAFactorCV := Piece(x,U,3) 987 else 988 UBAGlobals.BAFactorsRec.FBAFactorCV := (UBAGlobals.BAFactorsRec.FBAFactorCV + CRLF + Piece(x,U,3) ); 989 end 990 else 991 if piece(x,U,1) = SHIPBOARD_HAZARD_DEFENSE then 992 begin 993 if piece(x,U,2) = '1' then 994 UBAGlobals.BAFactorsRec.FBAFactorSHAD := Piece(x,U,3) 995 else 996 UBAGlobals.BAFactorsRec.FBAFactorSHAD := (UBAGlobals.BAFactorsRec.FBAFactorSHAD + CRLF + Piece(x,U,3) ); 997 end; 998 end; 980 999 except 981 1000 on EListError do 982 1001 begin 983 {$ifdef debug}Show Message('EListError in UBACore.BuileTFHintRec()');{$endif}1002 {$ifdef debug}Show508Message('EListError in UBACore.BuileTFHintRec()');{$endif} 984 1003 raise; 985 1004 end; … … 1047 1066 on EListError do 1048 1067 begin 1049 {$ifdef debug}Show Message('EListError in UBACore.ClearSelectedORdersDiagnoses()');{$endif}1068 {$ifdef debug}Show508Message('EListError in UBACore.ClearSelectedORdersDiagnoses()');{$endif} 1050 1069 raise; 1051 1070 end; … … 1133 1152 on EListError do 1134 1153 begin 1135 {$ifdef debug}Show Message('EListError in UBACore.LoadConsultOrderRec()');{$endif}1154 {$ifdef debug}Show508Message('EListError in UBACore.LoadConsultOrderRec()');{$endif} 1136 1155 raise; 1137 1156 end; … … 1153 1172 with thisRetVal do 1154 1173 begin 1155 FBAOrderID := pOrderID;1174 FBAOrderID := pOrderID; 1156 1175 FBAEligible := pEligible; 1157 1176 FBATFactors := pTFactors; … … 1166 1185 tmpOrderList: TStringList; 1167 1186 begin 1168 orderList := TStringList.Create;1187 orderList := TStringList.Create; 1169 1188 tmpOrderList := TStringList.Create; 1170 1189 orderList.Clear; … … 1241 1260 strTFactors := pPLFactors; // value selected from problem list 1242 1261 strFlagsOut := ''; // flags updated with selected values from problem list 1243 x := strFlagsAsIs;1244 Result := '';1262 x := strFlagsAsIs; 1263 Result := ''; 1245 1264 1246 1265 UBAGlobals.SC := Copy(x,1,1); … … 1250 1269 UBAGlobals.MST := Copy(x,5,1); 1251 1270 UBAGlobals.HNC := Copy(x,6,1); 1252 UBAGlobals.CV := Copy(x,7,1); // load factors to global vars; 1271 UBAGlobals.CV := Copy(x,7,1); // load factors to global vars; 1272 UBAGlobals.SHD := Copy(x,8,1); 1253 1273 1254 1274 if UBAGlobals.SC <> 'N' then … … 1284 1304 UBAGlobals.CV := 'C'; 1285 1305 1306 if UBAGlobals.SHD <> 'N' then 1307 if StrPos(PChar(strTFactors),PChar(SHIPBOARD_HAZARD_DEFENSE)) <> nil then 1308 UBAGlobals.SHD := 'C'; 1309 1286 1310 strFlagsOut := (UBAGlobals.SC + UBAGlobals.AO + UBAGlobals.IR + 1287 1311 UBAGlobals.EC + UBAGlobals.MST + UBAGlobals.HNC + 1288 UBAGlobals.CV );1312 UBAGlobals.CV + UBAGlobals.SHD); 1289 1313 Result := strFlagsOut; 1290 1314 end; … … 1385 1409 holdList := TStringList.Create; 1386 1410 holdList.Clear; 1387 holdList.Assign(UBAGlobals.BACopiedOrderFlags);1411 FastAssign(UBAGlobals.BACopiedOrderFlags, holdList); 1388 1412 UBAGlobals.BACopiedOrderFlags.Clear; 1389 1413 for i := 0 to holdList.Count-1 do … … 1412 1436 holdList := TStringList.Create; 1413 1437 holdList.Clear; 1414 holdList.Assign(UBAGlobals.BAConsultPLFlags);1438 FastAssign(UBAGlobals.BAConsultPLFlags, holdList); 1415 1439 UBAGlobals.BAConsultPLFlags.Clear; 1416 1440 for i := 0 to holdList.Count-1 do
Note:
See TracChangeset
for help on using the changeset viewer.