Changeset 829 for cprs/trunk/CPRS-Chart/Consults/fODProc.pas
- Timestamp:
- Jul 7, 2010, 4:31:10 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
cprs/trunk/CPRS-Chart/Consults/fODProc.pas
r456 r829 6 6 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 7 7 fODBase, StdCtrls, ORCtrls, ExtCtrls, ComCtrls, ORfn, uConst, Buttons, 8 Menus ;8 Menus, VA508AccessibilityManager; 9 9 10 10 type … … 59 59 procedure memReasonKeyUp(Sender: TObject; var Key: Word; 60 60 Shift: TShiftState); 61 procedure FormDestroy(Sender: TObject);62 61 procedure memReasonKeyDown(Sender: TObject; var Key: Word; 63 62 Shift: TShiftState); … … 90 89 uses 91 90 rODBase, rConsults, uCore, uConsults, rCore, fConsults, fPCELex, rPCE, ORClasses, 92 clipbrd, fPreReq, uTemplates, uAccessibleRichEdit, fFrame, uODBase; 91 clipbrd, fPreReq, uTemplates, fFrame, uODBase, 92 uVA508CPRSCompatibility; 93 93 94 94 var … … 115 115 inherited; 116 116 DoSetFontSize(MainFontSize); 117 TAccessibleRichEdit.WrapControl(memReason);118 117 AllowQuickOrder := True; 119 118 FillChar(ProvDx, SizeOf(ProvDx), 0); … … 188 187 SetControl(cboProc, 'ORDERABLE', 1); 189 188 if cboProc.ItemIndex < 0 then exit; 190 cboService.Items.Assign(GetProcedureServices(cboProc.ItemIEN));189 FastAssign(GetProcedureServices(cboProc.ItemIEN), cboService.Items); 191 190 Changing := True; 192 191 tmpResp := TResponse(FindResponseByName('CLASS',1)); … … 226 225 SetProvDiagPromptingMode; 227 226 GetProvDxandValidateCode(Responses); 227 SetTemplateDialogCanceled(FALSE); 228 228 SetControl(memReason, 'COMMENT', 1); 229 if WasTemplateDialogCanceled then 230 begin 231 AbortOrder := True; 232 Close; 233 Exit; 234 end; 235 SetTemplateDialogCanceled(FALSE); 229 236 SetupReasonForRequest(OrderAction); 237 if WasTemplateDialogCanceled then 238 begin 239 AbortOrder := True; 240 Close; 241 Exit; 242 end; 230 243 Changing := False; 231 244 OrderMessage(ConsultMessage(cboProc.ItemIEN)); … … 360 373 begin 361 374 Clear; 362 Items.Assign(GetProcedureServices(cboProc.ItemIEN));375 FastAssign(GetProcedureServices(cboProc.ItemIEN), cboService.Items); 363 376 if Items.Count > 1 then 364 377 ItemIndex := -1 … … 385 398 with cboService do 386 399 begin 387 Items.Assign(GetProcedureServices(cboProc.ItemIEN));400 FastAssign(GetProcedureServices(cboProc.ItemIEN), cboService.Items); 388 401 if Items.Count > 1 then 389 402 ItemIndex := -1 … … 402 415 SetControl(cboPlace, 'PLACE', 1); 403 416 SetControl(txtAttn, 'PROVIDER', 1); 417 SetTemplateDialogCanceled(FALSE); 404 418 SetControl(memReason, 'COMMENT', 1); 405 // if ((cboProc.ItemIEN > 0) and (Length(memReason.Text) = 0)) then 406 // memReason.Lines.Assign(DefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), True)); 419 if WasTemplateDialogCanceled and OrderContainsObjects then 420 begin 421 AbortOrder := TRUE; 422 Close; 423 Exit; 424 end; 407 425 SetupReasonForRequest(ORDER_QUICK); 408 426 GetProvDxandValidateCode(Responses); … … 441 459 Exit; 442 460 end; 443 memReason.Lines.Assign(DefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), True));461 FastAssign(DefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), True), memReason.Lines); 444 462 SetupReasonForRequest(ORDER_NEW); 445 463 end; … … 457 475 AStringList := TStringList.Create; 458 476 try 459 AStringList. Assign(memReason.Lines);477 AStringList.Text := memReason.Text; 460 478 LimitStringLength(AStringList, 74); 461 memReason. Lines.Assign(AstringList);479 memReason.Text := AStringList.Text; 462 480 ControlChange(Self); 463 481 finally … … 662 680 begin 663 681 if ((OrderAction = ORDER_QUICK) and (cboProc.ItemID <> '') and (Length(memReason.Text) = 0)) then 664 memReason.Lines.Assign(DefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), True));682 FastAssign(DefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), True), memReason.Lines); 665 683 EditReason := GMRCREAF; 666 684 if EditReason = '' then EditReason := ReasonForRequestEditable(Piece(cboProc.Items[cboProc.ItemIndex], U, 4)); … … 690 708 if ItemIEN > 0 then 691 709 begin 692 Alist.Assign(GetServicePrerequisites(Piece(Items[ItemIndex], U, 4)));710 FastAssign(GetServicePrerequisites(Piece(Items[ItemIndex], U, 4)), Alist); 693 711 if AList.Count > 0 then 694 712 begin … … 708 726 end; 709 727 710 function TfrmODProc.DefaultReasonForRequest(Service: string; Resolve: Boolean): TStrings; 728 function TfrmODProc.DefaultReasonForRequest(Service: string; 729 Resolve: Boolean): TStrings; 711 730 var 712 731 TmpSL: TStringList; … … 720 739 try 721 740 Result := GetDefaultReasonForRequest(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), Resolve); 722 TmpSL.Assign(Result);741 FastAssign(Result, TmpSL); 723 742 x := TmpSL.Text; 724 743 ExpandOrderObjects(x, HasObjects); 725 744 TmpSL.Text := x; 726 745 Responses.OrderContainsObjects := HasObjects; 727 ExecuteTemplateOrBoilerPlate(TmpSL, StrToIntDef( piece(piece(cboProc.Items[cboProc.ItemIndex],U,4),';',1),0),746 ExecuteTemplateOrBoilerPlate(TmpSL, StrToIntDef(Piece(Piece(cboProc.Items[cboProc.ItemIndex], U, 4), ';', 1), 0), 728 747 ltProcedure, nil, 'Reason for Request: ' + cboProc.DisplayText[cboProc.ItemIndex], DocInfo); 729 if TmpSL.Text <> x then Responses.OrderContainsObjects := False; 730 Result.Assign(TmpSL); 748 AbortOrder := WasTemplateDialogCanceled; 749 Responses.OrderContainsObjects := HasObjects or TemplateBPHasObjects; 750 if AbortOrder then 751 begin 752 Result.Text := ''; 753 Close; 754 Exit; 755 end 756 else 757 FastAssignWith508Msg(TmpSL, Result); 731 758 finally 732 759 TmpSL.Free; … … 780 807 end; 781 808 782 procedure TfrmODProc.FormDestroy(Sender: TObject);783 begin784 inherited;785 TAccessibleRichEdit.UnwrapControl(memReason);786 end;787 788 809 procedure TfrmODProc.SetFontSize(FontSize: integer); 789 810 begin
Note:
See TracChangeset
for help on using the changeset viewer.