115 lines
3.6 KiB
Plaintext
115 lines
3.6 KiB
Plaintext
|
unit uSurgery;
|
||
|
|
||
|
interface
|
||
|
|
||
|
uses
|
||
|
SysUtils, Windows, Messages, Controls, Classes, StdCtrls, ORfn, dialogs;
|
||
|
|
||
|
type
|
||
|
TSurgeryTitles = class
|
||
|
ClassName: string;
|
||
|
DfltTitle: Integer;
|
||
|
DfltTitleName: string;
|
||
|
ShortList: TStringList;
|
||
|
constructor Create;
|
||
|
destructor Destroy; override;
|
||
|
end;
|
||
|
|
||
|
function MakeSurgeryCaseDisplayText(InputString: string): string;
|
||
|
function MakeSurgeryReportDisplayText(RawText: string): string;
|
||
|
//procedure DisplayOpTop(ANoteIEN: integer);
|
||
|
|
||
|
const
|
||
|
(* SG_ALL = 1; // Case context - all cases
|
||
|
SG_BY_SURGEON = 2; // Case context - all cases by surgeon
|
||
|
SG_BY_DATE = 3; // Case context - all cases by date range*)
|
||
|
|
||
|
SG_TV_TEXT = 'Surgery Cases';
|
||
|
|
||
|
OP_TOP_NEVER_SHOW = 0;
|
||
|
OP_TOP_ALWAYS_SHOW = 1;
|
||
|
OP_TOP_ASK_TO_SHOW = 2;
|
||
|
|
||
|
implementation
|
||
|
|
||
|
uses
|
||
|
uConst, rSurgery, fRptBox;
|
||
|
|
||
|
constructor TSurgeryTitles.Create;
|
||
|
{ creates an object to store Surgery titles so only obtained from server once }
|
||
|
begin
|
||
|
inherited Create;
|
||
|
ShortList := TStringList.Create;
|
||
|
end;
|
||
|
|
||
|
destructor TSurgeryTitles.Destroy;
|
||
|
{ frees the lists that were used to store the Surgery titles }
|
||
|
begin
|
||
|
ShortList.Free;
|
||
|
inherited Destroy;
|
||
|
end;
|
||
|
|
||
|
function MakeSurgeryCaseDisplayText(InputString: string): string;
|
||
|
(*
|
||
|
CASE #^Operative Procedure^Date/Time of Operation^Surgeon^^^^^^^^^+^Context
|
||
|
*)
|
||
|
var
|
||
|
x: string;
|
||
|
begin
|
||
|
x := InputString;
|
||
|
x := FormatFMDateTime('mmm dd yyyy', MakeFMDateTime(Piece(x, U, 3))) + ' ' + Piece(x, U, 2) +
|
||
|
', ' + Piece(Piece(x, U, 4), ';', 2) + ', ' + 'Case #: ' + Piece(x, u, 1);
|
||
|
Result := x;
|
||
|
end;
|
||
|
|
||
|
function MakeSurgeryReportDisplayText(RawText: string): string;
|
||
|
var
|
||
|
x: string;
|
||
|
begin
|
||
|
x := RawText;
|
||
|
x := FormatFMDateTime('mmm dd,yy', MakeFMDateTime(Piece(x, U, 3))) + ' ' + Piece(x, U, 2) +
|
||
|
' (#' + Piece(x, U, 1) + '), ' + Piece(x, U, 6) + ', ' + Piece(Piece(x, U, 5), ';', 2);
|
||
|
Result := x;
|
||
|
end;
|
||
|
|
||
|
(*procedure DisplayOpTop(ANoteIEN: integer);
|
||
|
const
|
||
|
{ TODO -oRich V. -cSurgery/TIU : What should be the text of the prompt for display OpTop on signature? }
|
||
|
TX_OP_TOP_PROMPT = 'Would you like to first review the OpTop for this surgery report?';
|
||
|
var
|
||
|
AList: TStringList;
|
||
|
ACaseIEN: integer;
|
||
|
IsNonORProc: boolean;
|
||
|
ShouldShowOpTop: integer;
|
||
|
x: string;
|
||
|
ShowReport: boolean;
|
||
|
begin
|
||
|
AList := TStringList.Create;
|
||
|
try
|
||
|
ShowReport := False;
|
||
|
x := GetSurgCaseRefForNote(ANoteIEN);
|
||
|
ACaseIEN := StrToIntDef(Piece(x, ';', 1), 0);
|
||
|
ShouldShowOpTop := ShowOpTopOnSignature(ACaseIEN);
|
||
|
case ShouldShowOpTop of
|
||
|
OP_TOP_NEVER_SHOW : ; // do nothing
|
||
|
OP_TOP_ALWAYS_SHOW : begin
|
||
|
x := GetSingleCaseListItemWithoutDocs(ANoteIEN);
|
||
|
IsNonORProc := IsNonORProcedure(ACaseIEN);
|
||
|
LoadOpTop(AList, ACaseIEN, IsNonORProc, ShowReport);
|
||
|
ReportBox(AList, MakeSurgeryCaseDisplayText(x), True);
|
||
|
end;
|
||
|
OP_TOP_ASK_TO_SHOW : if InfoBox(TX_OP_TOP_PROMPT, 'Confirmation', MB_YESNO or MB_ICONQUESTION) = IDYES then
|
||
|
begin
|
||
|
x := GetSingleCaseListItemWithoutDocs(ANoteIEN);
|
||
|
IsNonORProc := IsNonORProcedure(ACaseIEN);
|
||
|
LoadOpTop(AList, ACaseIEN, IsNonORProc, ShowReport);
|
||
|
ReportBox(AList, MakeSurgeryCaseDisplayText(x), True);
|
||
|
end;
|
||
|
end;
|
||
|
finally
|
||
|
AList.Free;
|
||
|
end;
|
||
|
end;*)
|
||
|
|
||
|
end.
|