|
Post by Walt Decker on Jun 7, 2022 14:10:21 GMT -5
Toward the end of May, 2022 I experienced a heart failure episode. Now I am monitoring various vital signs daily and am recording them in an app I wrote in my goto RAD system. The attached zip file contains dlls and LB source code for vital sign recording and display.
In the EDIT tab:
Date field: automatically set
O2 field: reading from an oxygen monitor
H Rate field: resting heart rate from oxygen monitor or other device
Weight field: body weight; an increase of 3 or more pounds indicates an accumulation of fluid;
use a diuretic to reduce retained fluid.
Systolic field: reading from a blood pressure cuff.
Dystolic field: reading from a blood pressure cuff.
SUBMIT button: Writes the data to a file and updates the list view in the LIST tab.
If you have any problems or want additional features, please let me know.
|
|
|
Post by Carl Gundel on Jun 7, 2022 14:24:18 GMT -5
Toward the end of May, 2022 I experienced a heart failure episode. Now I am monitoring various vital signs daily and am recording them in an app I wrote in my goto RAD system. The attached zip file contains dlls and LB source code for vital sign recording and display.
Very sorry to hear about your health problem Walt. I want to wish you the best. I am impressed that you channeled your energy and turned your circumstance into a project. May you still be with us for many years. -Carl
|
|
|
Post by Walt Decker on Jun 7, 2022 18:25:00 GMT -5
Thank you, Mr. Gundel, but that is part of life. I think my bill to society is paid up and I am ready to check out of this hotel at any time. The app is pretty rudimentary. I hope it can be used by others who find that they should monitor vitals on a daily basis. Have a good day, one and all!
|
|
|
Post by BeeTrap on Jun 12, 2022 11:22:59 GMT -5
Thanks for sharing your knowledge, code and wisdom. I may not be able to use this code directly, but I can always learn from you and the other Gurus! Thanks again! Keep on coding.......!!!!
My Wife has heart issues, rapid heart beat. This may come in handy, we'll see.
|
|
|
Post by Walt Decker on Jun 12, 2022 14:33:29 GMT -5
I have modified my original and the LB code to add the ability to edit the last record in the file, a selected record in the file or delete a selected record in the file. To edit or delete a selected record switch to the LIST tab and select a record in the list view then select from the "EDIT" menu the "Selected Record" or "Delete Selected Record" item. If the "Selected Record" item is chosen the fields in the EDIT tab will be filled with the data from that record. If the "Delete Selected Record" item is chosen the list view will be modified to reflect the new file records.
I have also added a PLOT tab. Just select the "PLOT" menu item and the "Plot" sub-item and a relative plot of all the fields, other than date will be produced.
That can be serious. I assume she monitors her hear rate more than once daily.
The LB app can easily be modified to include a TIME field. Just add it anywhere in the struct, e. g. Hour AS CHAR[15]. Add a time field (edit control) in the EDIT Tab and set that to the current time. Then in FUNCTION FN.AddCols() add a time column. Be sure to change the column numbers to reflect the additional column.
|
|
|
Post by Paul Decker on Aug 24, 2022 14:13:03 GMT -5
Can I get a demo of the application?
|
|
|
Post by Walt Decker on Aug 24, 2022 17:06:32 GMT -5
Paul, are you serious?
I am in the process of updating the RAD app to break the vital signs down into parts others may be interested in and include resperation and A1C, but if your e-amail address is the same I will send you an exe of the original.
|
|
|
Post by Paul Decker on Aug 25, 2022 9:05:47 GMT -5
Well I was thinking about an in-person demo.
|
|
|
Post by Walt Decker on Aug 25, 2022 9:28:27 GMT -5
Check your private messages.
|
|
|
Post by Walt Decker on Sept 26, 2022 10:47:35 GMT -5
It has taken a while to translate the modified PVS app to Liberty Basic; here it is. The modified app has a login window in which the user enters h/er initials and selects which PV signs s/he wants to record. The login window uses this information to create two directories in the directory in which the app resides. The first directory is the initals of the user. PVS data is written to this directory. The PVS file uses the initals and the numeric representation of chosen PVS signs and has an extension of ".LST". The second directory is named KAB which is a data backup directory. Files written to this directory have the date of the backup, the file name of the original PVS file and the extension ".KAB". In addition to the two directories, the login window creates a file named "MedCfg.GFC". This file contains a version number (00002), a user ID number consisting of the user initials and the numeric representation of the vital signs chosen, and the vital signs number. Since Libery Basic regards all file data as alpha-numeric, this file and the vital sign file(s) are arranged in a human readable form so the user can load the files into a document application and examine them. More than one user should be able to use this app. In addition, each user can have more than one vital signs file, each stored in h/er own directory. The source code is released to public domain. The code is uncommented, but an experienced coder should be able to follow the logic with little problem. If bugs are found, please let me know.
The below zip contains: CTL_COLOR.DLL :17,408 KB
NUMBERMANDLL.DLL :16,896 KB
LVCTRL.DLL :54,784 KB
TABCTL.DLL :66,048 KB
WMLBCB.DLL :81,408 KB
MED_V2F._BAS :66,185 KB
|
|
|
Post by Carl Gundel on Sept 26, 2022 20:19:05 GMT -5
It has taken a while to translate the modified PVS app to Liberty Basic; here it is.
The below zip contains: CTL_COLOR.DLL NUMBERMANDLL.DLL LVCTRL.DLL TABCTL.DLL WMLBCB.DLL MED_V2F._BAS
What sort of GUI features did you find it necessary to use APIs or DLLs?
|
|
|
Post by Walt Decker on Sept 27, 2022 9:40:48 GMT -5
Tab control (TABCTL.DLL), list view control (LVCTRL.DLL), custom background coloring of windows and static controls (CTL_COLOR.DLL), bit manipulation (NUMBERMANDLL.DLL) (could be done with LB code, but why write it when it is done in a dll?), custom menu bar and use of one function for managing menu items rather than six separate subs (WMLBCB.DLL), sizing of tab (TABCTL.DLL) and list view control (LVCTRL.DLL) when the form window is resized.
|
|
|
Post by pierre on Sept 27, 2022 13:41:12 GMT -5
The app doesn't work.
After I entered the data and clicked the 'submit' button, the app crashed without leaving any message in the error.log file. As far as I have been able to see, this happened within the function 'AddLvData' at CALLDLL #LV, "FN_LvLineCount".
The directories and the 'CFG' file have been created, the datafile 'LST' also, but it remains empty.
pierre
|
|
|
Post by Walt Decker on Sept 27, 2022 15:27:26 GMT -5
What vital signs did you choose? Are all the signs you chose displayed in the list view control? Have you modified the code?
Make sure you have these lines:
LvHndl = tHndls.Lv.struct
TxtStr$ = ""
ColNo = FN.ZeroStructs(0) tMedV2.Version.struct = VERSION tMedV2.PvsType.struct = PvsChoice
Immediately after the above add:
PRINT "UPDLINE = "; UpdLine PRINT "LVHNDL = "; LvHndl EXIT FUNCTION
LvHndl is zero should be a number much larger than 1. UpdLine should be zero.
|
|
|
Post by pierre on Sept 28, 2022 3:57:08 GMT -5
Thank you for your quick answer.
<< What vital signs did you choose? - ALL
<< Are all the signs you chose displayed in the list view control? - YES
<< Have you modified the code? - NO
<< Make sure you have these lines: << LvHndl = tHndls.Lv.struct << TxtStr$ = "" << ColNo = FN.ZeroStructs(0) << tMedV2.Version.struct = VERSION << tMedV2.PvsType.struct = PvsChoice
- YES
I have added the required lines. Results:
UpdLine: 0 LvHndl: 1181262
'---------------------------------
some details:
I created a ficticious user 'ABC'. Configuration file 'MedCfg.GFC' created in the default directory; contents: 00002ABC0003100031. directory ABC and subdirectory KAB created, backup file not created. data file ABC00031Med_Data.LST created: file is empty.
In vital sign 'Weight', I entered a number with 1 decimal place. The other signs were entered as integers. Leaving out the 'Weight' sign does not make any difference.
Environment:
Liberty BASIC 4.5.1 Microsoft Windows 10 Home Edition (french) DELL Inspiron 1500
'-------------------------------------
That's all. I hope you will find something. Thanks in advance.
pierre
|
|