Module

fCSRemaining

Path

C:\CPRS\CPRS30\Orders\fCSRemaining.pas

Last Modified

7/15/2014 3:26:40 PM

Units Used in Interface

Name Comments
rOrders -
uCore -

Classes

Name Comments
TfrmCSRemaining -

Procedures

Name Owner Declaration Scope Comments
cmdOKClick TfrmCSRemaining procedure cmdOKClick(Sender: TObject); Public/Published -
CSRemaining - procedure CSRemaining(orders: TStrings; csorders: TStrings); Interfaced -


Module Source

1     unit fCSRemaining;
2     
3     interface
4     
5     uses
6       Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7       Dialogs, StdCtrls, ORCtrls, ExtCtrls, VA508AccessibilityManager, StrUtils,
8       ORFn, uCore, rOrders;
9     
10    type
11      TfrmCSRemaining = class(TForm)
12        lblCSRemaining: TVA508StaticText;
13        lstCSRemaining: TCaptionListBox;
14        cmdOK: TButton;
15        VA508AccessibilityManager1: TVA508AccessibilityManager;
16        VA508ComponentAccessibility1: TVA508ComponentAccessibility;
17        procedure cmdOKClick(Sender: TObject);
18      private
19        { Private declarations }
20      public
21        { Public declarations }
22      end;
23    
24    
25    procedure CSRemaining(orders: TStrings; csorders: TStrings);
26    
27    implementation
28    
29    
30    procedure CSRemaining(orders: TStrings; csorders: TStrings);
31    var
32      ShownCurrentUserLabel, ShownOtherUsersLabel: boolean;
33      Display: String;
34      i,j: Integer;
35      frmCSRemaining: TfrmCSRemaining;
36      UnsignedOrders,HaveOrders,OthersCSOrders: TStrings;
37      show: boolean;
38    begin
39        ShownCurrentUserLabel := False;
40        ShownOtherUsersLabel := False;
41        OthersCSOrders  := TStringList.Create;
42        HaveOrders  := TStringList.Create;
43        UnsignedOrders := TStringList.Create;
44        frmCSRemaining := TfrmCSRemaining.Create(Application);
45        LoadUnsignedOrders(UnsignedOrders,HaveOrders);
46        for i := 0 to Pred(UnsignedOrders.Count) do
47        begin
48          //if UnsignedOrders[i] is not in either orders or csorders then continue
49          show := false;
50          for j := 0 to orders.Count - 1 do
51          begin
52            if (not(orders.objects[j]=nil) and (Piece(unsignedOrders[i],u,1)=TChangeItem(orders.objects[j]).ID)) then show := true;
53          end;
54          for j := 0 to csorders.Count - 1 do
55          begin
56            if (not(csorders.objects[j]=nil) and (Piece(unsignedOrders[i],u,1)=TChangeItem(csorders.objects[j]).ID)) then show := true;
57          end;
58    
59          if not(show) then continue;
60    
61          Display := TextForOrder(Piece(UnsignedOrders[i],U,1));
62          if Piece(UnsignedOrders[i],U,6)='1' then
63          begin
64            if User.DUZ=StrToInt64Def(Piece(UnsignedOrders[i],U,2),0) then
65            begin
66              if ShownCurrentUserLabel=False then
67              begin
68                frmCSRemaining.lstCSRemaining.AddItem('My Unsigned Controlled Substance Orders',nil);
69                ShownCurrentUserLabel:=True;
70              end;
71              frmCSRemaining.lstCSRemaining.AddItem('    '+AnsiReplaceText(Display,CRLF,' '),TObject(UnsignedOrders[i]));
72            end
73            else
74              OthersCSOrders.Add(UnsignedOrders[i]);
75          end;
76        end;
77    
78        for i := 0 to Pred(OthersCSOrders.Count) do
79        begin
80          Display := TextForOrder(Piece(OthersCSOrders[i],U,1));
81          if ShownOtherUsersLabel=False then
82          begin
83            frmCSRemaining.lstCSRemaining.AddItem(' ',nil);
84            frmCSRemaining.lstCSRemaining.AddItem('Other User''s Unsigned Controlled Substance Orders',nil);
85            ShownOtherUsersLabel := True;
86          end;
87          frmCSRemaining.lstCSRemaining.AddItem('    '+AnsiReplaceText(Display,CRLF,' '),TObject(OthersCSOrders[i]));
88        end;
89    
90        if frmCSRemaining.lstCSRemaining.Count>0 then frmCSRemaining.ShowModal;
91    end;
92    
93    {$R *.dfm}
94    
95    procedure TfrmCSRemaining.cmdOKClick(Sender: TObject);
96    begin
97      self.Close;
98    end;
99    
100   end.

Module Calls (2 levels)


fCSRemaining
 ├uCore
 │ ├rCore
 │ ├uConst
 │ ├uCombatVet
 │ ├rTIU
 │ ├rOrders
 │ ├rConsults
 │ └uOrders
 └rOrders...

Module Called-By (2 levels)


         fCSRemaining
        fOrdersSign┤ 
       UBAGlobals┤ │ 
           fFrame┤ │ 
          fOrders┤ │ 
fBALocalDiagnoses┤ │ 
          fReview┤ │ 
       uSignItems┘ │ 
         fReview...┘