Procedure

TfrmODMeds.CheckDecimal

Module

fODMeds

Last Modified

7/15/2014 3:26:42 PM

Visibility

Public

Owner

TfrmODMeds

Declaration

procedure CheckDecimal(var AStr: string);

Calls Hierarchy


TfrmODMeds.CheckDecimal
 └TfrmODMeds.TextDosage

Called-By Hierarchy


                   TfrmODMeds.CheckDecimal
                TfrmODMeds.OutpatientSig┤ 
              TfrmODMeds.ControlChange┘ │ 
              TfrmODMeds.SetupDialog┤   │ 
                 TfrmODMeds.Validate┤   │ 
           TfrmODMeds.btnSelectClick┤   │ 
           TfrmODMeds.UMDelayClick┘ │   │ 
            TfrmODMeds.tabDoseChange┤   │ 
            TfrmODMeds.FormKeyDown┘ │   │ 
           TfrmODMeds.cboRouteChange┤   │ 
         TfrmODMeds.SetOnMedSelect┘ │   │ 
          TfrmODMeds.SetupDialog┤   │   │ 
    TfrmODMeds.btnSelectClick...┤   │   │ 
     TfrmODMeds.CheckFormAltDose┘   │   │ 
     TfrmODMeds.cboDosageClick┘     │   │ 
   TfrmODMeds.cboDosageKeyUp┘       │   │ 
         TfrmODMeds.popDurationClick┤   │ 
          TfrmODMeds.cboXRouteChange┤   │ 
           TfrmODMeds.cboXRouteClick┤   │ 
          TfrmODMeds.cboXRouteExit┘ │   │ 
       TfrmODMeds.txtXDurationChange┤   │ 
       TfrmODMeds.popDurationClick┘ │   │ 
          TfrmODMeds.btnXRemoveClick┤   │ 
        TfrmODMeds.grdDosesKeyDown┘ │   │ 
     TfrmODMeds.timCheckChangesTimer┤   │ 
          TfrmODMeds.UpdateRelated┘ │   │ 
          TfrmODMeds.SetupDialog┤   │   │ 
    TfrmODMeds.btnSelectClick...┤   │   │ 
    TfrmODMeds.cboDosageClick...┤   │   │ 
      TfrmODMeds.cboDosageChange┤   │   │ 
        TfrmODMeds.cboDosageExit┤   │   │ 
     TfrmODMeds.cboScheduleClick┤   │   │ 
     TfrmODMeds.cmdAcceptClick┤ │   │   │ 
        TfrmODMeds.chkPRNClick┤ │   │   │ 
        TfrmODMeds.txtNSSClick┤ │   │   │ 
   TfrmODMeds.cboScheduleEnter┤ │   │   │ 
   TfrmODMeds.UMShowNSSBuilder┘ │   │   │ 
    TfrmODMeds.cboScheduleChange┤   │   │ 
      TfrmODMeds.txtSupplyChange┤   │   │ 
    TfrmODMeds.txtQuantityChange┤   │   │ 
         TfrmODMeds.grdDosesExit┤   │   │ 
     TfrmODMeds.cboXDosageChange┤   │   │ 
      TfrmODMeds.cboXDosageClick┤   │   │ 
     TfrmODMeds.cboXDosageExit┤ │   │   │ 
    TfrmODMeds.cboXDosageKeyUp┘ │   │   │ 
       TfrmODMeds.cboXDosageExit┤   │   │ 
   TfrmODMeds.cboXScheduleChange┤   │   │ 
        TfrmODMeds.txtNSSClick┘ │   │   │ 
    TfrmODMeds.cboXScheduleClick┤   │   │ 
       TfrmODMeds.chkXPRNClick┤ │   │   │ 
   TfrmODMeds.pnlXScheduleExit┘ │   │   │ 
     TfrmODMeds.pnlXScheduleExit┤   │   │ 
TfrmODMeds.txtXDurationChange...┤   │   │ 
     TfrmODMeds.pnlXDurationExit┤   │   │ 
          TfrmODMeds.chkPRNClick┤   │   │ 
      TfrmODMeds.cboScheduleExit┤   │   │ 
       TfrmODMeds.cboDosageKeyUp┤   │   │ 
      TfrmODMeds.cboXDosageKeyUp┘   │   │ 
       TfrmODMeds.chkPtInstructClick┤   │ 
          TfrmODMeds.chkDoseNowClick┤   │ 
        TfrmODMeds.SetOnQuickOrder┘ │   │ 
          TfrmODMeds.SetupDialog┤   │   │ 
    TfrmODMeds.btnSelectClick...┘   │   │ 
              TfrmODMeds.chkPRNClick┤   │ 
       TfrmODMeds.cboXSequenceChange┤   │ 
         TfrmODMeds.txtRefillsChange┘   │ 
                 TfrmODMeds.InpatientSig┘ 
           TfrmODMeds.ControlChange...┘   

Calls

Name Declaration Comments
TfrmODMeds.TextDosage function TextDosage(ADosage: string): string; -

Called-By

Name Declaration Comments
TfrmODMeds.InpatientSig function InpatientSig: string; -
TfrmODMeds.OutpatientSig function OutpatientSig: string; -


Source

4928  procedure TfrmODMeds.CheckDecimal(var AStr: string);
4929  var
4930    DUName,UnitNum,tempStr: string;
4931    ToWord: string;
4932    ie,code: integer;
4933  begin
4934    ToWord := '';
4935    tempStr := AStr;
4936    UnitNum := Piece(AStr,' ',1);
4937    DUName := Copy(tempStr,Length(UnitNum)+1,Length(tempStr));
4938    DUName := Trim(DUName);
4939    if CharAt(UnitNum,1)='.' then
4940    begin
4941      if CharAt(UnitNum,2) in ['0','1','2','3','4','5','6','7','8','9'] then
4942      begin
4943        UnitNum := '0' + UnitNum;
4944        AStr := '0' + AStr;
4945      end;
4946    end;
4947    if ((Pos('TABLET',upperCase(DUName))= 0)) and ( Pos('DROP',upperCase(DUName))= 0 )then
4948      Exit;
4949    if (Length(UnitNum)>0) and (Length(DUName)>0) then
4950    begin
4951      if CharAt(UnitNum,1) <> '0' then
4952      begin
4953        Val(UnitNum, ie, code);
4954        if (code <> 0) and (ie=0) then
4955          Exit;
4956      end;
4957      AStr := TextDosage(UnitNum) + ' ' + DUName;
4958    end;
4959  end;