Ignore:
Timestamp:
May 7, 2015, 12:34:29 PM (9 years ago)
Author:
healthsevak
Message:

Updating the working copy to CPRS version 28

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cprs/trunk/CPRS-Chart/Consults/fEditProc.pas

    r829 r1679  
    66  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    77  StdCtrls, ORCtrls, ExtCtrls, ComCtrls, ORfn, uConst, uConsults, Buttons,
    8   Menus, fBase508Form, VA508AccessibilityManager;
     8  Menus, fAutoSz, ORDtTm, VA508AccessibilityManager, fBase508Form;
    99
    1010type
    11   TfrmEditProc = class(TfrmBase508Form)
     11  TfrmEditProc = class(TfrmAutoSz)
    1212    cmdAccept: TButton;
    1313    cmdQuit: TButton;
     14    pnlMessage: TPanel;
     15    imgMessage: TImage;
     16    memMessage: TRichEdit;
     17    pnlMain: TPanel;
     18    lblProc: TLabel;
     19    lblReason: TLabel;
     20    lblService: TOROffsetLabel;
     21    lblComment: TLabel;
     22    lblComments: TLabel;
     23    lblUrgency: TStaticText;
     24    lblPlace: TStaticText;
     25    lblAttn: TStaticText;
     26    lblProvDiag: TStaticText;
     27    lblInpOutp: TStaticText;
     28    memReason: TRichEdit;
    1429    cboUrgency: TORComboBox;
    1530    radInpatient: TRadioButton;
     
    1833    txtProvDiag: TCaptionEdit;
    1934    txtAttn: TORComboBox;
    20     lblProc: TLabel;
    2135    cboProc: TORComboBox;
    22     lblReason: TLabel;
    23     lblUrgency: TStaticText;
    24     lblPlace: TStaticText;
    25     lblAttn: TStaticText;
    26     lblProvDiag: TStaticText;
    2736    cboCategory: TORComboBox;
    2837    cboService: TORComboBox;
    29     lblService: TOROffsetLabel;
    3038    memComment: TRichEdit;
    31     lblComment: TLabel;
    32     lblComments: TLabel;
    33     pnlMessage: TPanel;
    34     imgMessage: TImage;
    35     memMessage: TRichEdit;
    3639    btnCmtCancel: TButton;
    3740    btnCmtOther: TButton;
     41    cmdLexSearch: TButton;
     42    lblEarliest: TStaticText;
     43    lblLatest: TStaticText;
     44    calEarliest: TORDateBox;
     45    calLatest: TORDateBox;
    3846    mnuPopProvDx: TPopupMenu;
    3947    mnuPopProvDxDelete: TMenuItem;
    40     cmdLexSearch: TButton;
    41     lblInpOutp: TStaticText;
    42     memReason: TRichEdit;
    4348    popReason: TPopupMenu;
    4449    popReasonCut: TMenuItem;
     
    4752    popReasonPaste2: TMenuItem;
    4853    popReasonReformat: TMenuItem;
     54    pnlCombatVet: TPanel;
     55    txtCombatVet: TVA508StaticText;
    4956    procedure txtAttnNeedData(Sender: TObject; const StartFrom: String;
    5057      Direction, InsertAt: Integer);
     
    7481      Shift: TShiftState);
    7582    procedure memReasonKeyPress(Sender: TObject; var Key: Char);
     83    procedure calEarliestExit(Sender: TObject);
     84    procedure calLatestExit(Sender: TObject);
     85    procedure memCommentExit(Sender: TObject);
    7686  private
    7787    FLastProcID: string;
     
    8090    FEditCtrl: TCustomEdit;
    8191    FNavigatingTab: boolean;
     92    FEarliestDate: TFMDateTime;
     93    //FLatestDate: TFMDateTime;
    8294    procedure SetProvDiagPromptingMode;
     95    procedure SetUpCombatVet;
    8396  protected
    8497    procedure InitDialog;
     
    117130                       'Another code must be selected';
    118131  TC_INACTIVE_CODE   = 'Inactive ICD Code';
     132  TX_PAST_DATE       = 'Earliest appropriate date must be today or later.';
     133  TX_BAD_DATES       = 'Latest appropriate date must be equal to or later than earliest date.';
    119134
    120135function EditResubmitProcedure(FontSize: Integer; ConsultIEN: integer): boolean;
     
    165180  i: integer;
    166181begin
     182  if FChanging then exit;
    167183  FChanging := True;
    168184  Defaults := TStringList.Create;
     
    199215  with cboUrgency do for i := 0 to Items.Count-1 do
    200216    if UpperCase(DisplayText[i]) = UpperCase(OldRec.UrgencyName) then ItemIndex := i;
     217  calEarliest.FMDateTime := OldRec.EarliestDate;
     218  FEarliestDate := OldRec.EarliestDate;
     219  //calLatest.FMDateTime := OldRec.LatestDate;
     220  //FLatestDate := OldRec.LatestDate;
    201221  txtProvDiag.Text := OldRec.ProvDiagnosis;
    202222  ProvDx.Code := OldRec.ProvDxCode;
     
    211231  memComment.Clear ;
    212232  SetProvDiagPromptingMode;
     233    if (patient.CombatVet.IsEligible = True) then
     234   begin
     235    SetUpCombatVet;
     236   end
     237   else
     238    begin
     239      txtCombatVet.Enabled := False;
     240      pnlCombatVet.SendToBack;
     241    end;
    213242  FChanging := False;
    214243  StatusText('');
     
    238267  if OldRec.ProvDxCodeInactive and ProvDx.CodeInactive then
    239268    SetError(TX_INACTIVE_CODE);
     269  if calEarliest.FMDateTime < FMToday     then SetError(TX_PAST_DATE);
     270  //if calLatest.FMDateTime < FMToday       then SetError(TX_PAST_DATE);
     271  //if calLatest.FMDateTime < calEarliest.FMDateTime then SetError(TX_BAD_DATES);
    240272end;
    241273
     
    245277  inherited;
    246278  txtAttn.ForDataUse(SubSetOfPersons(StartFrom, Direction));
     279end;
     280
     281procedure TfrmEditProc.calEarliestExit(Sender: TObject);
     282begin
     283  inherited;
     284  FEarliestDate := calEarliest.FMDateTime;
     285  ControlChange(Self);
     286end;
     287
     288procedure TfrmEditProc.calLatestExit(Sender: TObject);
     289begin
     290  inherited;
     291  //FLatestDate := calLatest.FMDateTime;
     292  //ControlChange(Self);
    247293end;
    248294
     
    323369         end;
    324370
     371     if FEarliestDate > 0 then
     372     begin
     373       if FEarliestDate <> OldRec.EarliestDate then
     374         EarliestDate := FEarliestDate
     375       else
     376         EarliestDate := 0;
     377     end;
     378
     379(*     if FLatestDate > 0 then
     380     begin
     381       if FLatestDate <> OldRec.LatestDate then
     382         LatestDate := FLatestDate
     383       else
     384         LatestDate := 0;
     385     end;*)
    325386
    326387     with cboPlace do if Length(ItemID) > 0 then
     
    433494end;
    434495
     496procedure TfrmEditProc.SetUpCombatVet;
     497begin
     498  pnlCombatVet.BringToFront;
     499  txtCombatVet.Enabled := True;
     500  txtCombatVet.Caption := 'Combat Veteran Eligibility Expires on ' + patient.CombatVet.ExpirationDate;
     501  pnlMain.Top := pnlMain.Top + pnlCombatVet.Height;
     502  pnlMain.Anchors := [akLeft, akTop, akRight];
     503  self.Height := self.Height + pnlCombatVet.Height;
     504  pnlMain.Anchors := [akLeft, akTop, akRight, akBottom];
     505  ActiveControl := txtCombatVet;
     506end;
     507
    435508procedure TfrmEditProc.cboProcSelect(Sender: TObject);
    436509begin
     
    454527            InfoBox('There are no services defined for this procedure.',
    455528              'Information', MB_OK or MB_ICONINFORMATION);
    456             cboProc.ItemIndex := -1;
     529            //cboProc.ItemIndex := -1;
    457530            InitDialog;
    458531            Exit ;
     
    652725
    653726
     727procedure TfrmEditProc.memCommentExit(Sender: TObject);
     728//added OnExit code for CQ17822 WAT
     729var
     730  AStringList: TStringList;
     731begin
     732  inherited;
     733  AStringList := TStringList.Create;
     734  try
     735    //QuickCopy(memComment, AStringList);
     736    AStringList.Text := memComment.Text;
     737    LimitStringLength(AStringList, 74);
     738    //QuickCopy(AstringList, memComment);
     739    memComment.Text := AStringList.Text;
     740    ControlChange(Self);
     741  finally
     742    AStringList.Free;
     743  end;
     744end;
     745
    654746procedure TfrmEditProc.memCommentKeyUp(Sender: TObject; var Key: Word;
    655747  Shift: TShiftState);
     
    671763  Shift: TShiftState);
    672764begin
    673   //The navigating tab controls were inadvertantently adding tab characters
     765  //The navigating tab controls were inadvertently adding tab characters
    674766  //This should fix it
    675767  FNavigatingTab := (Key = VK_TAB) and ([ssShift,ssCtrl] * Shift <> []);
Note: See TracChangeset for help on using the changeset viewer.