Procedure

SaveDrug

Module

fODMeds

Last Modified

7/15/2014 3:26:42 PM

Scope

Local

Local subprogram to

FindCommonDrug

Declaration

procedure SaveDrug(const ADrug: string; UnitsPerDose: Extended);

Called-By Hierarchy


                                  SaveDrug
               TfrmODMeds.FindCommonDrug┘ 
              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┘     

Called-By

Name Declaration Comments
TfrmODMeds.FindCommonDrug function FindCommonDrug(DoseList: TStringList): string; -


Source

2962  procedure SaveDrug(const ADrug: string; UnitsPerDose: Extended);
2963  var
2964    i, DrugIndex: Integer;
2965    CurUnits: Extended;
2966  begin
2967    DrugIndex := -1;
2968    for i := 0 to Pred(FoundDrugs.Count) do
2969      if AnsiSameText(Piece(FoundDrugs[i], U, 1), ADrug) then DrugIndex := i;
2970    if DrugIndex = -1 then FoundDrugs.Add(ADrug + U + FloatToStr(UnitsPerDose)) else
2971    begin
2972      CurUnits := StrToFloatDef(Piece(FoundDrugs[DrugIndex], U, 2), 0);
2973      if UnitsPerDose > CurUnits
2974        then FoundDrugs[DrugIndex] := ADrug + U + FloatToStr(UnitsPerDose);
2975    end;
2976  end;