Produced by Araxis Merge on 3/22/2018 8:26:01 AM Central Daylight Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.
| # | Location | File | Last Modified |
|---|---|---|---|
| 1 | OR_30_405V42.zip\OR_30_405V42_SRC\Womens Health | fWVPregLacStatusUpdate.pas | Wed Jan 17 18:08:12 2018 UTC |
| 2 | OR_30_405V42.zip\OR_30_405V42_SRC\Womens Health | fWVPregLacStatusUpdate.pas | Wed Mar 21 14:43:54 2018 UTC |
| Description | Between Files 1 and 2 |
|
|---|---|---|
| Text Blocks | Lines | |
| Unchanged | 2 | 658 |
| Changed | 1 | 2 |
| Inserted | 0 | 0 |
| Removed | 0 | 0 |
| Whitespace | |
|---|---|
| Character case | Differences in character case are significant |
| Line endings | Differences in line endings (CR and LF characters) are ignored |
| CR/LF characters | Not shown in the comparison detail |
No regular expressions were active.
| 1 | unit fWVPr egLacStatu sUpdate; | |
| 2 | { | |
| 3 | ======== ========== ========== ========== ========== ========== ========== ========== == | |
| 4 | * | |
| 5 | * Applicatio n: TDrugs Patch OR* 3*377 and WV*1*24 | |
| 6 | * Developer: PII | |
| 7 | * Site: Salt L ake City I SC | |
| 8 | * | |
| 9 | * Descriptio n: Update form to e nter the a ppropriate informati on for | |
| 10 | * pregna ncy and la ctation da ta. Caller supplies the | |
| 11 | * approp riate pati ent via th e TWVPatie nt object as | |
| 12 | * an IWV Paitent in terface. | |
| 13 | * | |
| 14 | * Notes: | |
| 15 | * | |
| 16 | ======== ========== ========== ========== ========== ========== ========== ========== == | |
| 17 | } | |
| 18 | ||
| 19 | interface | |
| 20 | ||
| 21 | uses | |
| 22 | System.A ctions, | |
| 23 | System.C lasses, | |
| 24 | System.S ysUtils, | |
| 25 | System.U ITypes, | |
| 26 | System.V ariants, | |
| 27 | Vcl.Actn List, | |
| 28 | Vcl.ComC trls, | |
| 29 | Vcl.Cont rols, | |
| 30 | Vcl.Dial ogs, | |
| 31 | Vcl.ExtC trls, | |
| 32 | Vcl.Form s, | |
| 33 | Vcl.Grap hics, | |
| 34 | Vcl.Menu s, | |
| 35 | Vcl.StdC trls, | |
| 36 | Winapi.M essages, | |
| 37 | Winapi.W indows, | |
| 38 | iWVInter face, | |
| 39 | VAUtils; | |
| 40 | ||
| 41 | type | |
| 42 | TfrmWVPr egLacStatu sUpdate = class(TFor m) | |
| 43 | btnCan cel: TButt on; | |
| 44 | btnSav e: TButton ; | |
| 45 | pnlOpt ions: TPan el; | |
| 46 | pnlPre gnancyStat us: TPanel ; | |
| 47 | bvlMed icallyAble ToConceive : TBevel; | |
| 48 | robnAb leToConcei veYes: TRa dioButton; | |
| 49 | robnAb leToConcei veNo: TRad ioButton; | |
| 50 | ckbxMe nopause: T CheckBox; | |
| 51 | ckbxHy sterectomy : TCheckBo x; | |
| 52 | stxtAb leToConcei ve: TStati cText; | |
| 53 | stxtCu rrentlyPre gnant: TSt aticText; | |
| 54 | robnPr egnantYes: TRadioBut ton; | |
| 55 | robnPr egnantNo: TRadioButt on; | |
| 56 | robnPr egnantUnsu re: TRadio Button; | |
| 57 | dtpLas tMenstrual Period: TD ateTimePic ker; | |
| 58 | stxtLa stMenstrua lPeriod: T StaticText ; | |
| 59 | pnlLac tationStat us: TPanel ; | |
| 60 | bvlLac tationStat us: TBevel ; | |
| 61 | robnLa ctatingYes : TRadioBu tton; | |
| 62 | robnLa ctatingNo: TRadioBut ton; | |
| 63 | bvlPre gnancyStat us: TBevel ; | |
| 64 | stxtLa ctationSta tus: TStat icText; | |
| 65 | ckbxPe rmanent: T CheckBox; | |
| 66 | pnlEdd Method: TP anel; | |
| 67 | pnlMed icallyAble ToConceive : TPanel; | |
| 68 | pnlPre gnantState s: TPanel; | |
| 69 | stxtED DMethod: T StaticText ; | |
| 70 | stxtRe aderStop: TStaticTex t; | |
| 71 | ||
| 72 | proced ure AbleTo ConceiveYe sNo(Sender : TObject) ; | |
| 73 | proced ure Pregna ntYesNoUns ure(Sender : TObject) ; | |
| 74 | proced ure dtpLas tMenstrual PeriodChan ge(Sender: TObject); | |
| 75 | proced ure CheckO kToSave(Se nder: TObj ect); | |
| 76 | proced ure robnLa ctatingYes NoClick(Se nder: TObj ect); | |
| 77 | private | |
| 78 | { Priv ate declar ations } | |
| 79 | fDFN: string; | |
| 80 | public | |
| 81 | functi on Execute : Boolean; | |
| 82 | functi on GetData (aList: TS tringList) : Boolean; | |
| 83 | end; | |
| 84 | ||
| 85 | function N ewPLUpdate Form(aDFN: string): TfrmWVPreg LacStatusU pdate; | |
| 86 | ||
| 87 | implementa tion | |
| 88 | ||
| 89 | {$R *.dfm} | |
| 90 | ||
| 91 | ||
| 92 | const | |
| 93 | { Names for Name=V alue pairs } | |
| 94 | SUB_ABLE _TO_CONCEI VE = 'ABLE TO CONCEI VE'; | |
| 95 | SUB_LACT ATION_STAT US = 'LACT ATION STAT US'; | |
| 96 | SUB_LAST _MENSTRUAL _PERIOD = 'LAST MENS TRUAL PERI OD DATE'; | |
| 97 | SUB_MEDI CAL_REASON = 'MEDICA L REASON'; | |
| 98 | SUB_PATI ENT = 'PAT IENT'; | |
| 99 | SUB_PREG NANCY_STAT US = 'PREG NANCY STAT US'; | |
| 100 | ||
| 101 | function N ewPLUpdate Form(aDFN: string): TfrmWVPreg LacStatusU pdate; | |
| 102 | var | |
| 103 | i: integ er; | |
| 104 | begin | |
| 105 | Result : = TfrmWVPr egLacStatu sUpdate.Cr eate(Appli cation.Mai nForm); | |
| 106 | ||
| 107 | with Res ult do | |
| 108 | begin | |
| 109 | Load ed; | |
| 110 | Posi tion := po MainFormCe nter; | |
| 111 | fDFN := aDFN; | |
| 112 | pnlM edicallyAb leToConcei ve.Visible := True; | |
| 113 | pnlP regnancySt atus.Visib le := True ; | |
| 114 | pnlL actationSt atus.Visib le := True ; | |
| 115 | ||
| 116 | i := pnlOption s.Height + pnlOption s.Margins. Top + pnlO ptions.Mar gins.Botto m; | |
| 117 | ||
| 118 | if p nlLactatio nStatus.Vi sible then | |
| 119 | i := i + pnl LactationS tatus.Heig ht + pnlLa ctationSta tus.Margin s.Top + pn lLactation Status.Mar gins.Botto m; | |
| 120 | ||
| 121 | if p nlPregnanc yStatus.Vi sible then | |
| 122 | i := i + pnl PregnancyS tatus.Heig ht + pnlPr egnancySta tus.Margin s.Top + pn lPregnancy Status.Mar gins.Botto m; | |
| 123 | ||
| 124 | if p nlMedicall yAbleToCon ceive.Visi ble then | |
| 125 | i := i + pnl MedicallyA bleToConce ive.Height + pnlMedi callyAbleT oConceive. Margins.To p + pnlMed icallyAble ToConceive .Margins.B ottom; | |
| 126 | ||
| 127 | Clie ntHeight : = i; | |
| 128 | end; | |
| 129 | end; | |
| 130 | ||
| 131 | procedure TfrmWVPreg LacStatusU pdate.Chec kOkToSave( Sender: TO bject); | |
| 132 | begin | |
| 133 | if robnA bleToConce iveYes.Che cked then | |
| 134 | btnSav e.Enabled := robnPre gnantYes.C hecked or robnPregna ntNo.Check ed or robn PregnantUn sure.Check ed | |
| 135 | else if robnAbleTo ConceiveNo .Checked t hen | |
| 136 | btnSav e.Enabled := ckbxHys terectomy. Checked or ckbxMenop ause.Check ed or ckbx Permanent. Checked | |
| 137 | else if robnLactat ingYes.Che cked or ro bnLactatin gNo.Checke d then | |
| 138 | btnSav e.Enabled := True | |
| 139 | else | |
| 140 | btnSav e.Enabled := False; | |
| 141 | end; | |
| 142 | ||
| 143 | procedure TfrmWVPreg LacStatusU pdate.robn LactatingY esNoClick( Sender: TO bject); | |
| 144 | begin | |
| 145 | CheckOkT oSave(Send er); | |
| 146 | end; | |
| 147 | ||
| 148 | procedure TfrmWVPreg LacStatusU pdate.dtpL astMenstru alPeriodCh ange(Sende r: TObject ); | |
| 149 | begin | |
| 150 | dtpLastM enstrualPe riod.Forma t := ''; | |
| 151 | end; | |
| 152 | ||
| 153 | procedure TfrmWVPreg LacStatusU pdate.Able ToConceive YesNo(Send er: TObjec t); | |
| 154 | begin | |
| 155 | if robnA bleToConce iveYes.Che cked then | |
| 156 | begin | |
| 157 | ckbx Menopause. Checked := False; | |
| 158 | ckbx Menopause. Enabled := False; | |
| 159 | ckbx Hysterecto my.Checked := False; | |
| 160 | ckbx Hysterecto my.Enabled := False; | |
| 161 | ckbx Permanent. Checked := False; | |
| 162 | ckbx Permanent. Enabled := False; | |
| 163 | ||
| 164 | robn PregnantYe s.Enabled := True; | |
| 165 | robn PregnantYe s.TabStop := True; | |
| 166 | robn PregnantNo .Enabled : = True; | |
| 167 | robn PregnantUn sure.Enabl ed := True ; | |
| 168 | ||
| 169 | stxt LastMenstr ualPeriod. Enabled := False; | |
| 170 | dtpL astMenstru alPeriod.E nabled := False; | |
| 171 | dtpL astMenstru alPeriod.F ormat := ' '; | |
| 172 | stxt EDDMethod. Enabled := False; | |
| 173 | end | |
| 174 | else if robnAbleTo ConceiveNo .Checked t hen | |
| 175 | begin | |
| 176 | ckbx Menopause. Enabled := True; | |
| 177 | ckbx Hysterecto my.Enabled := True; | |
| 178 | ckbx Permanent. Enabled := True; | |
| 179 | ||
| 180 | robn PregnantYe s.Enabled := False; | |
| 181 | robn PregnantYe s.Checked := False; | |
| 182 | robn PregnantNo .Enabled : = False; | |
| 183 | robn PregnantNo .Checked : = False; | |
| 184 | robn PregnantUn sure.Enabl ed := Fals e; | |
| 185 | robn PregnantUn sure.Check ed := Fals e; | |
| 186 | ||
| 187 | stxt LastMenstr ualPeriod. Enabled := False; | |
| 188 | dtpL astMenstru alPeriod.E nabled := False; | |
| 189 | dtpL astMenstru alPeriod.F ormat := ' '; | |
| 190 | stxt EDDMethod. Enabled := False; | |
| 191 | end | |
| 192 | else | |
| 193 | begin | |
| 194 | ckbx Menopause. Checked := False; | |
| 195 | ckbx Menopause. Enabled := False; | |
| 196 | ckbx Hysterecto my.Checked := False; | |
| 197 | ckbx Hysterecto my.Enabled := False; | |
| 198 | ckbx Permanent. Checked := False; | |
| 199 | ckbx Permanent. Enabled := False; | |
| 200 | ||
| 201 | robn PregnantYe s.Enabled := False; | |
| 202 | robn PregnantYe s.Checked := False; | |
| 203 | robn PregnantNo .Enabled : = False; | |
| 204 | robn PregnantNo .Checked : = False; | |
| 205 | robn PregnantUn sure.Enabl ed := Fals e; | |
| 206 | robn PregnantUn sure.Check ed := Fals e; | |
| 207 | ||
| 208 | stxt LastMenstr ualPeriod. Enabled := False; | |
| 209 | dtpL astMenstru alPeriod.E nabled := False; | |
| 210 | dtpL astMenstru alPeriod.F ormat := ' '; | |
| 211 | stxt EDDMethod. Enabled := False; | |
| 212 | end; | |
| 213 | ||
| 214 | CheckOkT oSave(Send er); | |
| 215 | end; | |
| 216 | ||
| 217 | procedure TfrmWVPreg LacStatusU pdate.Preg nantYesNoU nsure(Send er: TObjec t); | |
| 218 | begin | |
| 219 | if rob nPregnantY es.Checked then | |
| 220 | begi n | |
| 221 | st xtLastMens trualPerio d.Enabled := True; | |
| 222 | dt pLastMenst rualPeriod .Enabled : = True; | |
| 223 | dt pLastMenst rualPeriod .DateTime := Now; | |
| 224 | dt pLastMenst rualPeriod .Format := ' '; | |
| 225 | st xtEDDMetho d.Enabled := True; | |
| 226 | if ScreenRea derActive then | |
| 227 | be gin | |
| 228 | stxtEDDMet hod.TabSto p := True; | |
| 229 | stxtEDDMet hod.TabOrd er := 4; | |
| 230 | en d; | |
| 231 | end | |
| 232 | else | |
| 233 | begi n | |
| 234 | st xtLastMens trualPerio d.Enabled := False; | |
| 235 | dt pLastMenst rualPeriod .Enabled : = False; | |
| 236 | dt pLastMenst rualPeriod .Format := ' '; | |
| 237 | st xtEDDMetho d.Enabled := False; | |
| 238 | end; | |
| 239 | ||
| 240 | CheckOkT oSave(Send er); | |
| 241 | end; | |
| 242 | ||
| 243 | function T frmWVPregL acStatusUp date.Execu te: Boolea n; | |
| 244 | begin | |
| 245 | Result : = (ShowMod al = mrOk) ; | |
| 246 | end; | |
| 247 | ||
| 248 | function T frmWVPregL acStatusUp date.GetDa ta(aList: TStringLis t): Boolea n; | |
| 249 | var | |
| 250 | aDateTim e: TDateTi me; | |
| 251 | y, m, d: Word; | |
| 252 | aStr: st ring; | |
| 253 | ||
| 254 | procedur e AddReaso n(var aStr : string; aValue: st ring); | |
| 255 | begin | |
| 256 | if aSt r <> '' th en | |
| 257 | begi n | |
| 258 | // Remove an y previous 'and's | |
| 259 | if Pos(' and ', aStr) > 0 then | |
| 260 | aStr := St ringReplac e(aStr, ' and ', ', ', [rfRepl aceAll]); | |
| 261 | // Append on this valu e with a g ramaticall y correct 'and' | |
| 262 | aS tr := Form at('%s and %s', [aSt r, aValue] ); | |
| 263 | // Set capit ialization to gramat ically cor rect first char only | |
| 264 | aS tr := Uppe rCase(Copy (aStr, 1, 1)) + Lowe rCase(Copy (aStr, 2, Length(aSt r))); | |
| 265 | end | |
| 266 | else | |
| 267 | aStr := aValue ; | |
| 268 | end; | |
| 269 | ||
| 270 | begin | |
| 271 | aList.Cl ear; | |
| 272 | try | |
| 273 | aList. Values[SUB _PATIENT] := fDFN; | |
| 274 | ||
| 275 | if rob nAbleToCon ceiveYes.C hecked the n | |
| 276 | begi n | |
| 277 | aL ist.Values [SUB_ABLE_ TO_CONCEIV E] := 'Yes '; | |
| 278 | ||
| 279 | if robnPregn antYes.Che cked then | |
| 280 | begin | |
| 281 | aList.Va lues[SUB_P REGNANCY_S TATUS] := 'Yes'; | |
| 282 | ||
| 283 | if dtpLa stMenstrua lPeriod.Fo rmat = '' then | |
| 284 | begin | |
| 285 | aDat eTime := d tpLastMens trualPerio d.DateTime ; | |
| 286 | Deco deDate(aDa teTime, y, m, d); | |
| 287 | aLis t.Values[S UB_LAST_ME NSTRUAL_PE RIOD] := I ntToStr((( y - 1700) * 10000) + (m * 100) + d); | |
| 288 | end | |
| 289 | end | |
| 290 | el se if robn PregnantNo .Checked t hen | |
| 291 | aList.Valu es[SUB_PRE GNANCY_STA TUS] := 'N o' | |
| 292 | el se if robn PregnantUn sure.Check ed then | |
| 293 | aList.Valu es[SUB_PRE GNANCY_STA TUS] := 'U nsure' | |
| 294 | el se | |
| 295 | aList.Valu es[SUB_PRE GNANCY_STA TUS] := 'U nknown'; | |
| 296 | end | |
| 297 | else i f robnAble ToConceive No.Checked then | |
| 298 | begi n | |
| 299 | aL ist.Values [SUB_ABLE_ TO_CONCEIV E] := 'No' ; | |
| 300 | aS tr := ''; | |
| 301 | ||
| 302 | if ckbxHyste rectomy.Ch ecked then | |
| 303 | AddReason( aStr, ckbx Hysterecto my.Caption ); | |
| 304 | ||
| 305 | if ckbxMenop ause.Check ed then | |
| 306 | AddReason( aStr, ckbx Menopause. Caption); | |
| 307 | ||
| 308 | if ckbxPerma nent.Check ed then | |
| 309 | AddReason( aStr, ckbx Permanent. Caption); | |
| 310 | ||
| 311 | aL ist.Values [SUB_MEDIC AL_REASON] := aStr; | |
| 312 | end; | |
| 313 | ||
| 314 | if rob nLactating Yes.Checke d then | |
| 315 | aLis t.Values[S UB_LACTATI ON_STATUS] := 'Yes' | |
| 316 | else i f robnLact atingNo.Ch ecked then | |
| 317 | aLis t.Values[S UB_LACTATI ON_STATUS] := 'No'; | |
| 318 | ||
| 319 | Result := True; | |
| 320 | except | |
| 321 | on e: Exception do | |
| 322 | begi n | |
| 323 | aL ist.Clear; | |
| 324 | aL ist.Add('- 1^' + e.Me ssage); | |
| 325 | Re sult := Fa lse; | |
| 326 | end; | |
| 327 | end; | |
| 328 | end; | |
| 329 | ||
| 330 | end. |
Araxis Merge (but not the data content of this report) is Copyright © 1993-2016 Araxis Ltd (www.araxis.com). All rights reserved.