Re: [Hardhats-members] Information about Vista MUSE EKG System
Muse is not a VA VistA product. Muse is a GE product. VistA does have an HL7 interface to the GE MUSE system via the Clinical Procedures package. On 8/2/06, Falak Sher [EMAIL PROTECTED] wrote: From where can I get the documentation that explains the architecture of Vista MUSE EKG System? Regards -Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share youropinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- SteveI'll be more enthusiastic about encouraging thinking outside the box when there's evidence of any thinking going on inside it. -- Terry Pratchett - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] open vista installation help ..
If Taskman is not running then there will be certain functions that will not work properly within CPRS as CPRS queues those tasks to Taskman. So unless you want to find all such items and rewrite the code to not use Taskman, you are better off running Taskman whenever you are running CPRS. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
[Hardhats-members] JOINING HARDHATS AT GOOGLE
I followed the directions on the hardhats web page. I subscribed to [EMAIL PROTECTED]. Some parts of Google state that I am a member of that group. Yet when I went to My Groups at Google to change the email option as Gregg mentioned, it states that I am not a member of the group. What should I do now? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] CPRS crashes trying to open Notes tab
I would suspect that the problem is with the data in the way you created the note title. You said you used Fileman instead of the appropriate TIU options for creating notes and document classes. You really should not create note titles using Fileman unless you are absolutely sure you know how to properly link everything. You should always use the appropriate TIU options for such tasks. If you did not set up the hierarchy properly I can easily image CPRS getting stuck in an infinite recursive loop which appears to be the problem that you are having. In general, one should not use Fileman to create data in VistA files. You should use the appropriate package applications to make sure that all the appropriate linkage is in place. On 7/20/06, Lloyd Milligan [EMAIL PROTECTED] wrote: First, the reference to ISA^TIULX provides information about the context ofthe error.While I know very little about TIU, it is clear how the error iterated, as $$ISA is a recursive function whose documented purpose is todetermine whether a given document definition belongs to a particulardocument class.I'm guessing there is something recursive in your document type-class definition, that causes the stop test to fail in this recursivefunction.It should be possible to identify the exact problem by examiningthe AD index and then simulating the ISA process. Second, in regard to ^XTMP(XWBLOG_$J) being undefined the $J in questionis the process that is running the RPC, not your foreground process, and thelog is found in descendants from this node.Thus, in gt.m you could zwrite^XTMP(XWBLOG1234,*), for example (if $J=1234).In very verbose mode thelog is sure to contain a huge amount of data if you have successfullylogged-on to CPRS.As I recall a few hundred RPC's are executed by the time CPRS displays the cover page.Debugging the RPC may be of no furtherinterest, though, given the other clue.Lloyd- Original Message -From: Mike Schrom [EMAIL PROTECTED]To: hardhats-members@lists.sourceforge.netSent: Thursday, July 20, 2006 5:10 PMSubject: Re: [Hardhats-members] CPRS crashes trying to open Notes tab I tried that but wound up with ^XTMP(XWBLOG_$J) being undefined. There were two errors logged, though, one in GTM_FATAL_ERROR.ZSHOW_DMP_4714_1: /home/vista/GTM_FATAL_ERROR.ZSHOW_DMP_4714_1 OPEN RMS 0 OPEN RMS SCK$60031 OPEN SOCKET TOTAL=1 CURRENT=0 SOCKET[0]=client DESC=5 CONNECTED ACTIVENOTRAP [EMAIL PROTECTED] ZDELAYZBFSIZE=1024 ZIBFSIZE=87380 NODELIMITER EXCE=G GTMERR^%ZISTCP %ZTER+2^%ZTER ETRAP+8^XWBTCPC Indirection($ZTRAP) ISA+5^TIULX ISA+7^TIULX ISA+5^TIULX ISA+7^TIULX . . . . 17 pages! of ISA+5^TIULX ISA+7^TIULX . . . ISA+7^TIULX ISA+5^TIULX ISA+7^TIULX ISA+5^TIULX ISCWAD+4^TIULX CANATTCH+7^TIUSRVA CAPI+11^XWBBRK2 CALLP+18^XWBBRK CALLP+15^XWBBRK MAIN+30^XWBTCPC MAIN+26^XWBTCPC MAIN+2^XWBTCPC RESTART+3^XWBTCPC and a second in /home/vista/XWBTCPC.mje which said: %GTM-F-STACKOFLOW, Stack overflow Any help? Mike P.S. I've got to quit playing soon (or get yelled at for coming home late!), and have surgery tomorrow, so I likely won't get to this again before Monday. Lloyd Milligan wrote: Mike, From your description, it is not clear that the problem is within the application.The first error in order that you report is connection lost. A dropped connection could cause the 'list index out-of-bounds' error. It is possible that adding a title caused the amount of data returned on entering the Notes tab to increase, which in turn caused a buffer overrun (due to something wrong in the TCP/IP com), which caused the connection to drop, etc. If the list index error really did happen first, then one way to investigate this would be to enable verbose logging and check the rpc return at the point of failure, and backtrack from there.This wouldn't require reinstalling anything.Use XPAR MENU TOOLS option EP to set XWBDEBUG temporarily to 'very verbose'.Then examine the last part of the log in ^XTMP(XWBLOG_$J). Lloyd - Original Message - From: Mike Schrom [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, July 20, 2006 3:38 PM Subject: Re: [Hardhats-members] CPRS crashes trying to open Notes tab Good try, but wrong! Same messages, same crash. There seems to be something wrong with the document definitions. I tried to edit them through ^XUP and I get limted access, either through the 'only the owner' or 'national- no edit' blocks. Through fileman, I can't change attributes like 'status' unless I forcibly stuff () the attribute, which then hangs when I try to access the note title again. I can't find an option to delete them and start over, either. @ doesn't work : required. I may have to reinstall (and turn journaling on!) and start over. What the [EMAIL PROTECTED] it's a learning experience. Mike Nancy Anthracite wrote: HA!Bet if you log in as that sys admin, you won't get a crash.That is if your sysadmin has OR CPRS GUI CHART as a secondary menu, the ORES and PROVIDERkeys and the COR Tab. Try it.
Re: [Hardhats-members] sshd and mumps process hung
Two observations: 1. Do you have permission to the directory you are trying to create a file? Your $I pathis different than the MYIO path. 2. All the comments about $T value after doing an OPEN command are meaningless. The OPEN command is suppose to set $T only if you use OPEN with a timeout. I did not see where any one used an OPEN command with a timeout. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Fileman lookup question: Aliases in PATIENT file
Chuck, does Fileman reindex always kill of the index for all Regular indexes? Or does it only do this for B indexes? I thought that non-B regular indexes where reindexed using this logic: execute KILL logic and then execute SET logic for each entry. I have used Fileman reindex to try to clean up phantom index values to no avail. I had to manual kill the index then reindex when the index is regular index and not a B index. Kevin, why write code when Fileman has tools to do what you are trying to do. As Chuck stated, for B indexes, you must first reindex the main B index and then reindex any Mnemonic whole file indexes. You should then have a properly constructed B index on a file. You also made the statement: I wonder if the lookup in CPRS is not more sophisticated than a simply fileman lookup Whoever said that CPRS even uses Fileman as his main lookup tool? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] IB Error
What is the your value for ^%ZOSF(TMP)? Why is there not / following 'temp'? - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Spanish?
Putting text into the Dialog file is the easy part. The more difficult task (much more difficult) is converting all the existing M code to use the Dialog file instead of the WRITE and SET commands. Not only is that more difficult, it requires that the programmer understands the M code and its potential implications for VistA. It would also be nice if the VA would export a supported set of Dialog entries that could be used by any applications. Currently, each application must create their own Dialog entry or get an Integration Agreement with the owning application to use their Dialog entry. I think this would be a necessary requirement for the portability of VistA. As it is now, each application would have to create their own Dialog entry for the text Select (for an example). On 7/4/06, Chris Richardson [EMAIL PROTECTED] wrote: Ignacio;The Mexicans are currently working on converting VistA to Spanish, but wewould hope that we might get some help with the conversion to the DIALOG file and other technologies to get VistA to work with many foreignlanguages. Some work has been done to extract the literals, put them intothe DIALOG file and generates instrumented code.With the populated DIALOG file and the instrumented code, that should be at least 80% of the job.Theadvantage to this approach is that adding additional languages and having asystem which can host multiple languages on the same database.The selection of the language is by user with a default by the KERNEL SITEPARAMETER file.Sorry you didn't make it to Pittsburgh.- Original Message -From: Ignacio Valdes [EMAIL PROTECTED]To: hardhats-members@lists.sourceforge.netSent: Tuesday, July 04, 2006 4:45 PMSubject: [Hardhats-members] Spanish? Hello all, I received a request from a Linux Medical News reader from Spain asking about a spanish version of VistA. Does one exist or is it in progress? -- IV Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your jobeasier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-membersUsing Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] SQL -- Fileman questions
Boy you think your response is late Database can provide this functionality. This is not meant to be one against the other response. Cache comes with a SQL interface. Intersystems provided a Fileman mapper to SQL for Cache at no additional cost. On 4/21/06, Wolfgang Giere [EMAIL PROTECTED] wrote: I have had a chance to visit IHS in Tucson twice and found their approch to EMR VERY convincing. Greg Shorr's approaches certainly are worth a study! Wolfgang Giere PS: Excuse the late answer ... but better late then never! Gordon Moreshead wrote: I believe that is what they are talking about and he now lives in Albuquerque, last I knew. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of James Gray Sent: Thursday, April 13, 2006 1:13 PM To: hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] SQL -- Fileman questions He also wrote Q-Man which does some of what Kevin and Greg W are talking about. Jim Gray - Original Message - From: Cameron Schlehuber [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, April 13, 2006 11:55 AM Subject: RE: [Hardhats-members] SQL -- Fileman questions Who was the doctor who worked at IHS about 10 years ago with Dr Clayton Curtis who wrote some enhancements for searches on RPMS (variant of VistA) that optimized the searches by sampling the information before performing the joins, etc? Was his last name Shorr? -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Greg Woodhouse Sent: Thursday, April 13, 2006 10:11 AM To: hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] SQL -- Fileman questions --- Kevin Toppenberg [EMAIL PROTECTED] wrote: Thanks for your agreement, Greg. What I don't understand is why I am the only one asking for this. Make that one of two. It seems, to me, to be a vary BASIC tool that a database should offer. Absolutely. There's no need in repeating what I've already said regarding why I don't think there has been much demand for this feature, and why I think the lack of it is bad for VistA. Suffice it to say, that among Codd's rules, I consider the non-subversion rule one of the most important, if not THE most important. I also think that I have looked at this closer than others and believe I am closer to being able to figure out how to write an API that would plug into the core functionality of Fileman's SEARCH code. I'm sure you have. Exposing search functionality as a DBS call would be a great first step, but I think it really can and should be optimized, too. Its just that it would likely take me quite a while to get it fully working. And its just easier to write my own search code each time I need this. I really wish someone smarter than I (Hint, Hint, George Timpson) would plug this hole. It would probably take them one a day or so Kevin === Gregory Woodhouse [EMAIL PROTECTED] It is foolish to answer a question that you do not understand. --G. Polya (How to Solve It) --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=kkid0944bid$1720dat1642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory!
Re: [Hardhats-members] Module failure in XUS2
You need to upgrade the Cache.dat file. It looks like the .dat file is a 4.1.16 version. In the %SYS directory, do the following: D ALL^%SYSCONV It will then JOB off the conversion of all your Cache.dat files. You can check the status of the upgrade by: D STATUS^%SYSCONV Cache 5.0 is the last version that has the %SYSCONV utility. Starting with Cache 5.1 they moved that functionality to a Cache object script. I do not have that name handy. They have an extensive upgrade documentation as 5.1 is substantially different from previous versions. On 7/1/06, Gregory Woodhouse [EMAIL PROTECTED] wrote: On Jul 1, 2006, at 6:28 AM, Robert Marmion wrote: This is my first post, so please excuse me if I violate any site etiquette. I have spent some time reviewing the VistA demo and CPRS from the Hardhats/Nancy Anthracite, and am now trying to be a little more adventurous and install a more up to date version. I am installing VistA onto Cache 5.0… It is the free one from Intersystems which is used to run the VistA demo. I got the latest (6/15/06) fully patched Cache version from ftp://ftp.va.gov/vista/Software/cache.zip, and have installed it to the Cache database. Now I'm running through doing the basic set-up, and have run into what seems to be a module failure while entering an access code for a new user. I was entering a mixed AlphaNumeric code of ITB0627 The Terminal session is shown below. Can anyone help me please? Thanks, -Rob The FOIA version of VistA does not include encryption algorithms. Gregory Woodhouse [EMAIL PROTECTED] Judge a man by his questions not his answers. --Voltaire Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] How to remember last user input?
The problem with the Parameter approach is that you have to essentially emulate what Fileman is doing. Everytime your code is called, you have to save the last entry that user entered and then store an appropriate value in your parameter. Of course, you have to recall the parameter value each time in order to get the default value. If you are using interactive Fileman calls what is the advantage of using parameters instead of Fileman's method? On 6/25/06, Kevin Toppenberg [EMAIL PROTECTED] wrote: Do you know how to do this?I don't.KevinIf you need to store data on a per user basis, I still recommend using Kernel parameters. Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easierDownload IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ Hardhats-members mailing listHardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] GUI Mail
Did you install the Mail GUI KIDS build on your VistA server? On 6/30/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: is not inherent sorry- Original Message -From: [EMAIL PROTECTED]Date: Friday, June 30, 2006 12:12 pmSubject: Re: [Hardhats-members] GUI MailTo: [EMAIL PROTECTED], hardhats-members@lists.sourceforge.net The context message you are getting is stemming from the fact that you do not have the associated KIDS build installed for GUI Mail. When we develop front-ends to VistA we sometimes are required to write code to accomodate functionality that is in inherent to VistA. - Original Message - From: Nancy Anthracite [EMAIL PROTECTED] Date: Friday, June 30, 2006 6:44 am Subject: Re: [Hardhats-members] GUI Mail To: hardhats-members@lists.sourceforge.net Just a guess, but I suspect this uses the context manager Sentillion (?SP). It is proprietary.You can sign up for them to mail you a demo or development copy, I am not sure which, or least you could a few years ago. On Friday 30 June 2006 03:36, Asif Tasleem wrote: Dear All I have installed the GuiMail 2.3 client on my machine. When I try to connect to the Vista Server, following error pops up: The context 'CW MAIL' does not exist on server. Is there a KIDS file for GuiMail that creates this context or I should create this context manually? I am using HuiOpenVista 4 as well as VOE. Regards Muhammad Asif Tasleem Kabot International Dallas TX - Talk is cheap. Use Yahoo! Messenger to make PC-to-Phone calls. Great rates starting at 1¢/min. -- Nancy Anthracite Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as- us.falkag.net/sel ?cmd=lnkkid=120709bid=263057dat=121642___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as- us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-membersUsing Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easierDownload IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] A Bug in DICL2.m routine
I just tried your example on my machine and got no errors or problems: DSSAPPSOLDW $$FIND1^DIC(9.44,,14,,MX,SURGERY POSITION,,,ERR)9DSSAPPSOLDW $$FIND1^DIC(9.44,,1,,MX,SURGERY POSITION,,,ERR) 0 On 6/15/06, James Gray [EMAIL PROTECTED] wrote: I do not think your IENS should start with a comma. That may be the problem. Jim Gray - Original Message - From: Asif Tasleem To: hardhats-members@lists.sourceforge.net Sent: Thursday, June 15, 2006 1:45 AM Subject: [Hardhats-members] A Bug in DICL2.m routine Dear All There is a bug in DICL2.m routine.When I call FIND1^DIC and FIND^DIC, these DBS API's internally call following label in DICL2.m routineS2 ; execute any screen on transformed lookup values;N DISKIP S DISKIP =0I DIFLAGS[4 N DISUB F DISUB=1:1 :DINDEX(#) D Q :DISKIP. N DISCR2 S DISCR2 =+$G(DINDEX(DISUB, FOUND)). Q:'$D (DISCREEN(DISUB,DISCR2)) . N DIVAL,D S @DINDEX (DISUB,GET),D =DINDEX. X DISCREEN(DISUB ,DISCR2). S DISKIP=' $T. QThe bug lies in the X DISCREEN(DISUB ,DISCR2) statement. DISCREEN (DISUB,DISCR2 ) contains following command I $P(DIVAL,U)=DINDEX(1,0,1) that is to be executed. But the DINDEX(1,0,1) does not exist. So the routine crashes. I am running following code. SET PIEN=4 SET PIEN=,_PIEN_, SET FNAME=MAILMAN OUTSTANDING FTP TRANSACTIONS SET FIEN=$$FIND1^DIC(9.44,PIEN,MX,FNAME,,,ERR) Can someone debug the code of VistA DICL2.mI have checked the code both on HuiVista GTM and Cache.RegardsAsif Tasleem __Do You Yahoo!?Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members ___Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] kids export of a record
Using the KIDS, the best that you can do is export a partial DD. Select a field to be updated that would do no harm to the target system. Then you can use the data screen on the second page to export the entries that you wish. When many have to do this they normally select the .01 field of the file to export the DD definition. On 6/20/06, Greg Woodhouse [EMAIL PROTECTED] wrote: --- Hay, James (DHS-CMS) [EMAIL PROTECTED] wrote: Is this on the second screen in Kids? If so, aren't I stuck with aa full or partial DD export?I'm afraid I don't really have time to look into this right now. Is theproblem not being able to export a single record, or is it that you are concerned about potential DD updates? In the latter case, you mightconsider using the Fileman export tool. It handles subfiles byflattening out the file using a hierarchical key, and that ought towork just fine with file 5. ===Gregory Woodhouse[EMAIL PROTECTED]Judge a man by his questions not his answers.--Voltaire___ Hardhats-members mailing listHardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] vista flavors and development
That statement that VistA is platform independent is not totally accurate. The VistA Kernel application is the interface to the platformon whichVistA runs. The Kernel supports several OS implementations as well as several M implementations. If you run it on those that are supported by the VA Kernel, then you should have little to no problems On 6/2/06, Jim Self [EMAIL PROTECTED] wrote: Nancy wrote:The online VA Demo can be placed on your own machine by downloading it andfollowing the instructions found in the same directory.At the moment, it only runs on Cache and Windows.http://opensourcevista.net:/NancysVistAServer/VADemo12-5-06/I don't think that that restriction is strictly true. Certainly, CPRS runs only on M$Windows, but we have had a GT.M loadable version of this VistA version for quite awhile. I am pretty sure that someone has configured it to run CPRS.I loaded it onto a private server for use with M2Web. I intended to put it up for demonstration on the web because it has a more interesting database of demo patients thanany of the other VistA distributions, but I got sidetracked with other projects.--- Jim SelfSystems Architect, Lead DeveloperVMTH Computer Services, UC Davis(http://www.vmth.ucdavis.edu/us/jaself)--- M2Web Demonstration with VistA(http://vista.vmth.ucdavis.edu/)(http://openforum.worldvista.org/~forum/m.cgi )---___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members-- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Re: Input transform question
As George stated, DA should be defined if you are editing an existing record. DA() is a documented Fileman variable. If you are usig UPDATE^DIE and you are absolutely sure that you want to add it, then why not use UPDATE^DIE passing in Fileman internal entry values for the fields instead of external values? By using the internal values, UPDATE^DIE will not execute the input transforms. This procedure assumes that you have validated all the data you are adding to the file prior to calling UPDATE^DIE. On 5/25/06, Kevin Toppenberg [EMAIL PROTECTED] wrote: Dan,I have gone through several iterations since encountering thisproblem, but I initially thought that the UPDATE was all or nothing. But I am now working on another field, and it seems that the recordwas created, and just the filing in that one field failed.By the way, is there any formal call to test if one's values will passthe input transform for a given field before trying and potentially only partially succeeding--causing more mess?ThanksKevinOn 5/25/06, Dan [EMAIL PROTECTED] wrote: Kevin, Out of curiosity, was the UPDATE^DIE call erroring out or that field just wasn't getting set?I'm guessing it wasn't getting set.From my very brief tests it looks like DA is probably defined it just isn't a valid numeric IEN.It probably equals ?+ or whatever IEN setting you have in the FDA array. If you don't want to have to maintain a change to that Input Transform, you'll probably want to do an UPDATE^DIE just to create the new record, then do a FILE^DIE to insert the field info. At 03:59 PM 5/25/2006, you wrote: George Timson wrote: Here is the Input Transform from File 50, Field 901, that Kevin is struggling with: K:+X'=X!(X)!(X0)!(X?.E1.5N.N)!('$P($G(^PSDRUG(DA,DOS)),^,2)) XCode like this was written without taking into account the DBS calls like UPDATE^DIE that Kevin is using.Here is how I think it should be re-written:K:+X'=X!(X)!(X0)!(X?.E1.5N.N ) X I $G(DA)0,$D(X),'$P($G(^PSDRUG(DA,DOS)),^,2)) K XAt Medsphere, we have had to re-write several Input Transforms (in File 200, e.g.) for this very reason -- DA doesn't yet exist as the IEN. Yes, that is very helpful George. I too have encountered this kind of error in working with VALS^DIE and UPDATE^DIE but I hadn't yet decided what to do about it other than make notes and temporary workarounds. Could you list for us the problem transforms that you have found and your fixes? I expect that there are many such input transforms that need to be reworked so that they can be used with the DBS calls. I think it would be helpful to put thus kind of information up as a resource on the wiki or on M2Web. Hmmm. I just did a quick scan of input transforms and found 1041 that reference the variable DA (?.e1pDA1p.e). Many appear to have an unguarded reference to the variable DA like the one you fixed above. Others set DA to the value of some other variable. --- Jim Self Systems Architect, Lead Developer VMTH Computer Services, UC Davis (http://www.vmth.ucdavis.edu/us/jaself) --- M2Web Demonstration with VistA (http://vista.vmth.ucdavis.edu/) (http://openforum.worldvista.org/~forum/m.cgi) --- --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- All the advantages of Linux Managed Hosting--Without the Cost and Risk! Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn more http://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members---All the advantages of Linux Managed Hosting--Without the Cost and Risk!Fully trained technicians. The highest number of Red Hat certifications in the hosting industry. Fanatical Support. Click to learn morehttp://sel.as-us.falkag.net/sel?cmd=lnkkid=107521bid=248729dat=121642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members-- Steven McPhelanIf you have any trouble sounding condescending, find a Unix user to show you how it's done. -- Scott Adams
Re: [Hardhats-members] DINUM-ish question
That is correct. One should never assume that the third piece of the file header node is the last record in the file. It may or may not be. There was a recent Fileman patch which stops Fileman reindexer from setting the third piece of that header node to the last entry in the file asit used to do. On 5/17/06, Kevin Toppenberg [EMAIL PROTECTED] wrote: According to the Fileman reference manual, the 3rd piece is mostrecently assigned internal entry number and the 4th piece is the current total number of entriesIf there had been a deletion and addition into the middle of the fileyour method wouldn't work.For example, if the entries were:1,2,3,6,7,9,15 and 6 was the last one added, then we would have^^6^7Right?Kevincurrent total number of entriesOn 5/17/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: The 3rd piece of the zeroth node is equal to the last IEN of the file, increment that number by 1 for the next IENie, S (DINUM,X)=+$p(^psndf(50.67,0),U,3)+1,DIC=^PSNDF(50.67,,DIC(0)=L K DD,D0 D FILE^DICN Q:Y'0 - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] Date: Wednesday, May 17, 2006 2:29 pm Subject: Re: [Hardhats-members] DINUM-ish question To: hardhats-members@lists.sourceforge.net Actually, FILE^DICN also wants a value for .01 field, which we established is a request for the new records IEN.And I don't know what that should be without looking it up.So I don't see how this will help me. I am justing going to $order(^PSNDF(50.67,INDEX),-1) until I get a numeric value.This will be the last record number, and I will increment this by one. KevinOn 5/16/06, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Kevin, why not let Fileman creat the entry for you using FILE^DICN, this way you get the IEN you need passed bay to you for use in your DBS call(s). - Original Message - From: Gregory Woodhouse [EMAIL PROTECTED] Date: Tuesday, May 16, 2006 12:40 pm Subject: Re: [Hardhats-members] DINUM-ish question To: hardhats-members@lists.sourceforge.net Cc: [EMAIL PROTECTED] On May 15, 2006, at 10:53 PM, chuck5566 wrote:I don't think you have to do anything different - simply set that . 01 node (of TMGFDA) to the number you wish to use. Are you getting an error?If so, are you using the TMGIEN array to define the IEN? Is the .01 field set to the IEN in the input transform? If so, Ithink it would be enough to give it a value. If not, a brute force solution would be to get the IEN from the output array and thenmakea second call to set the .01 field to the IEN. Gregory Woodhouse[EMAIL PROTECTED] Metaphors be with you. --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as- us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimohttp://sel.as- us.falkag.net/sel? cmd=lnkkid=120709bid=263057dat=121642___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members--- Using Tomcat but need to do more? Need to support web services, security?Get stuff done quickly with pre-integrated technology to make your job easierDownload IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642___ Hardhats-members mailing listHardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] PTF Creation
Are you seeing any M errors recorded in the error log after you try to admit someone? It appears that you may not have the Nursing package setup properly since you are seeing this: *Patient Admitted**Notify NURSING ADP Coordinator and Site Manager that this patient was notadmitted into the NURSING Service because NURSING Site parameters were notupdated.* I suspect that either the Nursing package setup or a possible M error or both is preventing the admission event from creating the corresponding PTF record. That nursing message is generated from the NURSAMSG routine which is most likely invoked from a cross reference when the process is adding the WARD field value in the PATIENT file. It appears (although I will not swear to it) that the PTF admission is created in the DGPMV321 routine: NEW ;Add new corresponding admission to file W !!,Creating new hospital admission S DGMAS=40 D FAMT^DGPMV30 ; get active mvt type for TO ASIH admission S X=+DGPMA,DGPM0ND=+DGPMA_^_1_^_DFN_^_DGFAC_^^_DA_^^^_+DGPMDA_^_2 D NEW^DGPMV3 S DGPMAA=+Y K DGFAC S ^UTILITY(DGPM,$J,1,+Y,P)=,^UTILITY(DGPM,$J,1,+Y,A)=$G(^DGPM(+Y,0)) ; ;now update transfer movement with ASIH ADMISSION and ASIH SEQUENCE S DIE=^DGPM(,DA=DGPMDA,DR=.15_DGPMAA_;.22_1 K DQ,DG D ^DIE ; ;create new PTF entry W !,Creating PTF record for new hospital admission,! S Y=+DGPMA D CREATE^DGPTFCR S DGPMPTF=+Y ; ;update hospital admission with PTF NUMBER S DIE=^DGPM(,DA=DGPMAA,DR=.16_DGPMPTF K DQ,DG I $D(^DGPM(+DA,0)) S ^UTILITY(DGPM,$J,1,DA,P)=$S($D(^UTILITY(DGPM,$J,1,DA,P)):^(P),1:^DGPM(DA,0)) D ^DIE S ^UTILITY(DGPM,$J,1,DA,A)=^DGPM(DA,0) You will know for sure if this code is executed if you see that WRITE statements indicated in REDon the screen. I did not follow the rabbit trails thoroughly to determine if indeed this is where the PTF record is being created. There was a lot of logic before invoking this code that could possibly prevent the Admit A Patient process from getting to this point. I hope this helps. On 5/16/06, Nancy Anthracite [EMAIL PROTECTED] wrote: Since they may be asleep, here is some information about it:PTF Is Patient Treatment File, it is usually created automatically in the background foran individual patient,during in-patient admissions. You canalso create this record using information from past records. Without this,the system doesnt allow the user to discharge a patient. It used to work fine with Office Vista, VA VistA, WorldVista GTM versions, butsomehow doesnt work with HuiOpenVista. I beleive there is a backgroundservice responsible for this, but the system is not allowing me to enter the relative menus. There is no documentation about this anywhere. People whohave posted on the forums about a similar problem did not get an answer, andmy posts were dealt with in a similar fashion. - Wasif Toor to meDear all,I am working on HuiOpenVista4 (GTM/Linux). I am at 'begginers level'.I am facing problems while admitting a patient and associating PTF recordsof the patient.I am using ADT MANAGER MENU, ADT SYSTEM DEFINITION MENU and SCHEDULING MANAGER MENU.I am done with setting up clinic, registering patients and scheduling them.Now, i wanted to explore the inpatients process flow.For that, i set up a WARD using ADT SYS DEF MENU Created a new patient using ADT MGR MENU - REGISTRATION MENUCreated room-beds using ADT SYS DEF MENU - Add/Edit Bedsand then i admitted a patient using ADT MGR MENU - Bed Control MenuNow, it admits the patient, asks me for its room-bed, provider etc. Final output is*Patient Admitted**Notify NURSING ADP Coordinator and Site Manager that this patient was notadmitted into the NURSING Service because NURSING Site parameters were notupdated.* After this i can see this pateint in CPRS, when i start CPRS and check theradio button WARD on pateint selection screen, selecting the ward i justcreated.That means pateint is admitted, right. Now, when i try to access the PTF record of this patient using ADT MGR MENU- PTF Menuit says No PTF recordand when i again access ADMIT PATEINT menu, after feeding in the samepateint name, it generates a warning *WARNING: This admission has no corresponding PTF record*.cutting it short, i dont have PTF record associated with the admittedpateint.According to documentatoin in VDL, PTF is created automatically when a pateint is registered and admitted.Is it that i didnt assign any problems, meds, orders to this pateint usingCPRS?and i would really like to know the process flow of an inpateint and whatbasic units(wards, labs, etc) do i need to setup to treat an inpateint. looking forward to all the gurus help :)-May 1 Hardhats email Jawad ShafiqOn Tuesday 16 May 2006 12:33, Cameron Schlehuber wrote:What's the nature of the problem you're seeing? -Original Message-From: [EMAIL PROTECTED][mailto: [EMAIL PROTECTED]] On Behalf Of ashfaqSent: Tuesday, May 16, 2006 6:23 AMTo: hardhats-members@lists.sourceforge.netSubject: Re: [Hardhats-members] PTF Creation We're
Re: [Hardhats-members] National Drug Codes (NDC) headaches. Anyone have input?
The resue of standard codes is not unique to pharmacy NDC codes.
Re: [Hardhats-members] Rewriting CPRS in Java
Someone stated: JDO can use b-tree storages to store Java object trees directly.*That's* an object store. I believe that is exactly how Cache stores its objects. I do not believe that all Cache objects are stored as flat files with b-tree indexes.
Re: [Hardhats-members] field uniqueness (key index but null allowed)
I will have to look. Isn't there a file DDnode that will run a routine in the pre-edit stage prior to actually doing the edit. I also vaguely remember that there was a way to get FM to quit the edit session at that point. This is all from memory. On 3/8/06, Dan [EMAIL PROTECTED] wrote: So kinda still at square one -- don't know how (or if) FM will handlechanging the field in the middle of generating xrefs and how to do this (whether to call FM to set the field value to empty or to use @ to deletethe field while inside the xref fire).Guess I'll have to do someexperimenting.Maybe George would add a UNIQUE index to his FM project that allows for empty/null values (or better yet is user selectable).---This SF.Net email is sponsored by xPML, a groundbreaking scripting languagethat extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory!http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members-- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] field uniqueness (key index but null allowed)
The Fileman DBS calls should not invoke the Input transform if the flags indicate that the values are in internal format. On 3/7/06, Cameron Schlehuber [EMAIL PROTECTED] wrote: There are two ways to bypass the input transform, one is to use the fourslashes ( ) in input templates.The other is to set the data directly into the global.And if you're doing either of those, you shouldrun the input transform code yourself anyway!-Original Message-From: [EMAIL PROTECTED][mailto:[EMAIL PROTECTED]] On Behalf Of JamesGraySent: Tuesday, March 07, 2006 1:51 PM To: hardhats-members@lists.sourceforge.netSubject: Re: [Hardhats-members] field uniqueness (key index but nullallowed)You aren't planning to put data into this field any other way than through either the classical Fileman API, the silent calls, or the Fileman interfaceare you?Jim Gray- Original Message -From: Dan [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.netSent: Tuesday, March 07, 2006 12:43 PMSubject: RE: [Hardhats-members] field uniqueness (key index but null allowed) Aren't Input Transforms only executed when passing external values via FileMan DB calls? At 01:41 PM 3/7/2006, Cameron wrote:A simple regular cross-reference on the field could keep track of all valuesused in that field.Put your logic in the Input Transform.Note that theSSN field in the New Person file follows the same logic you've described(along with other logic too).Check out how it behaves and is accomplished.(Note that the SSN field in the New Person file can be left null if theperson entering the information holds the XUSPF200 key.) --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members---This SF.Net email is sponsored by xPML, a groundbreaking scripting languagethat extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory!http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members---This SF.Net email is sponsored by xPML, a groundbreaking scripting languagethat extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory!http://sel.as-us.falkag.net/sel?cmdlnkkid0944bid$1720dat1642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members-- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] local file numbers
So doesn't that mean that allocating an open file number range in the 000-999 through WorldVistA conflict with the IHS file numbers? On 2/28/06, Gordon Moreshead [EMAIL PROTECTED] wrote: Because back in the early 90's, VA imported some files from IHS applications related to visit file and V-files. PCE originated in IHS as PCC. Gordon From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] ] On Behalf Of Steven McPhelanSent: Tuesday, February 28, 2006 2:59 PM To: hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] local file numbers Isn't the entire 9,000,000 range assigned to IHS? If not then why are there IHS files in FOIA VistA in the 999.xx range? -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Protecting against indirection errors.
What does your application do when it does encounter a null subscript? I think that is the more important problem than a M error thrown when it happens. In production software, why would your application encounter a null subscript in the first place? Usually it is the resultof bad data or missing data in the database. If your application was expecting a valid reference at that point, I presume that the data that populated those subscripts was critical or important to the integrity of the database. Protecting againstevery possible computer error in software as large as VistA is not always possible. If the application is well designed then you should never experience null subscripts. So why burden the source code with redundent checks for conditions that should never occur. Of course things happen. But that is what the error trap and the error log are for. The user gets notified of a M error. It seems very bad to the end user. But then you have a log to reference to fix those database errors in the first place. If the problem recurs after x number of times then you have a clue that there may be some software bug somewhere. It is always a trade off on how to handle potential problems which occur seldom or less. I cannot imagine how large the source code for VistA would be if every application always checked for valid information every time even though the application was designed with the intent that that valid information would always be present.
Re: [Hardhats-members] KILL'ing and NEW'ing -- what's really happening?
You are addressing issues that have always been of concern to enterprise developers versus individual PC developers. Yes, Yes, Yes, there are individual PC developers that care about efficiencies. I do not want to go there. In an enterprise implementation a 1000 NEWs versus 1 NEW and a 1000 KILLs is more expensive on overall computer resources. Even though the little millisecond differences are nothing in and of themselves, the cumulative effect can be devastating on system performance. Whereas those extera milliseconds in the application develped for the individual on an individual workstation has little effect. Depending upon the M implementation and the operating system upon which rides, there may be system configuration limits that you could run into. Each process may have a maximum limit on stack space. In your example this would not be an issue as someone said the NEW inside the loop is a push and a pop done 1000 times.
Re: [Hardhats-members] Protecting against indirection errors.
I understand all this. I also made some assumptions in my statements. I had assumed that a process was initiated either through an RPC Broker connection or invoking an OPTION from Menuman through proper Kernel sign-on. In both of these cases, the Kernel sets an initial error trap for that process. So this begs the question as to whether or not individual applictions should also set an error trap. If you are not coming in via one of those two avenues, then yes your application should assume the responsibility that the Kernel has always had for VistA. If my application is well defined I should not have UNDEFINED or NULLSUBSCRIPT type errors. If an occasional error does arise, the Kernel has provided an erro trap to gracefully exit the user instead of just crashing the user application. Of course that graceful execution includes logging the error and sometimes stopping the user's process requiring the user to re-signon. Some may say that is not graceful. However, let's look at the VA's approach. How many thousands (or tens of thousands) of sign-on events occur in a single day. Yet, in a well managed system, the error trap is way less than 100 entries, sometimes no entries. Looking at the percentage of error log entries versus the number of sign-on events, the number is so small it does not seem reasonable to ask every application developer to set their own error traps all the time or to excessively protect your code against possible errors for bad data that should not be there in the first place. In the case for VistA Fileman files, if I have a pointer to file, is it reasonable to always validate in ALL VistA applications that $P(^global(recnum,0),U) is not null? I never check for this. When doing direct global referencing of a file my code usually looks something like this. I am presuming that $D(^global(recnum,0))=1 S X=$G(^global(recnum,0)) I X= do error condition handling and gracefully quit. S Y=$P(X,U) etc... I never check to see if Y is NULL. Yes ifall I wanted is the .01 field value from that record I would use something like S X=$P($G(^global(recnum,0)),U) But many times I want other information stored on the zeroth node. So is it really worth invoking additional error trapping over and above what the Kernel does? I agree that THEORETICALLY, all applications should always protect itself against all that it considers important. But we do not live in a theoretical world. Just checking for possible bad data is not sufficient for a well designed conscientious application. What does the application do if it encounters bad data that it encounters that should not be that way? A good program is going to report that somehow. Who do you report it to? How do you report it? Etc., Etc., Etc.,... Now you have added a lot more source code to handle the proper notification for bad data. With a system as large as VistA you cannot send all these messages to one recipient.
Re: [Hardhats-members] KILL'ing and NEW'ing -- what's really happening?
I will give an example of enterprise versus local programmers that I have experienced in over 20 years of hiring programmers. A programmer who has only programmed in the situation where the application will run on a standalone single-user PC may not think twice about locking a record or a file. What the heck, they have never had a problem before. Who cares if the file is locked for 20 minutes or more. In a high use application, I can quickly end up in a locked up system with users waiting for locked resources. Even someone with my experience makes these type of mistakes.When adding a new record to a file, I had L +^global(filenum):timeoutThis was a relatively small application, the Dental VistA package. Everythingworked fine until Manhattan installed the patch. Manhattan has the largest Dental service in the VA. I got calls within hours of installing the patch. What I should have done was L +^global(filenum,0):timeout. Indeed this change solved the problem.
Re: [Hardhats-members] local file numbers
Isn't the entire 9,000,000 range assigned to IHS? If not then why are there IHS files in FOIA VistA in the 999.xx range?
Re: [Hardhats-members] Silent Fileman calls not silent
Mike explained the problem again. The problem is not with READing from the null device, it has to do with what does the application do if it gets a null value from the READ. Fileman and other applications display a message a prompt again. Since M answers the READ command, one cannot check for $T either since it would indicate that the READ command did not time-out. In this case, I believe someone else determined (or guessed) that the READ may be coming from the processing of an input transform and not from a cross reference. This would make much more sense. But it does not alleviate the problem with an infinite loop of reading from the null device. Your other suggestion requires code that is M implementation specific. Since the problem is with the M READ command, I do not know how you would address this for all of VistA. The number of READ commnands in all VistA applications is tremendous. Just because the problem occurred within a Fileman input transform, you have no assurance that the READ command is within the domain of Fileman. I do not believe that the MDC addressed in final form what the standard behavior of a M system should be in response to a READ from the null device. I do not know if it was even discussed.
Re: [Hardhats-members] Silent Fileman calls not silent
Opening a NULL device is an option if you are certain all your IO is in the form of Reads. On 2/5/06, Gregory Woodhouse [EMAIL PROTECTED] wrote: Kevin, Try setting ZTQUEUED (to anything) right before making the DB call.Yeah, a kludge - but it might stop some of the messages. Don't do that. Lying to the system (telling it that a process isrunning in the background in this case) is almost always a bad idea,because there could be unknown side effects. If you must do something here, it is preferable to open and USE the NULL device (so that allterminal output will be redirected there).
Re: [Hardhats-members] Silent Fileman calls not silent
You never want to READ from the NULL device, especially with something like Press return to continue as the application may get stuck in a infinite READ loop especially if the READ answer is required. On 2/6/06, Greg Woodhouse [EMAIL PROTECTED] wrote: --- Steven McPhelan [EMAIL PROTECTED] wrote: Opening a NULL device is an option if you are certain all your IO is in the form of Reads.I guess I don't understand. If you USE the null device, your WRITEswill go to the null device, too. Are you thinking about multiplexing devices here?===Gregory Woodhouse[EMAIL PROTECTED]All truth passes through three stages: First, it is ridiculed.Second, it is violently opposed. Third, it is accepted as being self-evident.--Arthur Schopenhauer---This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK!http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___Hardhats-members mailing listHardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members-- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Silent Fileman calls not silent
The write statement may or may not be in a cross reference. The VHA DBA and SACC did come out with a standard stating that there should be now direct WRITE statements in any DD data elements. If WRITE statements are required, then the application is suppose to use EN^DDIOL. Thus you could have severalsituations here: 1. Not knowing how exactly you called silent APIs the system may interpret you as an interactive user and thus EN^DDIOL would output to the screen. Not a bug 2. The silent APIs are not responsible for the contents of individual DD nodes nor is it responsible for the whims of the developer of that DD component. Not a bug. 3. You may be invoking an old DD element that existed prior to the standards mentioned above. There may have been no need for that application to have revisited that DD element since then. Thus it was in compliance at the time. Not a bug. Nor is it a SACC violation. I do not believe the VA developers are required to go through all their old codeevery time there is an update to theSACC standards. Anything the VA developers submit for release must comply with all the latest standards. On 2/3/06, Kevin Toppenberg [EMAIL PROTECTED] wrote: Well, from what I am seeing, i.e. output during a silent-db-call,doesn't that mean that there is an output in a cross-reference? I guess I could do a text-file search for the offending output, but Iwouldn't new if it was OK to change it.KevinOn 2/2/06, Gregory Woodhouse [EMAIL PROTECTED] wrote: On Feb 2, 2006, at 8:23 PM, Kevin Toppenberg wrote: Thanks Gary. By the way, do you have any idea where that output goes when there is no user session (i.e. with RPC broker calls)? Thanks Kevin That's one of the things the NULL device is for. BTW, If someone put a WRITE statement in a cross-reference, *that* is a bug ( a standards violation, to boot). === Gregory Woodhouse [EMAIL PROTECTED] A hero is no braver than an ordinary man, but he is brave five minutes longer. -- Ralph Waldo Emerson --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members--- This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makessearching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmdlnkkid3432bid#0486dat1642___ Hardhats-members mailing listHardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] More problems after power outage
1. Do you have a entry called VISTA in your VOLUME SET file (#14.5)? 2. Do you have need to have linked volume sets? If the answer to 1 is NO or if the answer to 2 is NO then you can do the following at the programmer's prompt: K ^%ZTSCH(LINK) If you have need for linkage, then I would still do the KILL statement above and go through the Taskman menu options to make sure your linkage is setup the way you are expecting. On 1/18/06, Marc Krawitz [EMAIL PROTECTED] wrote: Hi Greg - I did sign-in but my user was missing the ZTMQ key. After assigning this key, I deleted all remaining tasks, re-started Taskman, but I'm still getting the same error: Which error? 4835 Process ID: 2472 (2472) JAN 18, 2006 19:27:52 Username: Process Name: UCI/VOL: [VAH,ROU] : $ZA: $ZB: Current $IO: 0 Current $ZIO: ^0^0 CPU time: Page Faults: Direct I/O: Buffered I/O: $ZE= TEST+2^%ZTM3, Null subscripts are not allowed for region: DEFAULT,150373498,-%GTM-E-NULSUBSC S ZTS=^%ZIS(14.5,ZTI,0) Last Global Ref: ^%ZIS(14.5,,0) Which symbol? ^L $DEVICE=$ECODE=,Z150373498,$ESTACK=6$ETRAP=D ER2^%ZTM5$QUIT=0$STACK=6$STACK(000)=-direct$STACK(000,ECODE)=$STACK(000,MCODE)= F %ZTLOOP=0:1 S %ZTLOOP=%ZTLOOP#16 D CHECK,SCHQ,IDLE:%ZTCHK $STACK(000,PLACE)=LOOP+1^%ZTM$STACK(001)=DO$STACK(001,ECODE)=$STACK(001,MCODE)= I $D(^%ZTSCH(LINK))#2,$$DIFF($H,^(LINK))900 D LINK^%ZTM3 $STACK(001,PLACE)=CHECK+13^%ZTM$STACK(002)=DO$STACK(002,ECODE)=$STACK(002,MCODE)=L0 F ZT=0:0 S ZTDVOL=$O(^%ZTSCH(LINK,ZTDVOL)) Q:ZTDVOL=D TEST $STACK(002,PLACE)=L0^%ZTM3$STACK(003)=DO Enter '^' to quit listing, RETURN to continue...: $STACK(003,ECODE)=,Z150373498,$STACK(003,MCODE)= S ZTS=^%ZIS(14.5,ZTI,0)$STACK(003,PLACE)=TEST+2^%ZTM3$STACK(004)=DO$STACK(004,ECODE)=$STACK(004,MCODE)= D ^%ZTER K ZTERCODE $STACK(004,PLACE)=ER+13^%ZTM5$X $Y=0 0$ZV=GT.M V5.0-000 Linux x86%N=82%ZT(^XUTL(XQ,$J))=%ZTIME=5208521271%ZTJOB=J GTM^%ZTMS::5%ZTLOOP=0%ZTMON=19%ZTMON(19)=0 %ZTMON(DAY)=60283%ZTMON(NEXT)=5208523200%ZTNLG=0%ZTNODE=vistaserver Enter '^' to quit listing, RETURN to continue...: %ZTOS=GT.M (Unix)^19%ZTPAIR=ROU:vistaserver%ZTPFLG(BAL)=%ZTPFLG(BI)=30%ZTPFLG(DCL)=%ZTPFLG(LBT)=0%ZTPFLG(MINSUB)=1%ZTPFLG(START)=60283 %ZTPFLG(TM-DELAY)=60%ZTPFLG(XUSCNT)=54%ZTPN=2%ZTPS=ROU:vistaserver^^N^7^^^500^^G^^0^1%ZTPT=7%ZTRET=0%ZTSIZ=0%ZTSLO=0%ZTUCI=VAH%ZTVLI=0%ZTVMJ=500%ZTVOL=ROU Enter '^' to quit listing, RETURN to continue...: %ZTVSN=2%ZTVSS=ROU^N^Y^N^Y^VAH^2^^14^G^1%ZTYPE=G%ZTYPE(V)=GDTIME=0DUZ=0DUZ(0)=@U=^ZT=60283,70072ZTDVOL=VISTAZTE=ZTERCODE=TEST+2^%ZTM3, Null subscripts are not allowed for region: DEFAULT,15037 3498,-%GTM-E-NULSUBSCZTI=ZTPAIR= Enter '^' to quit listing, RETURN to continue...: $ZE= TEST+2^%ZTM3, Null subscripts are not allowed for region: DEFAULT,150373498,-%GTM-E-NULSUBSC S ZTS=^%ZIS(14.5,ZTI,0) Last Global Ref: ^%ZIS(14.5,,0) Which symbol? -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Attracting developers
I was referring to the parameterization in the Kernel in that the sign-on division for the user over-rides the default devision for the system in the initial setting of the DUZ(AG) variable. I agree that the way that DAOU implemented the changes is not a true parameterization. It was a local modification to support VOE and VOE only. It was done in a manner that was not consistent with the public statements made by VA personnel. But that statement could be considered inflammatory in that it presumes a certain definition of parameterization. I do not consider the DAOU changes to have been an implementation of parameters. When would a single VistA implementation need to to accommodate multiple agencies especially if those agencies may have slightly different file structures and business rules? Now, if the FOIA release contained all the M source code for the VA and FOIA-VA and IHS and OTHER and possibly CHCS AND all the underlying M code was appropriately parameterized, then I could see this. But until then I would think that a single VistA implementation must only perform according to one agency. On 1/18/06, Cameron Schlehuber [EMAIL PROTECTED] wrote: The "additional parameterization" is dependent on the enterprises represented in the Agency Code field in the Kernel System Parameters file. The kind of behavior is also dependent on sometimes needing to accommodate multiple agencies default behavior as well as being able to "switch" on or off some behaviors. E.g. while the default behavior for VA is to use an MPI, the default for IHS and VOE is to not do so. However, should an enterprise (like IHS) eventually implement an MPI, that behavior will need to be ready to be switched "ON". -Original Message-From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] ] On Behalf Of Steven McPhelanSent: Wednesday, January 18, 2006 4:47 PMTo: hardhats-members@lists.sourceforge.netSubject: Re: [Hardhats-members] Attracting developers What additional parameterization of this variable is needed over and above what the Kernel already provides? On 1/18/06, James Gray [EMAIL PROTECTED] wrote: - Original Message -From: Gregory Woodhouse [EMAIL PROTECTED] On Jan 17, 2006, at 7:48 PM, James Gray wrote: Is it possible the VA would support parameterization using thevariable DUZ(AG) the way it has with VOE. Jim Gray Suppose they do. Is that enough?My guess is no, but look at the first executable line of ^DPTLK in VOEI $G(DUZ(AG))=E D ^AUPNLK Q That goes pretty far.Jim Gray === Gregory Woodhouse [EMAIL PROTECTED] The whole of science is nothing more than a refinement of everyday thinking.-- Albert Einstein --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Language shootout - Ackerman function
How fair is this test to a M implementation that adheres to latest ANSI M? If I am not mistaken, the ANSI standard specifies the depth of the stack that any compliant implementation must adhere which I believe is 128. So to compare one language adhering to its standards to another language which may not have any of the same restrictions would be unfair. -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Attracting developers
What additional parameterization of this variable is needed over and above what the Kernel already provides? On 1/18/06, James Gray [EMAIL PROTECTED] wrote: - Original Message -From: Gregory Woodhouse [EMAIL PROTECTED] On Jan 17, 2006, at 7:48 PM, James Gray wrote: Is it possible the VA would support parameterization using thevariable DUZ(AG) the way it has with VOE. Jim Gray Suppose they do. Is that enough?My guess is no, but look at the first executable line of ^DPTLK in VOEI $G(DUZ(AG))=E D ^AUPNLK Q That goes pretty far.Jim Gray === Gregory Woodhouse [EMAIL PROTECTED] The whole of science is nothing more than a refinement of everyday thinking.-- Albert Einstein --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members--- This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makessearching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642___ Hardhats-members mailing listHardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Interleaving
Your increment example would show the interleave by looking at the subscripted global. Why not do this as: S ^GLB= J1 ; F I=1:1:100 S ^GLB=$G(^GLB)_A Q J2 ; F I=1:1:100 S ^GLB=$G(^GLB)_B Q Wouldn't that show interleaving within standard M without using the explicit LOCK command. Obviously the actually control of the setting of the global would be controlled by the Global module of the the M system. In most systems today, 100 would not be sufficient to demonstrated your interleave. You might need something like F I=1:1:15000 Mostly likely J1 would run to completion before J2 even started. With most processes today, I doubt 15000 would be sufficient.
Re: [Hardhats-members] Backup / Restore Question
The Cache documentation also describes how to do live backups. On 1/9/06, Marc Krawitz [EMAIL PROTECTED] wrote: Excellent - the ability to do live backups already puts VistA ahead of some of the competition. --Marc-- Steven McPhelanAction springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Cannot load a KIDS file
I will say it again, the KIDS LOAD A FILE option requires a properly defined HFS device in the DEVICE file. Jim was not having a problem with his user setup. If it was that he would never have gotten to the device prompt in the LOAD option. The %ZISH utility does not require any device to be defined in the DEVICE file.
Re: [Hardhats-members] M syntax question
No. Your same thing is an invalid M syntax S (J(N),DK)=+$P(@(R_0)),U,2) If you follow VA SAC programming standards, your second line is in violation of SAC as the naked reference does not have the explicit reference preceding it on the same command line. It is valid M syntax. But the SAC standard is there for very good reasons for maintaining code of the life time of the program. It can be burdensome. But VA experience has proven the wisdom of that standard in general. Someone a long time ago showed me a trick for counting parentheses to make sure you have the right amount: set (J(N),DK)=+$piece(@(R_0)),U,2) 1 2 10 1 21 0 -1 Lloyd has a very good trick for preserving the right number of parentheses also: S () = +$P() S (J(N),DK) = +$P(@(),U,2) S (J(N),DK) = +$P(@(R_0)),U,2) On 12/31/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I found the following line in the file DIS.mset @((J(N),DK)=+$piece(_R_0),U,2)),R=$piece(^(0),U) would this be the same thing?set (J(N),DK)=+$piece(@(R_0)),U,2)set R=$piece(^(0),U) ThanksKevin-- Steven McPhelan Action springs not from thought, but from a readiness for responsibility. - Dietrich Bohhoeffer
Re: [Hardhats-members] Output transform question
2:10 On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: If I have file A with a field 2 that is a pointer to file B, then when I do an fileman inquiry to print out a given record, then for field 2 it will display the .01 field for file B as the value for the pointer. But what if I wanted field 10 in file B instead. I am guessing this is determined by an output transform of some sort. But would I put this in file A or file B? And is it set at a file level or a field level? ThanksKevin-- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein
Re: [Hardhats-members] Re: IENS formating for database server calls
I also wanted to show the relationship between the place holder and the actualvalue to use a record number. The place holder value has no relationship whatsoever to what ends up being the internal record number. On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I think what you changed from my example was namespacing my FDA. You are right. I think I have gotten funny results in the past when I didn't do that. I forgot that in my example. Thanks!Kevin On 12/23/05, Steven McPhelan [EMAIL PROTECTED] wrote: Yes and my example explicitly would place an entry in record# 1 provided no current record already existed at record number 1. My example demonstrates the proper constructs of Fileman DBS API calls while demonstrating by example the meaning of those constructs. On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: That looks right.Thanks!And in your example (copying my example), the target record number was 1. Thanks so much and Merry Christmas!KevinOn 12/22/05, steven mcphelan [EMAIL PROTECTED] wrote: As you saw it was in the documentation.But what you did is not quite correct.I will change some of the numbers to make it more obvious what needs to be done. S TMGFDA(2706.3,+19,,.01)=My Name S TMGFDA(2706.3,+19,,1)=Kevin S TMGFDA(2706.3,+19,,2)=Toppenberg S TMGIEN(19)=1 D UPDATE^DIE(FLAGS,TMGFDA,TMGIEN,TMGMSG) - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Thursday, December 22, 2005 3:53 PM Subject: [Hardhats-members] Re: IENS formating for database server calls Hmmm I think I figured it out. I found in the manual where it says I should use: FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenberg but when making the call, do this: set TMGIEN(1)=1234 -- the 1 will match to the +1 do UPDATE^DIE(FLAGS,FDA,TMGIEN,MSG) Lets see if I can get it to work. Kevin On 12/22/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I always stumble at the point of using IENS.No offense to Toad, but the system drives me crazy!I want to add new records to a given file via UPDATE^DIE.But I want to specify the record number.So I set up an FDA that looks like this: FDA( 2706.3,1,,.01)=My Name FDA(2706.3,1,,1)=Kevin FDA(2706.3,1,,2)=Toppenberg (to stuff data into record/IEN# 1) But when I do this, I get back an error message that Record doesn't exist). When I look at the documentation for IENS in the Fileman programmers manual, its not clear.At one point it states that an IENS is a comma-delimited set of records numbers (IEN's).Then it also describes using place holders, such as +1,?1, or ?+1 for looking for preexisting records.If the above FDA was FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenbergit work, but it would just add the record to the end of the list. How do I specify to put a new record into the number that I want? Thanks Kevin --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37alloc_id865op=ick ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37alloc_id865opclick___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein -- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein
Re: [Hardhats-members] Re: IENS formating for database server calls
Yes and my example explicitly would place an entry in record# 1 provided no current record already existed at record number 1. My example demonstrates the proper constructs of Fileman DBS API calls while demonstrating by example the meaning of those constructs. On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: That looks right.Thanks!And in your example (copying my example), the target record number was 1. Thanks so much and Merry Christmas!KevinOn 12/22/05, steven mcphelan [EMAIL PROTECTED] wrote: As you saw it was in the documentation.But what you did is not quite correct.I will change some of the numbers to make it more obvious what needs to be done. S TMGFDA(2706.3,+19,,.01)=My Name S TMGFDA(2706.3,+19,,1)=Kevin S TMGFDA(2706.3,+19,,2)=Toppenberg S TMGIEN(19)=1 D UPDATE^DIE(FLAGS,TMGFDA,TMGIEN,TMGMSG) - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Thursday, December 22, 2005 3:53 PM Subject: [Hardhats-members] Re: IENS formating for database server calls Hmmm I think I figured it out. I found in the manual where it says I should use: FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenberg but when making the call, do this: set TMGIEN(1)=1234 -- the 1 will match to the +1 do UPDATE^DIE(FLAGS,FDA,TMGIEN,MSG) Lets see if I can get it to work. Kevin On 12/22/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I always stumble at the point of using IENS.No offense to Toad, but the system drives me crazy! I want to add new records to a given file via UPDATE^DIE.But I want to specify the record number.So I set up an FDA that looks like this: FDA( 2706.3,1,,.01)=My Name FDA(2706.3,1,,1)=Kevin FDA(2706.3,1,,2)=Toppenberg (to stuff data into record/IEN# 1) But when I do this, I get back an error message that Record doesn't exist). When I look at the documentation for IENS in the Fileman programmers manual, its not clear.At one point it states that an IENS is a comma-delimited set of records numbers (IEN's).Then it also describes using place holders, such as +1,?1, or ?+1 for looking for preexisting records. If the above FDA was FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenberg it work, but it would just add the record to the end of the list. How do I specify to put a new record into the number that I want? Thanks Kevin --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37alloc_id865op=ick ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems?Stop!Download the new AJAX search engine that makes searching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members--- This SF.net email is sponsored by: Splunk Inc. Do you grep through log filesfor problems?Stop!Download the new AJAX search engine that makessearching your log files as easy as surfing theweb.DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37alloc_id865opclick___Hardhats-members mailing list Hardhats-members@lists.sourceforge.nethttps://lists.sourceforge.net/lists/listinfo/hardhats-members -- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein
Re: [Hardhats-members] Output transform question
In the terminal interactive mode when doing an Fileman Inquire, anyplace where you would enter a field name or number to display, you can enter field number in file:other field number in pointed to fil Obviously this syntax only works for field types of pointer or variable pointer. At one time, an extended syntax argument could not be used in the Fileman DBS calls. But I believe it can be now. This syntax can be used in any output Fileman program. It can also be used in the ternlnal interactive mode for editing an entry in a file. I do not believe this extended syntax can be used in UPDATE^DIE or FILE^DIE. I am not sure of that statement. The portion of the Fileman DBS manual describes when this extended syntax can be used. Select OPTION: 5 INQUIRE TO FILE ENTRIES OUTPUT FROM WHAT FILE: MAILBOX// Select MAILBOX NAME: SGM MCPHELAN,STEVEN G SGM ANOTHER ONE: STANDARD CAPTIONED OUTPUT? Yes// N (No)FIRST PRINT FIELD: .01 NAME THEN PRINT FIELD: .01:.111 By '.01', do you mean MAILBOX 'NAME'? Yes// (Yes) By '#.111', do you mean NEW PERSON 'STREET ADDRESS 1'? Yes// (Yes)THEN PRINT FIELD: .01:.112 By '.01', do you mean MAILBOX 'NAME'? Yes// (Yes) By '#.112', do you mean NEW PERSON 'STREET ADDRESS 2'? Yes// (Yes)THEN PRINT FIELD: .01:.113 By '.01', do you mean MAILBOX 'NAME'? Yes// (Yes) By '#.113', do you mean NEW PERSON 'STREET ADDRESS 3'? Yes// (Yes) THEN PRINT FIELD: Heading (S/C): MAILBOX LIST// STORE PRINT LOGIC IN TEMPLATE: DEVICE: TELNET Right Margin: 80// MAILBOX LIST DEC 23,2005 16:02 PAGE 1NAME .01:.111 .01:.112 .01:.113 -MCPHELAN,STEVEN G Select OPTION: 1 ENTER OR EDIT FILE ENTRIES INPUT TO WHAT FILE: NEW PERSON// 3.7 MAILBOX (144 entries)EDIT WHICH FIELD: ALL// .01: EDIT WHICH NEW PERSON FIELD: ALL// .111 STREET ADDRESS 1 THEN EDIT NEW PERSON FIELD: .112 STREET ADDRESS 2 THEN EDIT NEW PERSON FIELD: .113 STREET ADDRESS 3 THEN EDIT NEW PERSON FIELD: .114 CITY THEN EDIT NEW PERSON FIELD: .115 STATE THEN EDIT NEW PERSON FIELD: .116 ZIP CODE THEN EDIT NEW PERSON FIELD: THEN EDIT FIELD: On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I'm not sure where I would put this 2:10? Could you elaborate?ThanksKevin On 12/23/05, Steven McPhelan [EMAIL PROTECTED] wrote: 2:10 On 12/23/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: If I have file A with a field 2 that is a pointer to file B, then when I do an fileman inquiry to print out a given record, then for field 2 it will display the .01 field for file B as the value for the pointer. But what if I wanted field 10 in file B instead. I am guessing this is determined by an output transform of some sort. But would I put this in file A or file B? And is it set at a file level or a field level? ThanksKevin-- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein -- Steven McPhelanThe important thing is not to stop questioning. - Albert Einstein
Re: [Hardhats-members] Re: IENS formating for database server calls
As you saw it was in the documentation. But what you did is not quite correct. I will change some of the numbers to make it more obvious what needs to be done. S TMGFDA(2706.3,+19,,.01)=My Name S TMGFDA(2706.3,+19,,1)=Kevin S TMGFDA(2706.3,+19,,2)=Toppenberg S TMGIEN(19)=1 D UPDATE^DIE(FLAGS,TMGFDA,TMGIEN,TMGMSG) - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Thursday, December 22, 2005 3:53 PM Subject: [Hardhats-members] Re: IENS formating for database server calls Hmmm I think I figured it out. I found in the manual where it says I should use: FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenberg but when making the call, do this: set TMGIEN(1)=1234 -- the 1 will match to the +1 do UPDATE^DIE(FLAGS,FDA,TMGIEN,MSG) Lets see if I can get it to work. Kevin On 12/22/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I always stumble at the point of using IENS. No offense to Toad, but the system drives me crazy! I want to add new records to a given file via UPDATE^DIE. But I want to specify the record number. So I set up an FDA that looks like this: FDA(2706.3,1,,.01)=My Name FDA(2706.3,1,,1)=Kevin FDA(2706.3,1,,2)=Toppenberg (to stuff data into record/IEN# 1) But when I do this, I get back an error message that Record doesn't exist). When I look at the documentation for IENS in the Fileman programmers manual, its not clear. At one point it states that an IENS is a comma-delimited set of records numbers (IEN's). Then it also describes using place holders, such as +1, ?1, or ?+1 for looking for preexisting records. If the above FDA was FDA(2706.3,+1,,.01)=My Name FDA(2706.3,+1,,1)=Kevin FDA(2706.3,+1,,2)=Toppenberg it work, but it would just add the record to the end of the list. How do I specify to put a new record into the number that I want? Thanks Kevin --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_idv37alloc_id865op=ick ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Big brother is alive and well and living in NYC
Isn't this a violation of HIPAA? When did the labs get the patient's written approval to send their test results to a metro database unless all patient specific identifiers where removed prior to sending that data to the Health Dept. In that case it would not be a HIPAA violation. I guess I should read the waiver we all sign at the doctor's office where the specimen may be collected. Did we sign a HIPAA waiver that effective grants pass through? That is since I authorized the doctor to pass medical data back and forth between the lab, did I also authorize the lab to also do so without any further written approval from me? --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Formatting *.m and *.rsa files
When you say you are viewing a saved routine, how are you viewing the saved routine and how was the routine saved (ZSAVE vs. GT.M HFS file vs. a routine save utility to HFS)? I have not looked at the complete M ANSI standards in awhile. What is the official definition of line start character? I know that TAB is one. I do not remember if SPACE is a legitimate line start character. It also depends upon what is the source of the saved routine. If you are looking a routine save file, then if that utility uses something like W !,$T(@TAG) to write a line out to the HFS file, then doesn't the standard require that the line start character be converted to a SPACE? I know that Cache is particular on which line start character you use in the specific Cache tool. If you are creating a routine using a telnet window and are at the command prompt. Then you must use TAB to have Cache save that line to the routine buffer. Otherwise you get varied results using SPACE as the line start character. A ; will generate a syntax error. Yet W !,1 is executed with no problems. If you use Cache Studio tool, you can use either TAB or SPACE as the line start character. With v5.xx Cache preserves that line start character. If you used SPACE it will retrieve the routine with the SPACE. If you used the TAB it will retrieve the routine with TAB as the line start character. If you use %RO in Cache to save the routine to a HFS file, then restore that file using %RI, the routine will have a SPACE when loaded into Studio. I suspect that Cache used $T(tag) to get the lines of the routines and thus TAB line start would have been converted to SPACE. Because of this trait, I have gotten into the habit of typing a SPACE in Studio for the line start character. I used to use TAB and had changed Studio's default tab stop from 4 to 8. But now I always use SPACE. - Original Message - From: Gregory Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, December 04, 2005 7:24 PM Subject: [Hardhats-members] Formatting *.m and *.rsa files I have what I hope is a simple question. When entering MUMPS code, I'm in the habit of typing a tab before every non-label line, and that works fine. When I look at the saved routines, it appears that the tabs are replaced with a (single) space. Is this correct? Is there a more complicated rule? Is it the same on both major platforms? === Gregory Woodhouse [EMAIL PROTECTED] Without the requirement of mathematical aesthetics a great many discoveries would not have been made. -- Albert Einstein --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Functional notation for MUMPS?
I guess M is not a real language as you stated: Just as an example of how lambda abstractions work in a real language I believe both syntaxes will be difficult for the average M programmer to understand. But this statement is conditional. If that programmer has programmed in other languages, then they would pull from that knowledge. However, it all they have ever programmed in is M, then I believe they would have difficulties understanding. Also, the syntax you are using is heavy similar to mathematical notation. Many programmers may not have a strong math background especially at the higher level mathematics. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: Hardhats hardhats-members@lists.sourceforge.net Sent: Monday, November 28, 2005 4:34 PM Subject: [Hardhats-members] Functional notation for MUMPS? I sent out a message trying to illustrate a few basic concepts of functional programming by using a notation looking somewhat like MUMPS (or at least I tried!) I note that Maury did respond and correct a typo (That's what I get for writing it in the middle of the night, I suppose). What I'm asking here is for suggestions for notation that would be aesthetically pleasing (or something close) to MUMPS programmers. I just kind of made something up on the fly, and I'm not at all sure it is at all like what MUMPS programmers would like to see. Just as an example of how lambda abstractions work in a real language (Scheme, a dialect of LISP, a.k.a. Lots of Stupid Parentheses), here's an example: (define add1 (lambda (x) (+ 1 x))) (add1 4) 5 And here is a function of a function (also known as a higher order function): (define do-it-twice (lambda (f) (lambda (x) (f (f x) ((do-it-twice add1) 3) 5 The key problem is to come up with a MUMPS-like syntax for expressing higher order functions. === Gregory Woodhouse [EMAIL PROTECTED] Interaction is the mind-body problem of computing. --Philip Wadler --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Setting up HL LOGICAL LINKs problem - No response
Actually, now 10,000 - 20,000 is mostly assigned also now. I meant to ask Cameron what the VHA is planning to do about this. The VHA had reserved 10,000 - 20,000 for local VAMC port use. Yet now this port range has mostly been assigned. - Original Message - From: Gregory Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, December 06, 2005 11:20 AM Subject: Re: [Hardhats-members] Setting up HL LOGICAL LINKs problem - No response On Dec 6, 2005, at 7:59 AM, Gregory Woodhouse wrote: Single listeners work entirely in the VistA environment, but multi- listeners require some setup at the OS level. In this case, the daemon doesn't run in the MUMPS environment, but is a program that calls MUMPS to handle messages when they arrive. Single listeners (which are really less efficient) are examples of what are called iterative servers. There is a task (running under Taskman) that accepts a connection on the specified port, and that is the one and only connection on that port that can be handled. The HL7 package has historically treated TCP connections as always on serial links (in fact, MLLP is basically a serial protocol emulated over TCP). The normal thing to do is create a TCP connection and just leave it up. This really not a good way to handle TCP/IP protocols. The recommended approach is to listen or port 5000 (1.6) or 5001 (HLO) and accept all incoming connections there regardless of source using the OS, rather than the MUMPS environment, to handle this process. And yes, I know 5000 and 5001 are not IANA registered. I think the people that created the package were unfamiliar with the registration process or otherwise thought these ports were free for local use. (Actually, you have to go up to 10,000.) === Gregory Woodhouse [EMAIL PROTECTED] The most profound technologies are those that disappear. --Mark Weiser --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Time Zones in VistA
For good or bad there is much M code out there outside of XLFDT and Fileman date handlers that assume the internal Fileman date matches 7N.1..6N. This code does things like W $E(DATE,4,5)_/_$E(DATE,6,7)_/_(1700+$E(DATE,1,3)). Thus I find it difficult to understand how one could have a field that is capable of holding values of either type and still function under all circumstances for which it would be invoked. You could do a mixed breed approach. If you knew that a particular field in a particular file had always been accessed using either Kernel or Fileman tools, then perhaps that field could allow the storing of date data in both formats without problems. Of course there could be the on-the-fly approach to conversion. If a date field is accessed via a Fileman tool and the date is in the old format, then the Fileman date tool could spawn off a job to convert that field value to the new format or convert right then. Very kludgy - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Friday, December 02, 2005 2:42 PM Subject: Re: [Hardhats-members] Time Zones in VistA Perhaps timestamps need to be stored as composite entities: local time + offset from UTC. There's no reason why the offset needs to an integral number of hours (or quarter hours). The tricky thing, of course, is maintaining compatibility with existing data an applications. You could follow the lead of HL7 and introduce a new data type, but I think it would have to be polymorphic. If there's no way to convert the data (or if it is simply undesirable), then you need to have a field that is capable of holding values of either type. One reason conversion could be tricky is the problem of missing information. If a value is stored as UTC, then you know the moment in time, but you've lost information about the local time (which might matter). Viewing data is another interesting wrinkle. Will all users of the system necessarily even be in the same time zone? === Gregory Woodhouse [EMAIL PROTECTED] Interaction is the mind-body problem of computing. --Philip L. Wadler --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] How do variable pointers work?
Variable pointers are stored as ien_;_global root Why not use VPE to list the pointers?
Re: [Hardhats-members] Y=-1 After a ^DIC call
Did you set DLAYGO before calling ^DIC as the FM documentation states?
Re: [Hardhats-members] DEBUGGING IN CACHE
If you are using Cache, why not use the GUI debugger that comes with v5.x instead of the old way of Cache debugging?
Re: [Hardhats-members] A troublesome and concerning error.....
^ZU is doing EXACTLY what is was programmed to do. If the process encounters an error, an error handler is invoked. If you started ^ZU from the programmer's prompt, ZU knows that and returns you to the programmer's prompt. If you started ^ZU from a secured login it knows that and gracefully handles the error by returning you to your menu, not to a programmer's prompt. If the error is sufficiently fatal it may HALT you instead. --- SF.Net email is sponsored by: Tame your development challenges with Apache's Geronimo App Server. Download it for free - -and be entered to win a 42 plasma tv or your very own Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] NOLINE error while accessing CPRS
From the error, it would seem that the routine RGRSUTIL exists but it does not have the line label EXCEPT. If EXCEPT^RGRSUTIL exists, then look at the other items in the XU USER SIGNON EVENT. If you are missing the EXCEPT line label, then I do not know what to recommend. I do not know how you got to the point where you are. My RGRSUTIL routine does have a line label EXCEPT. I would recommend getting a fresh copy of VistA from the VA's FOIA FTP site. If this one routine is messed up, what else is messed up on your system?
Re: [Hardhats-members] NOLINE error while accessing CPRS
The XQY0 variable in the error trap will tell you which option context was being executed. A user's menu tree is copied to a temporary global, ^XTMP. Since you rebuilt the menus, you should not have bad data in ^XTMP. It appears that someone somewhere is executing an option. It may be a GUI application or it may a terminal mode application. The error indicates that a node is being Xecuted in ^XTMP. You should have enough information in the error trap to determine that exact node. - Original Message - From: Usha To: hardhats-members@lists.sourceforge.net Sent: Thursday, October 27, 2005 2:08 AM Subject: Re: [Hardhats-members] NOLINE error while accessing CPRS How can I find out about the options being executed while accessing CPRS? As far as the OR CPRS GUI CHART option is concerned, it does not have an ENTRY ACTION defined in the OPTION file. Thanks Usha - Original Message - From: Steven McPhelan To: hardhats-members@lists.sourceforge.net Sent: Wednesday, October 26, 2005 7:09 PM Subject: Re: [Hardhats-members] NOLINE error while accessing CPRS My second guess on the LOOP+6^XQOR1 problem is that you have a OPTION being executed somehow that has an ENTRY ACTION that has a line^routine reference that is invalid. Your mail problem most likely is that a message is trying to be sent to a remote domain that is open and should not be. On 10/26/05, Usha [EMAIL PROTECTED] wrote: After rebuilding all the primary and secondary menu options, the following is the output of D ^XTER EHRD ^XTERIn response to the DATE prompt you can enter: 'S' to specify text to be matched in error or routine name6 errors logged on 10/26/2005 6) READL3+1^XMC1A 10:44:44 EHR,EHR 2028 |TCP|2078 5) NOLINELOOP+6^XQOR1 10:44:05 EHR,EHR 2560 //./nul:2560 4) READL3+1^XMC1A 10:42:54 EHR,EHR 2028 |TCP|2078 3) READL3+1^XMC1A 10:41:03 EHR,EHR 2028 |TCP|2078 2) NOLINELOOP+6^XQOR1 10:40:35 EHR,EHR 2556 //./nul:2556 1) READL3+1^XMC1A 10:39:14 EHR,EHR 2028 |TCP|2078 Make sure YOUR emails don't get lost! Download Mailinfo here
Re: [Hardhats-members] NOLINE error while accessing CPRS
My second guess on the LOOP+6^XQOR1 problem is that you have a OPTION being executed somehow that has an ENTRY ACTION that has a line^routine reference that is invalid. Your mail problem most likely is that a message is trying to be sent to a remote domain that is open and should not be. On 10/26/05, Usha [EMAIL PROTECTED] wrote: After rebuilding all the primary and secondary menu options, the following is the output of D ^XTER EHRD ^XTERIn response to the DATE prompt you can enter: 'S' to specify text to be matched in error or routine name6 errors logged on 10/26/2005 6) READL3+1^XMC1A 10:44:44 EHR,EHR 2028 |TCP|2078 5) NOLINELOOP+6^XQOR1 10:44:05 EHR,EHR 2560 //./nul:2560 4) READL3+1^XMC1A 10:42:54 EHR,EHR 2028 |TCP|2078 3) READL3+1^XMC1A 10:41:03 EHR,EHR 2028 |TCP|2078 2) NOLINELOOP+6^XQOR1 10:40:35 EHR,EHR 2556 //./nul:2556 1) READL3+1^XMC1A 10:39:14 EHR,EHR 2028 |TCP|2078
Re: [Hardhats-members] M statements
Because ANSI M is strict left to right processing with no regard to precedence except for grouping using (...) - Original Message - From: Usha To: hardhats-members@lists.sourceforge.net Sent: Tuesday, October 25, 2005 7:24 AM Subject: [Hardhats-members] M statements Hi Just wondering what brings in the difference in output of the following statements EHR 3f0S X="0115LV" I $L(X)30!$L(X)6 W "DONE"DONEEHR 3f0S X="0115LV" I $L(X)6!$L(X)30 W "DONE"EHR 3f0 Why does the respond in the way it is? Usha Make sure YOUR emails don't get lost! Download Mailinfo here
Re: [Hardhats-members] NOLINE error while accessing CPRS
Try rebuilding all menus. I suspect that you have bad data in the temporary menu tree. You will find it under EVE - MENU MANAGEMENT - Original Message - From: Usha To: hardhats-members@lists.sourceforge.net Sent: Tuesday, October 25, 2005 7:38 AM Subject: [Hardhats-members] NOLINE error while accessing CPRS hi i want to connectto a voe implementation through cprs. afteri login using access code/ verify code the application closes without any message. ondoing thed ^xter, following is what i see ehrd ^xterin response to the date prompt you can enter: 's' to specify text to be matched in error or routine name4 errors logged on 10/24/2005 4) nolineloop+6^xqor1 15:53:12 ehr,ehr 1076 //./nul:1076 3) nolineloop+6^xqor1 15:49:28 ehr,ehr 2060 //./nul:2060 2) nolineloop+6^xqor1 15:48:38 ehr,ehr 1076 //./nul:1076 1) nolineloop+6^xqor1 15:47:24 ehr,ehr 744 //./nul:744no screened error enter '^' to quit listing, return to continue...:which error? 4process id: 1076 (1076) oct 24, 2005 15:53:12username: process name:uci/vol: [ehr,ehr] :$za: 0 $zb:current $io: //./nul:1076 current $zio: ^0^0cpu time: page faults:direct i/o: buffered i/o:$ze= nolineloop+6^xqor1i $d(@(^tmp("xqors",$j,xqors,"ref")_"20)"))'[0 s y=^(20) i $l(y) n x x y s:$d(x)'[0 ^tmp("xqors",$j,xqors,"x")=xlast global ref: ^%zosf("os") the loop+6^xqor1seems doesn't seem to be on the first level. can somebody help? thanks usha Make sure YOUR emails don't get lost! Download Mailinfo here
Re: [Hardhats-members] Scanning and pdf issues.
www.software995.com has a PDF print driver for, you guessed it, $9.95. Their whole suite of tools is only $29.95. If you do not want it installed in your C:\ root, they have instructions to install it in another folder. On 10/25/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: I'm in a Windows environment, but I am still not following you.In mycontrol panel-printers printers folder, there are only my regular printers defined.I don't see any PDF writer.Perhaps that is theway your software is setup, but it's not universal?Kevin
Re: [Hardhats-members] Cost to convert CPRS to Java
That is only because you chose not to use the functionality that COM offers within CPRS. There are many applications that do make extensive use of the COM object within CPRS. Without a COM like replacement, those applications would loose their appeal. Preserving the COM functionality is one of the design criteria that the VA rehosting of CPRS would try to preserve if they could. And not only preserve it but enhance it to address known short-comings of the existing COM function. - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Friday, October 14, 2005 8:43 AM Subject: Re: [Hardhats-members] Cost to convert CPRS to Java snip Again, as I have looked at CPRS, the only COM object used is TWebBrowser. And I was able to take that out for the Wine CPRS without any significant change to CPRS. --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Turning off CPRS splash screen
When running CPRS in Windows, I do not see where the splash screen stays open. Isn't this just a problem with Wine? - Original Message - From: K.S. Bhaskar [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, October 13, 2005 1:42 PM Subject: Re: [Hardhats-members] Turning off CPRS splash screen I wish I had a configured directory to see what I can do with CPRS under wine. With the FOIA as distributed, I can get to the login screen, which looks perfect, and which connects to the GT.M backend perfectly via inetd. Then I hit a wall... -- Bhaskar On Thu, 2005-10-13 at 12:33 -0500, Kevin Toppenberg wrote: Bhaskar, I didn't realize that the splash windows wasn't being hidden after it's use was over. Next time I am looking at the wine-cprs code, I'll check it out. The other issue is that it keeps crashing on me when It tries to save the auto-backup file to the c:\.. directory path (that doesn't exist on the linux server). It should be easy to change the path to c:\temp\backupfile. And you said that wine will convert that to /temp/backup. We will likely work on this at the upcoming developer's conference. Kevin --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Wish list?
It would be nice if the Patch module on Forum was fixed so that new versions could also be released via the Patch Module. It does not seem like it would be difficult to do. It would also be nice if the patch module would make all patches installable, even informational patches. Then there would be a record of all patches having been installed at the sites. In this case all the patch would do is update the patch history multiple in the Package file and place the patch in the INSTALL file. - Original Message - From: Cameron Schlehuber [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, October 11, 2005 6:43 PM Subject: RE: [Hardhats-members] Wish list? 2. The accurate recognition that patches in VistA are easier to distribute than new versions due to the semi-automated process of configuration management and release management. --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Cost to convert CPRS to Java
When you said that you removed the COM objects from CPRS, I assumed you had also removed the components that allow a COM object to be invoked from within a template as outlined in the manuals. On 10/15/05, Kevin Toppenberg [EMAIL PROTECTED] wrote: On 10/15/05, steven mcphelan [EMAIL PROTECTED] wrote: That is only because you chose not to use the functionality that COM offers within CPRS.I don't understand.What functionality am I not using.And I amtalking about COM object that are included into CPRS at compile time. I guess it is possible that TMemos are COM objects, but I don't think so.There are many applications that do make extensive use of the COM object within CPRS.Are you talking about applications separate from CPRS that somehow use COM functionality built into CPRS?Could you give an example?Without a COM like replacement, those applications would loose their appeal.Preserving the COM functionality is one of the design criteria that the VA rehosting of CPRS would try to preserve if they could.And not only preserve it but enhance it to address known short-comings of the existing COM function.I'm not following you for some reason.Sorry.Kevin
Re: [Hardhats-members] Newbie installation
Title: Newbie installation Did you search the documentation that comes with Cache for Disk? Right click the cube and select documentation. DISK During an attempt to access a block in a file, the request to the operating system failed. This failure may have occurred because the disk is offline or because the actual size of the file is less than the expected size. Check that the disk is online. If it is, run Integrity on the global where the error occurred. Giving simple directionsto run Integrity and what to do with the findings is not possible. If you are just setting up for the first time, then I would suggest you delete the cache.dat and a get a new copy from wherever you got it in the first place. If this is a system that you absolutely must fix, then I would suggest you contact Intersystems and see what they would charge to fix your Cache.dat. We had a database corruption once. Even though I am experienced with fixing such things, it was more economical and much, much safer to have Intersystems do it. We sent then the Cache.dat. They fixed it and returned it to us. Of course, your system will be down until you get it back. This is the very reason that both Intersystems and GT.M highly recommend that one set up journaling and backups. With those properly set up you can virtually eliminate this type of problem. The problem could still occur, but then you would have the possibility of doing a restore and dejournal to get your system back. Since ours was a development account, we had the occurrence because we were lazy like many people and did not have journaling set up. Even this protection will not always save you. If you get such a database problem and do not know if for some time then your backups will also have this database problem thus making it nearly impossible to perform recovery as mentioned. Note to all - do not use an OS or third party backup tool when Cache is still running. If you choose to do so, then you must shut cache down prior to performing the OS level backup of the Cache.dat. Then it is safe to perform that backup without corrupting the Cache.dat. - Original Message - From: Michael Spraggins To: hardhats-members@lists.sourceforge.net Sent: Wednesday, October 05, 2005 10:39 AM Subject: [Hardhats-members] Newbie installation Using Cache install procedure via http://openforum.worldvista.org/~forum/index.php?title=Installation_How_To_Vista/Cache_for_Windows#Install_Cache. I'm step# 31 and I recieve the following error when checking compile status NEWMAC Error:DiskHardNewMac+8^%SYSCONV Recompile Error:DiskhardSrcLoop^%SYSCONV Any ideas/help would be gfreatly appreciated. Thanks Mike
Re: [Hardhats-members] Station Numbers for institutions in VOE
How do you consider a phone number as a unique identifier? It is unique today. But somebody else could have that number tomorrow. - Original Message - From: Chris Richardson [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, October 06, 2005 9:11 PM Subject: Re: [Hardhats-members] Station Numbers for institutions in VOE Cameron, Couldn't we just create a new identifier segment that uses a number which is unique to every medical facility in the world, their international telephone number. If the string is 3 digits, then it is VA. If it is 7 or more digits, then it is a non-VA faility. Isn't this a characteristic of HL7 segment elements? If this field is rigidly 3 characters, then couldn't we just define a whole new HL7 record with that field of that segment defined as a string rather than 3 numerics. Won't that work?? --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] How to select another record in ScreenMan form?
- Original Message - From: steven mcphelan [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, September 28, 2005 8:37 AM Subject: Re: [Hardhats-members] How to select another record in ScreenMan form? This cannot be done safely. Remember, Screenman has established many, many local. private variables that have specific meaning. There is no tool I am familiar with that tells Screenman to do a total environment refresh while still inside the original screenman form for a particular record number. Remember, to enter a form you must first select a record and then enter the form. I am sure that Fileman has initialized some local private variables here prior to launching the M code that actually does the screenman form display. - Original Message - From: Thurman Pedigo [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, September 28, 2005 1:09 AM Subject: RE: [Hardhats-members] How to select another record in ScreenMan form? I am not an advanced user and not sure if this will work in your case. However, I use triggers pretty extensively to populate, or change fields, in ScreenMan. You can make the field trigger conditional based on factors such as whether the field already contains data. You could trigger the field anytime the HRN changes. You just need to be sure you are addressing the appropriate record. thurman -Original Message- From: [EMAIL PROTECTED] [mailto:hardhats- [EMAIL PROTECTED] On Behalf Of Usha Sent: Tuesday, September 27, 2005 9:08 PM To: hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] How to select another record in ScreenMan form? We are trying to make a ScreenMan form for adding/editing a patient. The unique identifier for a patient is the Hospital Record Number (HRN) field from the IHS PATIENT file. When the HRN changes, the record of the patient being accessed must change accordingly. I have been able to create a routine which would return the IEN number of the patient record on passing the HRN. When the form is run for the first time, the patient data can be accessed through the HRN. But later if the HRN changes, the patient record being accessed does not change. Any idea how this can be done? Regards Usha - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, September 28, 2005 1:38 AM Subject: Re: [Hardhats-members] How to select another record in ScreenMan form? When I went through the video tutorials on Screenman, I got the impression that what you are wanting can't be done. But there might be much more power under the cover that I am not aware of. Can you describe the application you are wanting? Kevin On 9/27/05, Usha [EMAIL PROTECTED] wrote: Hi In a ScreenMan form, how can I change the record being accessed everytime the value of a field changes? Regards Usha --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Importing legacy patient data
Assuming the practice mgmt system allows for this, have you tried exporting the data in a TAB delimited format? This presumes that the system which has the source data does not allow the entering of a TAB character as part of any data element. - Original Message - From: Mike Schrom [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, September 28, 2005 12:33 PM Subject: Re: [Hardhats-members] Importing legacy patient data At a minimum, I want name, address, dob, phones, ssn. More would be better, like Insurance, Primary care doc. I can get it out in ASCII and put it in any format, but there is a lot of work involved. I use a version of Medical Manager from the mid '90s. The files are ASCII, comma delimited, but over the years my secretaries have added patients with inconsistent data. For example Medical Manager somehow doesn't care if you enter an address as 1 main St., Apt. 2 or as 1 main St. Apt. 2, but if you read it as a CSV it imports the first as two fields, Same with Smith, Jr. There are lots of records with this problem, so I have to manually edit them. This is OK but time consuming. I can put it into an Excel or Open Office file and add fields for patient type or veteran status if FM requires it and then export it again as a CSV. The SSN is stored as 9 digits, but I can add - if necessary (even if I have to parse it in BASIC, which is all I remember how to program in!) My issue is how you get FM to import this data and exactly what fields are required. Thurman Pedigo wrote: I went through this a few months ago and have a routine for it. It had a problem with loading SSN and I need to revisit and be sure I have that set correctly. Will be glad to share it. What fields do you wish to populate? How will you generate the data? Mine came from FileMan, therefore I had control over the ASCII format. thurman -Original Message- From: [EMAIL PROTECTED] [mailto:hardhats- [EMAIL PROTECTED] On Behalf Of Kevin Toppenberg Sent: Wednesday, September 28, 2005 7:46 AM To: hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] Importing legacy patient data Yes, someone posted about doing this recently (I can't remember who. Try searching the archives for 'import' and 'registration'). I assume you are talking about importing demographic information only. I think that you save the file in a comma-delimited file. Then use the fileman import facility. One key point is that certain fields are required in the patient file (#200)--such as patient type, veteran status etc. You have to make sure you have data for this field in each record you upload, or the record will be rejected. I did this another (much harder) way by writing custom code. It was a good learning experiance. I uploaded about 70,000 demographic entries this way. Kevin On 9/28/05, Mike Schrom [EMAIL PROTECTED] wrote: Anyone having any success with batch importing legacy patient data? I want to start with minimal patient demographics from a text, csv or xls file which I can, with a lot of manual editing, get out of my present practice management system. I've been following the postings on Vista imaging for scanning in paper charts, but, I need to get the patients in first and the imaging instructions are a bit too technical for me. --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net
Re: [Hardhats-members] Importing legacy patient data
I had thought about the quote approach. But does the originating system allow quotes in data elements line name such as John The Man Doe. Now you have the same problem with assuming as a delimiter. The fixed length record does seem to be the best approach. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, September 28, 2005 12:59 PM Subject: Re: [Hardhats-members] Importing legacy patient data There are a number of options, of which tab delimited fields is only one. You can use quoted fields This is field one,This is field two alternative delimiters (like ^), or even fixed width fields. Fileman supports them all. --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Data dictionary question
This is a false statement: Turns out that the screenman way doesn't allow one to specify the node to store data on. I use screenman exclusively for creating new fields in files. I am always prompted to for node and piece to store the data. - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Tuesday, September 27, 2005 10:32 PM Subject: [Hardhats-members] Data dictionary question Trick/Quick question: Where all is the node;piece stored in the data dictionary? I ask because I think it is stored in two places, and I can only find one of them. I had added a field (#22700--my number space) to file 2005.2 using the screenman form method (mistake!). Turns out that the screenman way doesn't allow one to specify the node to store data on. I then had the option of deleting the field and entering everything back in again. I had written lengthy descriptions so wanted to avoid that if possible. I had not entered any actual data into the field, and had created no cross-references, so I thought that I could change its DD definition OK (you know about assumptions...). I found that $p(^DD(2005.2,22700,0),^,4) = 7;1 I didn't want my data stored in note 7, so changed this to 22700;1 Now, when I use VPE data dictionary browser, it looks fine (shows 22700;1). And when I go to enter data in with Fileman, it is fine--the file goes in, and when I come back to edit it again it is still there.. But when I do I do an INQUIRE of the data I added, it doesn't show. And when I do the LIST FILE ATTRIBUTES, and in GLOBAL MAP listing format, it still shows the old 7;1 So apparently the node;piece is stored in more than one location. Any idea where the other location is? Thanks Kevin --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] VOIP
At home I use VOIP from my cable provider. I converted to cable TV, Internet, and VOIP. I previously had Cable Internet, regular phone service, and satellite TV. By converting to my cable provider, I ended up saving about $50-60/month on my entire monthly utility bill. Be forewarned. If you convert to VOIP and you loose power like in a hurricane situation. You have lost your phone. In many of the hurricanes in Florida, even through power was out, many people still have regular telephone service. So I also keep a basic phone line with no long distnace as a second line. No one can tell that I am talking on VOIP. --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Shared lab data/We DO Care
You have another option. You can get the lab results form the lab provided they will give it to you. Then you only need to do the ROI once with the lab itself. You bring a copy of the labs to each doctor you go to. Once we have SkyNet in place, you should be able to electronically say who can and cannot have access to parts of your med record. SkyNet is not here yet. - Original Message - From: James Gray [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Friday, September 02, 2005 1:13 PM Subject: Re: [Hardhats-members] Shared lab data/We DO Care I think it is absurd that I cannot get my lab data from the lab. There are categories of medical info like Rx's for major tranquilizers and postive HIV test that should be subject to privacy. However, making much of the other routine data subject to the extreme privacy rules compromises health care. We need a happy medium some how. Jim --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] We DO Care
The ASP backup scenario is more complicated than that. Katrina demonstrated this as the disaster covers an area of over 90,000 sq miles. An ASP might have a backup facility in another city or state rather than providing a local backup to individual clients. Local backups is also an option. Imagine the scenario where the ASP was in New Orleans and the backup in Biloxi. In this case whether you had backups done locally or the first case I mentioned, both would have failed. This whole issue of backup and recovery for the clinic situation is a difficult nut to crack in a cost effective manner that really works. - Original Message - From: Nancy Anthracite [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, September 01, 2005 5:55 PM Subject: Re: [Hardhats-members] We DO Care I hope I did not make people think I am supporting one or the other. I am in favor of both. I feel that if it is a small clinic, it should have remote backup perhaps with the primary server local. If it is an ASP sort of situation, then I think the ASP might provide the primary server but there should be a local backup available. That describes my comfort level, and, as a logical extension, it is my opinion that it should be the comfort level for the VA as well ... not that what I think matters in the least! --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Starting TASKMAN no interactive way
Taskman and VistA tasked options can be enhanced to support the functionality that you mention Bhaskar. However, the job is monumental. All existing processes that queued to Taskman would have to be reexamined and mot like rewritten. Taskman would have to be enhanced to automatically restart processes. This step may not be necessary. The SOP for program design could be that the applications would honor the shutdown request and if need be the application would set up a new scheduled task so that it can start up where it left off at. This way Taskman would only have to be modified to handle shut down gracefully which would include to set up the notifications to processes to stop running. From the system level, this taskman function needs to honor the urgency of the system manager. The situation may be so serious that the manager does not want Taskman to wait for any extended time for the processes to stop. But that could easily be accommodated in that new taskman shutdown functionality. Actually that is the way Taskman currently works. - Original Message - From: Jim Self [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, August 31, 2005 8:53 PM Subject: Re: [Hardhats-members] Starting TASKMAN no interactive way Bhaskar wrote: Steve -- I don't have a good answer for what to do if a process is running a report that will take several hours to complete when operations wants to shut the system down. The good news is that you can expect to have very few such long running processes. GT.M/Linux on a server oriented PC can cut the time required for such processes by orders of magnitude. I don't think we have any regular tasks left in VMACS that take more than a few minutes to run. I guess that depends on the application logic for the process. [For example, in our banking application, with the use of TP, all batch processes are designed to be automatically restartable from the state of the database.] However, I do take a slightly different view of the others. It seems to me that the typical / traditional deployment of Taskman occurs based on a model of computing that (a) CPUs are a scarce resource and (b) spawning processes is expensive. Thus, there is a pool of processes, and the demand for CPU resources is throttled by queuing tasks to processes in this pool. This is an important point. It seems to me that those of us who have been working for a long time with proprietary MUMPS implementations have developed blind spots over the years regarding this sort of possibility because it could so easily put you in conflict with restrictions on the number of concurrent processes allowed by your MUMPS license. We (VMTH UCD) are slowly changing our thinking in this direction, but I find that I need periodic reminders to let my imagination go that way. Perhaps this model may still be valid when deploying VistA at a large hospital - I just can't say for sure one way or another. However, in an era when one can and acquire a PC server that at least computationally* is as good as, and likely much better than, the biggest VAX that existed 10 years ago for a couple thousand dollars, and where even a low end Linux system can spawn hundreds - and maybe even thousands - of processes per second per CPU, this model of resource scarcity doesn't apply in the context of VistA deployed at a practice or a small hospital. One thing we have found is that some PC's make much better servers than others. We have been running the VMTH on a dual 1.3GHz Pentium 3 rackmount. We have been using a desktop PC with a faster CPU (I think 2-3Ghz Pentium 4) as a shared development server with a full-size copy of the live data (slightly out of date and altered). On many intensive tasks, the P3 is easily 10-20 times faster. It might be useful to run some simple VistA and MUMPS related performance tests and post numbers on the wiki to give a range of performance expectations for people who are wondering what sort of hardware they need or who seem to be getting exceptionally slow response. These would ideally be based on data in one of the OpenVistA distributions so they are easily repeated. --- Jim Self Systems Architect, Lead Developer VMTH Computer Services, UC Davis (http://www.vmth.ucdavis.edu/us/jaself) --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF.Net email is Sponsored by
Re: [Hardhats-members] Starting TASKMAN no interactive way
There is no reason to start up these VistA processes using some external script except for Taskman. Once Taskman starts up he can start up whatever background process you desire. Most, if not all, of these background processes already have VistA options to be run as scheduled tasks at startup from Taskman. Of course many of these options assume you have properly configured the corresponding files prior to trying to start up those background processes. The Broker, HL7, Mailman, and others can all be started by Taskman. Stopping processes non-interactively is more of a problem as most of them do not have a silent way to stop the background processes. Taskman can be told to stop all processes when they finish. But this has always been problematic. Some processes never get terminated, perhaps because they were not started by Taskman directly. Then what does Taskman do (or a system shutdown do) if a process is running, say a report, still has several hours to go before running to completion? Yes VistA tasked jobs can be programmed to look for a stop running request so that they shutdown gracefully. The truth is that most Taskman jobs are not programmed to even look for these stop requests. --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
[Hardhats-members] JOB OPPORTUNITIES AT DSS
No one said that we could not do this. I am the chief architect at Document Storage Systems, Inc (DSS) for the commercialization of VistA. DSS is actively recruiting 1 or 2 full time employees for each of the major VistA packages, like lab, radiology, MAS, etc. We are seeking experienced ADPACs who can set up these packages from scratch. Knowledge of M programming is NOT a requirement for these positions. Some travel will be required. For anyone interested, please send me a separate email to [EMAIL PROTECTED] Steven McPhelan"Good judgment comes from experience, and experience comes from bad judgment." - Barry Lepatner BEGIN:VCARD VERSION:2.1 N:McPhelan;Steven FN:McPhelan, Steven NICKNAME:sgm ORG:Document Storage Systems, Inc TEL;WORK;VOICE:813-994-1921 TEL;HOME;VOICE:813-994-1920 TEL;CELL;VOICE:561-308-4339 ADR;WORK;ENCODING=QUOTED-PRINTABLE:;;12575 US HWY ONE=0D=0ASUITE 200;JUNO BEACH;FL;33408 LABEL;WORK;ENCODING=QUOTED-PRINTABLE:12575 US HWY ONE=0D=0ASUITE 200=0D=0AJUNO BEACH, FL 33408 ADR;HOME:;;28727 HANGING MOSS LOOP;WESLEY CHAPEL;FL;33543-6457;USA LABEL;HOME;ENCODING=QUOTED-PRINTABLE:28727 HANGING MOSS LOOP=0D=0AWESLEY CHAPEL, FL 33543-6457=0D=0AUSA EMAIL;PREF;INTERNET:[EMAIL PROTECTED] EMAIL;INTERNET:[EMAIL PROTECTED] REV:20050826T182012Z END:VCARD
Re: GTM on OSX WAS: [Hardhats-members] more M read questions
The VA has been running Cache and VistA servers on a 64-bit platform for years. They have been running on the Alpha chip on VMS with no problems with Cache. - Original Message - From: jae kim [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, August 23, 2005 1:42 AM Subject: Re: GTM on OSX WAS: [Hardhats-members] more M read questions This will be the last email, promise. I guess my terribly unnecessary concern is that when VA hospitals with current 32 bit whatever machine ( are they using Windows on Intel now? or IBM w/ PPC?) want to upgrade their hardware to new 64 bit Intel/AMD chip, (very possible scenario in the near future) the old database file should be read without manipulation by the new platform/chip/M/VistA. Good night. J. --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF.Net email is Sponsored by the Better Software Conference EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile Plan-Driven Development * Managing Projects Teams * Testing QA Security * Process Improvement Measurement * http://www.sqe.com/bsce5sf ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
[Hardhats-members] JOB OPPORTUNITY
Document Storage Systems, Inc is looking for experienced M programmers with extensive knowledge of VistA. Anyone interested please send me a separate email with a resume. DSS prefers to hire employees versus subcontracting. Relocation to Florida is preferred. The main office is located in Juno Beach FL which is just north of West Palm Beach. Some travel will be expected with this position. Steven McPhelan"A can't change the laws of physics. A've got to have 30 minutes!" - James Doohan as Scotty BEGIN:VCARD VERSION:2.1 N:McPhelan;Steven FN:McPhelan, Steven NICKNAME:sgm ORG:Document Storage Systems, Inc TEL;WORK;VOICE:813-994-1921 TEL;HOME;VOICE:813-994-1920 TEL;CELL;VOICE:561-308-4339 ADR;WORK;ENCODING=QUOTED-PRINTABLE:;;12575 US HWY ONE=0D=0ASUITE 200;JUNO BEACH;FL;33408 LABEL;WORK;ENCODING=QUOTED-PRINTABLE:12575 US HWY ONE=0D=0ASUITE 200=0D=0AJUNO BEACH, FL 33408 ADR;HOME:;;28727 HANGING MOSS LOOP;WESLEY CHAPEL;FL;33543-6457;USA LABEL;HOME;ENCODING=QUOTED-PRINTABLE:28727 HANGING MOSS LOOP=0D=0AWESLEY CHAPEL, FL 33543-6457=0D=0AUSA EMAIL;PREF;INTERNET:[EMAIL PROTECTED] EMAIL;INTERNET:[EMAIL PROTECTED] REV:20050722T204402Z END:VCARD
Re: [Hardhats-members] Data dictionary question...
To my knowledge there is no way to do what Kevin is asking by doing it using standard FileMan APIs only. There are standard Fileman APIs to get you: 1. All the attributes for a field if you know the field number and file number. 2. All the attributes for a file number But I could not get any of the Fileman standard APIs to give me a list of field numbers and field names when all you have is a file number. I would like to see that code posted here if it can be accomplished. I am not counting those screen scrape approach, i.e.., do a List File Attributes to a file and then read that file back in a scrape out the field numbers and names. - Original Message - From: James Gray [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, July 11, 2005 1:26 PM Subject: Re: [Hardhats-members] Data dictionary question... I think the issue is that you want to use a Fileman API on the file of files. File 1 is the file of files. I do not think that Fileman will care if the individual files have data in them. If the fields have been defined for the individual files that is what the API's can retrieve for you. When you are looking at file 1 then the individual file numbers are the IEN's of the individual records of the file of files. You can also use Fileman API's on the data dictionary which has been called File 0. However, you cannot 0 (zero) as the file number. You have to use the actual global root. I hope this makes sense. Jim Gray - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, July 11, 2005 9:13 AM Subject: Re: [Hardhats-members] Data dictionary question... A list of fields from a file IS what I want. And this GETS^DIQ is a bit off target in that it gets actual values (meaning that there must be at least one record in the file file for it to work). But this would give a list of the fields in the resulting array. Actually, now that I think about it, I doubt that it will return the name of a field if there is no data in that field. So perhaps this function wouldn't work after. Perhaps there remains a need for another function in the API to list the names of fields in file. Thanks Kevin --- This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual core and dual graphics technology at this free one hour event hosted by HP, AMD, and NVIDIA. To register visit http://www.hp.com/go/dualwebinar ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Does not ask DEVICE while exporting
I do not see the difference between your two open statements. I do not see the open statement that shows the successful opening of the file when it was in the OpenVistA folder. Anyway, your original problem is improper path (or directory) syntax. The path must include all trailing punctuation characters required by the OS that separates the pathname from the filename. I believe this should work if all permissions allow for it: D OPEN^%ZISH(PATFILE,/home/vista/VistA/,patmast.txt,R) not D OPEN^%ZISH(PATFILE,/home/vista/VistA,patmast.txt,R) - Original Message - From: Usha [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, June 16, 2005 1:44 AM Subject: Re: [Hardhats-members] Does not ask DEVICE while exporting Hi The following is a screenshot of what I did to find out the problem. GTMD OPEN^%ZISH(PATFILE,/home/vista/VistA,patmast.txt,W) GTMW POP 0 GTMW IO /home/vista/OpenVistA/patmast.txt GTMD CLOSE^%ZISH(PATFILE) GTMD OPEN^%ZISH(PATFILE,/home/vista/VistA,patmast.txt,R) GTMW POP 0 GTMW IO /home/vista/OpenVistA/patmast.txt GTMD CLOSE^%ZISH(PATFILE) GTM I copied the data file to /home/vista/OpenVistA directory and all the records have been successfully imported into the PATIENT file. But it leaves one question unanswered : Why was VistA looking for the file in /home/vista/OpenVistA directory when I had specified the PATH of the file as /home/vista/VistA? And thanks Greg for your help. Usha - Original Message - From: Usha [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, June 16, 2005 10:34 AM Subject: Re: [Hardhats-members] Does not ask DEVICE while exporting While trying to open the file using OPEN^%ZISH, I realised that the file was accessible to owner only (vista). But even after changing the rights of the file, following is the output. GTMD OPEN^%ZISH(PATFILE,/home/vista/VistA,patmast.txt,R) GTMW POP 1 Usha --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] == VistaWeb Missing Apps ==
I purchased, installed, and managed an entire hospital system with over 1500 MS workstations consisting of laptops and desktops. I hired experienced, knowledgeable network staff. In general, I did not have any of the problems you mentioned here. Of course we had occasional problems, but given the size of the total deployment, it was nothing. - Original Message - From: Ruben Safir [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, June 13, 2005 12:32 PM Subject: Re: [Hardhats-members] == VistaWeb Missing Apps == On Mon, 2005-06-13 at 12:20, Kevin Toppenberg wrote: Why do you need support? I have Windows XP on my notebook. I never expect anything from Windows (except for the occasional updates that consistently remove functionality from my OS). Kevin Really. You've never run a PC lab with 25 laptops then. Windows are very high maintenance and the device drivers that manufactures use are awful. They freeze, the file systems become corrupted, they are virus plagued, they malfunction with new PCI cards, they have lousy interoperability, they are infested with spyware and so on. They fall on and off the network. I have to even be reminded of all the gut wrenching frustration just to get the routing tables to work correctly. Ruben --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] XML data export
If all a someone wanted was a noting application, isn't VistA way overkill for such a purpose? It would seem a simpler, less complex application would be appropriate. - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, June 13, 2005 4:32 PM Subject: RE: [Hardhats-members] XML data export I want the practice to be able to say, we don't want to use VistA anymore, dump all the progress notes to a DVD so we can import them into another system. Kevin --- SF.Net email is sponsored by: Discover Easy Linux Migration Strategies from IBM. Find simple to follow Roadmaps, straightforward articles, informative Webcasts and more! Get everything you need to get up to speed, fast. http://ads.osdn.com/?ad_id=7477alloc_id=16492op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Vista-Office - ..worldvista..openvista...opensource... off-topic eh?
There is one issue I have with the WorldVistA VistA codebase. I mentioned this at Boston. But it needs to be brought up in this larger context. 1. Who has access to this code base to make any supposed modifications to it? 2. What relationship will all these scripts have to the official codebase? a. Will these scripts be certified by some official entity with WorldVistA as being fully compatible with the VA VistA code base and will do no harm to VA VistA? b. If not will the variances be documented? c. Is there a list of these scripts and their certification status by some entity in authority for WorldVistA? 3. To date, who has been allowed to make modifications to the WorldVistA VistA codebase? a. Have those modifications been well documented so that others can review them? b. Who decides what modifications will and will not be added to the WorldVistA codebase? c. Are there established, documented processes certifying these changes have done no harm to the VA VistA code base? d. Where is the documented plan to maintain, support, and update any modifications made to the VA VistA codebase? e. Is there a well defined software QA process established to certify any of these changes to the VA codebase. If so who is involved with this and are the findings available for review? I could go on... Rick did promise that some of these may be addressed at the next WorldVistA meeting. I think the audience needs right now a list of these scripts and which of these are officially blessed by WorldVistA (i.e., the Board and the President) and why. Or there should be a disclaimer presented with some such wording as User beware and use at your own risk. Frankly, I believe people get this stuff from WorldVistA or hardhats and believe that it has the total and unreserved approval of the WorldVistA Board and the President of WorldVistA. I am not sure that approval really exists. I personally view these scripts as any other freeware. If you like it, use it, but YOU assume ALL responsibility for the outcome of using it. As an example of these concerns: This move to internationalize VistA is no small trivial task, It will require extensive modifications of FOIA VistA. Thus each and every patch that is released by the VA will have to be scrubbed to make it internationalized ready for implementation into the WorldVistA codebase. Again this is no small trivial process. The code and the KIDS build has to be modified. Then it has to be extensively QA'd again. It needs to see if there are any new interactions with the FOIA codebase that did not exist previously. This is no simple, trivial, short-time frame task. Where is the published processes documenting who, what, where, when, and how this will be done (or any of the other modifications made)? Or will the modified WorldVistA codebase be like HUI? I am under the impression (right or wrong) that the HUI VistA codebase is way out of synch with the current VA codebase, like maybe several years out of synch. I am not the only one with this impression. I raise this up on this licensing thread because the answers to these questions will affect the license. If it is open source, then I as an end-user have the right to know exactly who, what, when, where, and how items are incorporated into the SUPPORTED codebase. WorldVistA does not have a financial engine like Apache to generate resources to maintain this support. - Original Message - From: Mark Street [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, April 24, 2005 2:11 PM Subject: Re: [Hardhats-members] Vista-Office - ..worldvista..openvista...opensource... off-topic eh? Well, riddle me this.. and I just didn't fall off the turnip truck. Several board members of WorldVista also have a commercial interest in the success of VistA, along with a few outside commercial vendors who have the dough to throw at this immense project. How many code bases are there now? FOIA, HUI, WorldVistA, OpenVistA? From where I sit Medsphere with it's hired talent and marketing power has a leg up. 1. WorldVista is the organization - OpenVista is the codebase. (T/F) 2. What specific 'open source' license(s) are being considered for 'OpenVista'? 3. What boundaries in the fine print of the GPL are of concern to the WorldVista organization? The boundaries that separate what's yours from what's ours would be similar to genetically modified corn or cotton seeds being carried by natural or other means from your field into my field. I imagine the concept will have to be similar to proprietary binary modules plugged into the Linux kernel, or binary only distribution of commercial components. Anyway you look at it, your's vs. our's does not foster broad community support, involvement and innovation. Look to the Apache project, PHP and the Linux kernel of models that have succeeded in this regard. Like I have seen on a signature on Linux
Re: [Hardhats-members] Error message when enterering D^ZU
You may have to edit the %ZOSV routine. What you edit depends upon which version of Cache you are running. In any case, you may trick the Kernel into believing you have enough licenses. But you may eventually encounter another message which is generated by Cache with some comment about job process limit exceeded. Your only recourse then is to limit the number of jobs running if you wish to sign in. - Original Message - From: Nancy Anthracite [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Saturday, April 23, 2005 5:44 PM Subject: Re: [Hardhats-members] Error message when enterering D^ZU There are only a few changes, so no need to start all over. Look at 38 and 39, and fix the mode of Taskman and see what happens. If that doesn't work, comment out the lines in ZU and see if that does it. On Saturday 23 April 2005 04:33 pm, Butch Jones wrote: No, I am using a version that might be a little older. I guess it would be a good thing to download and start from scratch. Sorry for the silly question. Butch --- Nancy Anthracite [EMAIL PROTECTED] wrote: Are you using the current set of instructions that is online at Hardhats? There have been some changes in steps 38 and 39 and one other place that I think were made to deal with this. I am thinking that this may be the problem with the number of users on Cache again, or maybe that you need to change the Mode of Taskman to general processor in the Taskman site parameters file. Or that the primary menu needs to be set as EVE. I am loosing it because this has come up multiple times before and I can't remember what the fix is. Thurman, help! Didn't you have to fix this? On Saturday 23 April 2005 12:08 pm, Butch Jones wrote: I have just gotten back into community and am again trying to set up a new installation of CACHE. I have been pretty successful in following the instructions on setting up a system. When I sing onto Cache terminal and change the namespace to VISTA, I am getting an error message that displays ever-so-briefly when I type D^ZU from the prompt: VISTA D^ZU {I then get some error code that displays really fast and logs the terminal off.} any one know what I have missed in the setup process? Thanks, Butch Jones --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members -- Nancy Anthracite --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members -- Nancy Anthracite --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Configurability of fields in FileMan
You are looking at old code. There was a feature of Fileman years ago which has subsequently been addressed. You could not create a multiple field entry if the zeroth node of the multiple did not exist. So we were forced to hard set the zeroth node of the multiple prior to calling the Fileman API to add the first multiple entry. Today, there is no need to do that since Fileman has fixed its feature. In those old days, it was proven that hard setting the data in the file was more efficient that using Fileman APIs. Back then we need to preserve every cpu cycle we could. Today, these systems are so fast it is almost impossible to discern a time difference between hard setting the data and using Fileman APIs for recording individual transactions. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 19, 2005 8:06 PM Subject: Re: [Hardhats-members] Configurability of fields in FileMan Let's just say that I've very surprised, if not shocked, at the kinds of things I've seen in released code. Some code is just old, and things like creation of subentries through direct sets (including the 0-node) may be an artifact of age, but...well, I'll leave it at that. Suffice it to say that some programmers think If I can do something that complicated I must be really good! --- This SF.Net email is sponsored by: New Crystal Reports XI. Version 11 adds new functionality designed to reduce time involved in creating, integrating, and deploying reporting solutions. Free runtime info, new features, or free trial, at: http://www.businessobjects.com/devxi/728 ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] problem issuing item from warehouse to primary inventory point
Did you get the documentation from the VA web site for IFCAP? There is an extensive initialization of files that needs to be done for site configuration. Have you done that step first? If not, I suspect that you will continue to run into things that are not working properly. - Original Message - From: [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 12, 2005 8:43 AM Subject: [Hardhats-members] problem issuing item from warehouse to primary inventory point Hi Have successfully made a Purchase Order and receive items against it. The items were entered into inventory through the ADJUST INVENTORY QUANTITY option. Then I was trying issue the item to a primary inventory point using POST ISSUE BOOK ORDER option. The warehouse balance has reflected the dispensing but the inventory point (ENTER/EDIT INVENTORY ITEM option) does not show it. Now when I try to adjust the item into the primary inventory point using the ADJUST INVENTORY QUANTITY option again, it does not work. The comment it shows is THIS ISSUE BOOK HAS NOT BEEN POSTED (NO FMS LINE NUMBER) AND CANNOT BE ADJUSTED. Is this because I am using a wrong option? How can I do this? Anna mail2web - Check your email from the web at http://mail2web.com/ . --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_ide95alloc_id396op=ick ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Fw: [Hardhats-members] Maintaining database integrity
-Original Message- From: K.S. Bhaskar [mailto:[EMAIL PROTECTED] Sent: Tuesday, April 05, 2005 7:06 PM To: Steve McPhelan Subject: Re: [Hardhats-members] Maintaining database integrity Steve -- I cannot reply to the hardhats list from my Blackberry (from which I am replying to your )message). Would you forward this to the list n please? GT.M has both a proprietary $ZTRAP as well as (ANSI standard) $ETRAP. The latter takes precedence over the former if both are defined, but it is not recommended that an application use both unless you read the documentation in detail because you can create subtle interactions. Thanx for your help. -- Bhaskar -Original Message- From: steven mcphelan [EMAIL PROTECTED] Date: Tue, 5 Apr 2005 15:57:19 To:hardhats-members@lists.sourceforge.net Subject: Re: [Hardhats-members] Maintaining database integrity That is what I recommended and Greg said. Natively, you set an error trap, then the next error that occurs will go to your error handler. If you are using proper coding techniques, your error handler should only be active during the execution of the module where you set the error handler. If you do not use proper techniques and yours was the last error handler enabled, then you will get the next error that occurs whether it is in your module or not. That is why I said I believe the Kernel should have an API to do error handling for all of VistA. In this API I could pass it the type of errors I want to possibly process. All others should be handled by the Kernel API. If the Kernel did this, then we could have a VistA error handler similar to what was mentioned for Java. In M, on error you go to the last error handler enabled. M expects that the error handler will handle properly all and any type of error. This is why I disfavor individual applications setting the error trap. Most programmers would not know what to do in ALL circumstances that may arise. As Murray said, checking for $EC[M13 is not sufficient. But I do not believe the 1995 ANSI M standardized on where to place the line tag and routine name. Thus any other checks beyond contains M13 may be M implementation dependent. Is GT.M fully compliant with the error handler portion of the 1995 ANSI M standards? - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 05, 2005 12:29 PM Subject: Re: [Hardhats-members] Maintaining database integrity I know that I need to understand this entire process, which I currently don't. But I learn best by finding answers for specific questions. So in this situation, how do I say Oops, I don't know how to handle this, let me pass it on to someone else? Thanks Kevin --- Greg Woodhouse [EMAIL PROTECTED] wrote: Unfortunately, you are right. When you set the error trap, you define a single handler that is invoked on ANY error. The programmer then needs to look at $ECODE to identify the error(s) and then act accordingly. It might be possible to emulate the Java-like model using a library routine. In any case, I agree the Java model is better and places a smaller burden on the programmer (always a good thing). --- Kevin Toppenberg [EMAIL PROTECTED] wrote: In the languages that I am familiar with, such as Delphi pascal, and c++, and to a degree, java, there is error handling that ensures that only the errors specifically looked for will be handled at a given level. For example, a programmer might have this in their routine: try { some routine that could cause an error } catch (EDBEngineError E) { Only DBEngine errors handled here } catch {EMgmtError E) { Only the 'MgmtError's handled here } But all other errors are passed to the parent try/catch level. Does M have this functionality? From what I am reading, the entire system is vulnerable to whether a novice programmer (like me) properly handles the errors that fall into his trap... i.e. they ALL fall in. Kevin --- steven mcphelan [EMAIL PROTECTED] wrote: Not at all. I think it is inappropriate for anyone other than the Kernel to make logic decision on the severity of the particular error. You could have a junior programmer who sees a DISKFULL error and is not familiar with that error so they ignore it or treat it with the same concern as an UNDEF X variable. In your example, what should the average programmer do if they detect a M13 error in their error trap? Should they continue processing? Should they absolutely HALT? Should they do something in between? The answer is clear which is it depends on what tag^routine is non-existent. If FILE^DIE is non-existent I better shut all access off to the system until I resolve the problem. If I am not mistaken
Re: [Hardhats-members] Maintaining database integrity
That is what I recommended and Greg said. Natively, you set an error trap, then the next error that occurs will go to your error handler. If you are using proper coding techniques, your error handler should only be active during the execution of the module where you set the error handler. If you do not use proper techniques and yours was the last error handler enabled, then you will get the next error that occurs whether it is in your module or not. That is why I said I believe the Kernel should have an API to do error handling for all of VistA. In this API I could pass it the type of errors I want to possibly process. All others should be handled by the Kernel API. If the Kernel did this, then we could have a VistA error handler similar to what was mentioned for Java. In M, on error you go to the last error handler enabled. M expects that the error handler will handle properly all and any type of error. This is why I disfavor individual applications setting the error trap. Most programmers would not know what to do in ALL circumstances that may arise. As Murray said, checking for $EC[M13 is not sufficient. But I do not believe the 1995 ANSI M standardized on where to place the line tag and routine name. Thus any other checks beyond contains M13 may be M implementation dependent. Is GT.M fully compliant with the error handler portion of the 1995 ANSI M standards? - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 05, 2005 12:29 PM Subject: Re: [Hardhats-members] Maintaining database integrity I know that I need to understand this entire process, which I currently don't. But I learn best by finding answers for specific questions. So in this situation, how do I say Oops, I don't know how to handle this, let me pass it on to someone else? Thanks Kevin --- Greg Woodhouse [EMAIL PROTECTED] wrote: Unfortunately, you are right. When you set the error trap, you define a single handler that is invoked on ANY error. The programmer then needs to look at $ECODE to identify the error(s) and then act accordingly. It might be possible to emulate the Java-like model using a library routine. In any case, I agree the Java model is better and places a smaller burden on the programmer (always a good thing). --- Kevin Toppenberg [EMAIL PROTECTED] wrote: In the languages that I am familiar with, such as Delphi pascal, and c++, and to a degree, java, there is error handling that ensures that only the errors specifically looked for will be handled at a given level. For example, a programmer might have this in their routine: try { some routine that could cause an error } catch (EDBEngineError E) { Only DBEngine errors handled here } catch {EMgmtError E) { Only the 'MgmtError's handled here } But all other errors are passed to the parent try/catch level. Does M have this functionality? From what I am reading, the entire system is vulnerable to whether a novice programmer (like me) properly handles the errors that fall into his trap... i.e. they ALL fall in. Kevin --- steven mcphelan [EMAIL PROTECTED] wrote: Not at all. I think it is inappropriate for anyone other than the Kernel to make logic decision on the severity of the particular error. You could have a junior programmer who sees a DISKFULL error and is not familiar with that error so they ignore it or treat it with the same concern as an UNDEF X variable. In your example, what should the average programmer do if they detect a M13 error in their error trap? Should they continue processing? Should they absolutely HALT? Should they do something in between? The answer is clear which is it depends on what tag^routine is non-existent. If FILE^DIE is non-existent I better shut all access off to the system until I resolve the problem. If I am not mistaken, there is no way in a M-implementation independent way to determine this. If the M system is M95 compliant it should have the $ECODE. But I believe that the text assoicated with the $ECODE is M-implementation dependent.which would help determine the severity of the error. With an organization as large as the VA, you must have error processing being done is a uniform and consistent manor independent of the level of expertise of the individual developer. I believe the reason the VA has not yet developed a standard error handling API is this dependence upon the M implementation. Also, when is an UNDEF or NON-EXISTENT LINE LABEL error critical or not? Determining the severity of an error is far from a trivial task. Even as good as the DSM developers were, they had
Re: [Hardhats-members] Fileman drop-out on pointer update
There may not be such a need. I would have to check to verify this. But I believe that ^DIC may check for the archive flag and filter out those records automatically. I have not actually looked at all of this routine to see if that indeed is what it is doing. But on the surface, it appears to be: DIC3+2 ;Per VHA Directive 10-93-142, this routine should not be modified. MN+6I D=B,'DZ,'$D(DO(SCR)),$L(DIX)30,'$D(DIC(S)),'$D(@(DIC_Y,-9) )),'$G(DINDEX(OLDSUB)) D ADDKEY I 1 Q S+1 I $D(@(DIC_Y,0))),'$D(^(-9)) S DIY=$P(^(0),U) - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 05, 2005 3:42 PM Subject: Re: [Hardhats-members] Fileman drop-out on pointer update Here's a thought (not necessarily a good one): Delete the existing B cross-reference and replace it with a new style cross-reference with a set condition so that stub entries will not be indexed. --- Kevin Toppenberg [EMAIL PROTECTED] wrote: That is what we have had to do with our old system. And it is an ugly kludge. I was hoping to not have to do that. As programmers, can't we overcome such a thing. I don't know yet if vista will show the stub entry that is left behind. I hope not. Kevin --- James Gray [EMAIL PROTECTED] wrote: When I worked in both the VA and in IHS we did not try to delete bad patient records that showed up in the database. Instead we ZZ'd them by putting the letters ZZ at the beginning of the name. It is an ugly kludge, but it prevents big problems. Jim Gray - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Tuesday, April 05, 2005 10:34 AM Subject: Re: [Hardhats-members] Fileman drop-out on pointer update Well, the long and the short of it is that I should NOT have tried to kill one of the two duplicate records. Thus I am doing something not supported, so a crash is not technically a bug/problem. (You put your fingers into the spinning gears, you have to put up with getting pinched!) So I am going to read up (all 200 pages in the manual) on how to merge patients. I sure hope that as I blunder my way to a better understanding that I don't do something really bad Kevin --- James Gray [EMAIL PROTECTED] wrote: I am not in a situation where I can look at the DD's for file 2 and file 901 so I am not sure about the nodes that are causing the problem. I do not see how not having the $G is what could have caused the situation of not having the ^DPT entry. I would like to see how having the $G would have allowed the data to update correctly. In principle there are better ways of writing code than to allow M errors to detect corrupt data, but merely preventing the M error may also allow the code to do things that will further corrupt the data as well. Either way is a risk. The VA uses a X-ref on the SSN field to keep files 2 and 901 in synch. Normally it works well. It does assume that the SSN field is required. You can get into trouble if you make the SSN field optional. IHS keeps the two files in synch via code in the special Fileman lookup routine on file 2. That way they get around the problem of SSN being not a required field. Jim Gray - Original Message - From: Marianne Susaanti Follingstad To: hardhats-members@lists.sourceforge.net Sent: Monday, April 04, 2005 12:45 PM Subject: Re: [Hardhats-members] Fileman drop-out on pointer update What then do you suggest? In this case, NOT having the $G is what created the situation of NOT having a ^DPT entry that is pointed to. In other words, if the $G had been there, the data would have updated correctly and avoided the data integrity problem that now exists. There has to be better ways to detect missing or corrupt data than having an application crash, which risks further corruption of more data. I'm curious as to what the VA does for duplicate records; anyone know? If there is a merge capability or deletion and repointing of duplicates and it uses the standard FileMan functionality, then it too could have the same issue. In this instance, the file on which things blew was an IHS Patient file, so maybe the VA avoided such pitfalls. It is interesting to note that the SCR node (which is meant to screen entries) is also being used here to display info, which does not seem like a great idea; however, there could still be valid reasons to need to look at info in a pointed to file during a screening.
Re: [Hardhats-members] Maintaining database integrity
There is no way in Hades I would support this unless it was done properly. I do not want an EHR written by the average John Doe Programmer who is doing his own error trapping. I was in the VA for 29 years, I know/knew many many of those programmers. There is no way I would trust them with error trapping. What I have suggested in the past, and obviously was never acted upon, was that the Kernel provide an API that would grade the severity of the error. The SACC would have a standard which would tell the developer what actions he is allowed to do for any particular grade of error. Also, I would prefer that the Kernel develop a generic error trap setting API instead of letting the average programmer do this. If VistA-M does end up using much much more individual developer designed error trapping, then the entire viability of VistA as a rock solid EHR would be seriously jeopardized. Recent emails in this vehicle support this view point. One email talked about possibly having $D(^AUPNPAT(0))=0. Excuse me, if that is a true situation, then that system has an extremely serious database issue. On the surface it is easy to fix and normally an UNDEF error would not be considered a major system issue. But in this case it is. Where did this implementation of VistA come from? What was the cause of that file being undefined? Questions like these cannot be calculated in a simple error trap. When I was a VA CIO, if I saw that error in my error trap, I would have IMMEDIATELY shut all processes down including Taskman and denied all user access no matter what time of day it was. I would have an answer to the question to what happened to the file before anyone would be allowed access to the system, let alone the downtime to perform the appropriate database restore. Then I would have to investigate which records were incomplete and fix them before anyone had access to the system. There could be several reasons for the non-existence of this file all of which have very different basic root causes. Do you really want the average programmer out there setting his own error trap and making decisions as to whether or not he should allow processing to continue? Or is the current VA approach a more secure approach which is treat all errors as fatal, log them to the error trap, and disconnect that user? If every VA VistA programmer was a George Timson or a Michael Distaso then I would have such reservations. - Original Message - From: Gregory Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, April 04, 2005 12:54 AM Subject: [Hardhats-members] Maintaining database integrity I've noticed there's been a lot of discussion of dangling pointers and other types of database integrity issues at the application level. My experience has been that these sorts of problems are much more common than problems at the global level (i.e., in the MUMPS subsystem). Part of the problem is that updating pointers when a record is deleted is an expensive process, and when deleting records at the application level, people often tend to skip it. A second issue is that Classic Fileman uses a field by field (rather than a record at a time) model for editing that is not always appropriate. In general, using the DBS (silent) interface can reduce the likelihood of introducing errors (and, in fact, I use DBS calls almost exclusively). A more significant issue is proper use of the MUMPS error trap. I've noticed that many developers tend to look at setting an application level error trap as an extreme measure and are loathe to make use of it. I don't believe this a good practice and would argue that it should be used much more than it is currently. One possible issue is that Kernel sets a default error trap that logs errors and application programmers often forget to call ^%ZTER to log the error (as appropriate) and so think that setting the error trap will prevent errors from being logged when they should be. Another issue is that trapping errors is a tool that can be misused (simply ignoring errors like disk full can cause database problems). A final issue is that the Standards and Conventions document (SAC) currently does not provide any guidance or standardization in this area. This is something I hope to address. Gregory Woodhouse [EMAIL PROTECTED] --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on
[Hardhats-members] ARTICLE ON REWRITING CODE FROM SCRATCH
I thought you might find this article interesting. http://www.joelonsoftware.com/articles/fog69.html --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Re: Maintaining database integrity
What is one not among friends - Original Message - From: George Timson [EMAIL PROTECTED] To: Hardhats hardhats-members@lists.sourceforge.net Sent: Monday, April 04, 2005 11:19 AM Subject: [Hardhats-members] Re: Maintaining database integrity Steven, you ended your disquisition this morning with .. ... If every VA VistA programmer was a George Timson or a Michael Distaso then I would have such reservations. But I agree with what you unintentionally said! Ya can't trust anybody! --George Timson --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Maintaining database integrity
Not at all. I think it is inappropriate for anyone other than the Kernel to make logic decision on the severity of the particular error. You could have a junior programmer who sees a DISKFULL error and is not familiar with that error so they ignore it or treat it with the same concern as an UNDEF X variable. In your example, what should the average programmer do if they detect a M13 error in their error trap? Should they continue processing? Should they absolutely HALT? Should they do something in between? The answer is clear which is it depends on what tag^routine is non-existent. If FILE^DIE is non-existent I better shut all access off to the system until I resolve the problem. If I am not mistaken, there is no way in a M-implementation independent way to determine this. If the M system is M95 compliant it should have the $ECODE. But I believe that the text assoicated with the $ECODE is M-implementation dependent.which would help determine the severity of the error. With an organization as large as the VA, you must have error processing being done is a uniform and consistent manor independent of the level of expertise of the individual developer. I believe the reason the VA has not yet developed a standard error handling API is this dependence upon the M implementation. Also, when is an UNDEF or NON-EXISTENT LINE LABEL error critical or not? Determining the severity of an error is far from a trivial task. Even as good as the DSM developers were, they had bugs directly related to this issue of when to stop or not stop processing. Years ago I was performing an integrity checker on a disk and told it to fix bad blocks if it could. That disk must have been hosed to begin with. The integrity checker ignored all error messages including DISKFULL. It started writing new blocks to any old arbitrary block whether it was in use or not once the disk filled up. The only way I knew this happened was that the system eventually crashed when disk had gotten so corrupted with these random writes to any block. Do you really want the average programmer to make decisions as to what to do or not within their own user defined error trap? I think not. I can see one exception to this, possibly. You set the error trap and look for a specific error message. All other messages are treated as fatal and sent to the Kernel. Prior to the %ZISH utilities, you had to do this on a DSM system. The only way to tell you were at the end of a file was to examine $ZE[ENDOFILE. This example is not valid now since we have the %ZISH utilities. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Monday, April 04, 2005 6:48 PM Subject: Re: [Hardhats-members] Maintaining database integrity --- steven mcphelan [EMAIL PROTECTED] wrote: There is no way in Hades I would support this unless it was done properly. Are you suggesting that I'm saying it should be done improperly? Two techniques that I believe could be used to advantage are sertting $ECODE for user defined errors (often a better alternative to circuitous code maintaining all kinds of condition variables) and calling UNWIND^%ZTER to unwind the stack and quit back to the calling routine (as an alternative to a hard crash). A simple example: ZL ZZGREG6 ZP ZZGREG6 ; ; 4/4/05 6:45pm EN2 ; N I F I=1:1:10 D .D OUCH(I) .W !,I = ,I W !!,DONE! Q ; OUCH(J) ; N $ETRAP,$ESTACK S $ETRAP=D ERR^ZZGREG6 D:J=5 NOPE^ZZGREG6 Q ERR ; N MYEC S MYEC=$$EC^%ZOSV W !!,MYEC D UNWIND^%ZTER Q D ^ZZGREG6 I = 1 I = 2 I = 3 I = 4 OUCH+2^ZZGREG6:1, %DSM-E-LINER, Undefined line label, -DSM-I-ECODE, MUMPS error code: M13 I = 5 I = 6 I = 7 I = 8 I = 9 I = 10 DONE! Of course NOPE^ZZGREG6 doesn't exit. Ther whole point is to force an error. A practical man is a man who practices the errors of his forefathers. --Benjamin Disraeli Greg Woodhouse [EMAIL PROTECTED] [EMAIL PROTECTED] --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list
Re: [Hardhats-members] Mailman 8 on Cache 5 on VMS
Can you be a little more specific on what you mean by interfacing Mailman? I have Mailman running on Cache 5.0.9 and Windows. - Original Message - From: Charles G Lambrecht/HOSPOPS/VET/UTIA [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, April 03, 2005 9:33 AM Subject: [Hardhats-members] Mailman 8 on Cache 5 on VMS Has anyone interfaced Mailman using Cache 5 on OpenVMS? We used to have it working on DSM, but DSM let you pass in a parameter specifying the network device. It doesn't appear Cache lets you do this. I'm wondering if this has been solved, but just hasn't made it into the documentation yet... Thanks, Charles -- Charles Lambrecht Manager - Computer Operations [EMAIL PROTECTED] (865) 974-5742 University of TN College of Veterinary Medicine -- --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Another example of Fileman Search being unreliable
I would not call this a bug. I suspect that Fileman is doing everything properly. However, because of the Output Transform on field 1302, this causes Fileman to fail to find the matches. By putting an output transform on a pointer field you are asking FM to lookup a .01 field value in the pointed to file. Yet FM will compare that value with the value from field 1302 which has the output transform on it to display the INITIAL field from the NEW PERSON file. Obviously, the person's name does not equal the person's initials and thus no matches are found. One can manipulate a file's data structure so that it will cause the generic Fileman tools to apparently misbehave. So who is at fault, if even there is anyone at fault? Is generic Fileman at fault or is the owner of file 8925 at fault? In this case, I do not think either one is at fault. I have always said, one cannot look at the Data Dictionary of a file and expect to know all the related business rules regarding that file. You are trying to bypass those business rules by going to the native data structure to extract data using generic Fileman. Many VistA files are not truly Fileman compatible. By this, I define Fileman compatible as entering data via generic Fileman tools into a file being exactly equivalent to entering that same data through the supported package interface and honoring all business rules for the entering of that data. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, March 20, 2005 10:46 AM Subject: Re: [Hardhats-members] Another example of Fileman Search being unreliable My guess is that Fileman in looking in the B cross-reference for kst and not finding it. When doing a DIC lookup, I think you need to set DIC(PTRIX) (I'm going by memory) if you want to look up a pointed to value using a different index. --- Greg Woodhouse [EMAIL PROTECTED] wrote: It would still be interesting to know if the search fails when entereing TOPPENBERG, KEVIN instead of kst. --- Lloyd Milligan [EMAIL PROTECTED] wrote: Something about the ENTERED BY field DD seems to prevent the search from working as expected. As you pointed out, initials are a valid lookup value. So why doesn't this work? Lloyd - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, March 20, 2005 8:33 AM Subject: Re: [Hardhats-members] Another example of Fileman Search being unreliable Ok, that does work. But as far as I am concerned, THIS IS A BUG! Any reasonable user (and seasoned Fileman users on this board) can't figure this out. Kevin --- Lloyd Milligan [EMAIL PROTECTED] wrote: This has something to do with initials being an output transform. If you use INTERNAL(ENTERED BY), EQUALS, 73 it should work. Lloyd - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Sunday, March 20, 2005 7:59 AM Subject: Re: [Hardhats-members] Another example of Fileman Search being unreliable Still doesn't work. I went back to that particular record, and reentered value for ENTERED BY field. I entered 'kst', and it expanded to 'TOPPENBERG, KEVIN S' (By the way, kst's DUZ=73) I then looked at the data with VPE's VGL function. Here it is. You can see that node;piece 13;2 (field 1302=ENTERED BY) here = 73 (Also, I looked at the global data for other documents that I had not re-entered, and they also were 73.) ==[Session 1]== 1) ^TIU(8925,4299,0) = 1305^34245^^^7^^3041105^3041105^^18 2) ^TIU(8925,4299,12) = 3050207.210339^74^^74^1174^^11 3) ^TIU(8925,4299,13) = 3041105^73^U 4) ^TIU(8925,4299,14) = ^^^3 5) ^TIU(8925,4299,15) = ^74 6) ^TIU(8925,4299,TEXT,0) = ^^27^27^3050207^^ 7) ^TIU(8925,4299,TEXT,1,0) = I then re-ran the search. Still no matches. Here it is: OUTPUT FROM WHAT FILE: TIU DOCUMENT// -A- SEARCH FOR TIU DOCUMENT FIELD: authOR OF NOTE AUTHOR/DICTATOR -A- CONDITION: = EQUALS -A- EQUALS NEW PERSON: ptt THWING,PHILIP T ptt PHYSICIAN -B- SEARCH FOR TIU DOCUMENT FIELD: entereD BY -B- CONDITION: = EQUALS -B- EQUALS NEW PERSON: kst TOPPENBERG,KEVIN S kst PHYSICIAN -C- SEARCH FOR TIU DOCUMENT FIELD: IF: ABAUTHOR/DICTATOR EQUALS 74 (THWING,PHILIP T) and ENTERED BY EQUALS 73 (TOPPENBERG,KEVIN S) OR: STORE RESULTS OF SEARCH IN TEMPLATE: [TMG SET (Mar 20, [EMAIL PROTECTED]:09)
Re: [Hardhats-members] Another oddity - scope of NEW in DSM
There is nothing wrong with either DSM nor Cache. Both are strictly within the ANSI standard M. They both respond with exactly the same results. DSM executes the line and thus the variable is UNDEF after executing the line of code as it should. Cache does so also. On my system, it shows me that Cache puts me in debug mode after executing the line. VAHK A N A S A=100 VAH 1S1W A 100 VAH 1S1Q VAHW A W A ^ UNDEFINED VAH - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: Hardhats hardhats-members@lists.sourceforge.net Sent: Thursday, March 10, 2005 11:36 AM Subject: [Hardhats-members] Another oddity - scope of NEW in DSM A co-worker just pointed out the following oddity that occurs in DSM, but not in Cache: N A S A=100 W A 100 N A S A=100 W A %DSM-E-UNDEF, undefined variable A -DSM-I-ECODE, MUMPS error code: M6 Reviewing sections 7.1.2.2 and 8.2.14 of the standard, it's not clear to me that the scoping rules in programmer mode are clearly defined. A practical man is a man who practices the errors of his forefathers. --Benjamin Disraeli Greg Woodhouse [EMAIL PROTECTED] [EMAIL PROTECTED] --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] Wanted: Fileman class at upcoming VistA conf.
If enough people will sign up (and pay) I am sure Greg Kreis would be willing to teach a class on Fileman if he has the time. I am sure he would not allow it to be videotaped. If WorldVistA wants to survive and propagate the deployment of VistA, then members should be the first to support other members who are trying to make a living encouraging the adoption of VistA. - Original Message - From: Nancy Anthracite [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Friday, March 11, 2005 8:14 AM Subject: Re: [Hardhats-members] Wanted: Fileman class at upcoming VistA conf. If someone will do it, I will make arrangements to see that it gets filmed and made available on DVD. On Friday 11 March 2005 07:17 am, Kevin Toppenberg wrote: Is anyone willing to give a Fileman class at the upcoming VistA conference? There has been interest in this, posted in another thread. Thanks Kevin --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members
Re: [Hardhats-members] How do I do a silent read?
In the case where you are not prompting for electronic signature code, then the following would work. Your example is using screen handling by invoking the ^XGF utilities. If you do not using the ^XGF utilities, then this would work: VAHS ANS=,EOFF=^%ZOSF(EOFF),EON=^(EON) VAHW !,Enter password: X EOFF F R X#1:60 Q:X=!'$T S ANS=ANS_X X EON W # X EOFF Enter password: ## VAHX EON VAHW ANS THIS IS A TEST - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Thursday, March 10, 2005 2:53 AM Subject: Re: [Hardhats-members] How do I do a silent read? That's something slightly different (and more specialized). The point of this API is that it allows you to promp the user for their electronic signature (something you, as a programmer, never would/should know) and verify that it is correct. It doesn't help if you want to do a password style read (i.e., with user input echoing as asterisks) and then get the cleartext value. But that's something you can do with XGF (the VistA equivalent of curses). --- steven mcphelan [EMAIL PROTECTED] wrote: SIG^XUSESIG(): Verify Electronic Signature Code Reference Type Supported Category Electronic Signatures IA # 10050 Description This API requests and verifies the electronic signature code of the current user. Format SIG^XUSESIG(duz,x1) Input Parameters duz: (required) User number. Output Parameters x1: If the user entered the correct electronic signature code, the encrypted electronic signature code as stored in the NEW PERSON file (#200) is returned in x1. Otherwise, x1 is returned as NULL. Even though the Format above shows parameter passing, there is no parameter passing. Also, this call verifies the signed-on user's esig. - Original Message - From: steven mcphelan [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, March 09, 2005 10:41 AM Subject: Re: [Hardhats-members] How do I do a silent read? I am leaving for the airport. I will have to find it. It is in the Kernel Systems Manager documentation or the new Kernel programmer documentation. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, March 09, 2005 10:13 AM Subject: Re: [Hardhats-members] How do I do a silent read? What API do you have in mind? The XGF utilities? Incidentally, here's some code I wrote to allow a user to enter ^ to interrupt a running process that's busy writing dots to the keyboard. It's not exactly what you want, but it shows how to read input one character at a time in a SAC compliant way and also turn echo on/off. (The lock statements are a kludge and shouldn't be needed.) WSTUP ; setup ;K DTOUT ;in case it is defined S CSLTMP=$NA(^XTMP(CSLVEN_MID)) D INITKB^XGF(*) X ^%ZOSF(EOFF) S TIMER=0,DELTA=1,DONE=0 S:+$G(TTW)'0 TTW=DTIME WLOOP; S YCHR=$$READ^XGF(1,1) ;R YCHR#1:1 ;S:$G(YCHR)[^ DONE=1 I '$D(DTOUT) S:$G(YCHR)=^ DONE=1 L [EMAIL PROTECTED]@(0):0 L [EMAIL PROTECTED]@(0) G:'$D(@CSLTMP@(0)) WLOOP2 L [EMAIL PROTECTED]@(0):0 S X=$P(@CSLTMP@(0),^,3) S:+X0 DONE=1 S:+X0 @CSLTMP@(TIMEFOUND)=$$NOW^XLFDT L [EMAIL PROTECTED]@(0) G:DONE WCLN WLOOP2 ; D:IO=IO(0) .W . ;a 1 sec. wait is built into the # read .;W:TIMER#2=0 . S:$D(DTOUT) YCHR= S:YCHR[^ X=0 G:YCHR[^ WCLN H DELTA S TIMER=TIMER+DELTA S:TIMER'TTW X=0 ;timeout G:TIMER'TTW WCLN G WLOOP Q WCLN ; D RESETKB^XGF X ^%ZOSF(EON) Q $G(X) --- steven mcphelan [EMAIL PROTECTED] wrote: Why not just use the Kernel API for this purpose? - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Tuesday, March 08, 2005 11:13 PM Subject: [Hardhats-members] How do I do a silent read? Hey all, I want to ask for a password, and echo *'s How do I do this? I.e. for i=1:1:8 read *S write * gives: a*b*c*d*e*f*g*h* How do I hide the letters? Thanks Kevin P.S., what I really want to do is to compare the user's input to the electronic signiture code stored in the ELECTRONIC SIGNITURE CODE in file 200. Is there a Fileman way of doing this? I just want to ensure that the user knows
Re: [Hardhats-members] How do I do a silent read?
SIG^XUSESIG(): Verify Electronic Signature Code Reference Type Supported Category Electronic Signatures IA # 10050 Description This API requests and verifies the electronic signature code of the current user. Format SIG^XUSESIG(duz,x1) Input Parameters duz: (required) User number. Output Parameters x1: If the user entered the correct electronic signature code, the encrypted electronic signature code as stored in the NEW PERSON file (#200) is returned in x1. Otherwise, x1 is returned as NULL. Even though the Format above shows parameter passing, there is no parameter passing. Also, this call verifies the signed-on user's esig. - Original Message - From: steven mcphelan [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, March 09, 2005 10:41 AM Subject: Re: [Hardhats-members] How do I do a silent read? I am leaving for the airport. I will have to find it. It is in the Kernel Systems Manager documentation or the new Kernel programmer documentation. - Original Message - From: Greg Woodhouse [EMAIL PROTECTED] To: hardhats-members@lists.sourceforge.net Sent: Wednesday, March 09, 2005 10:13 AM Subject: Re: [Hardhats-members] How do I do a silent read? What API do you have in mind? The XGF utilities? Incidentally, here's some code I wrote to allow a user to enter ^ to interrupt a running process that's busy writing dots to the keyboard. It's not exactly what you want, but it shows how to read input one character at a time in a SAC compliant way and also turn echo on/off. (The lock statements are a kludge and shouldn't be needed.) WSTUP ; setup ;K DTOUT ;in case it is defined S CSLTMP=$NA(^XTMP(CSLVEN_MID)) D INITKB^XGF(*) X ^%ZOSF(EOFF) S TIMER=0,DELTA=1,DONE=0 S:+$G(TTW)'0 TTW=DTIME WLOOP; S YCHR=$$READ^XGF(1,1) ;R YCHR#1:1 ;S:$G(YCHR)[^ DONE=1 I '$D(DTOUT) S:$G(YCHR)=^ DONE=1 L [EMAIL PROTECTED]@(0):0 L [EMAIL PROTECTED]@(0) G:'$D(@CSLTMP@(0)) WLOOP2 L [EMAIL PROTECTED]@(0):0 S X=$P(@CSLTMP@(0),^,3) S:+X0 DONE=1 S:+X0 @CSLTMP@(TIMEFOUND)=$$NOW^XLFDT L [EMAIL PROTECTED]@(0) G:DONE WCLN WLOOP2 ; D:IO=IO(0) .W . ;a 1 sec. wait is built into the # read .;W:TIMER#2=0 . S:$D(DTOUT) YCHR= S:YCHR[^ X=0 G:YCHR[^ WCLN H DELTA S TIMER=TIMER+DELTA S:TIMER'TTW X=0 ;timeout G:TIMER'TTW WCLN G WLOOP Q WCLN ; D RESETKB^XGF X ^%ZOSF(EON) Q $G(X) --- steven mcphelan [EMAIL PROTECTED] wrote: Why not just use the Kernel API for this purpose? - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Tuesday, March 08, 2005 11:13 PM Subject: [Hardhats-members] How do I do a silent read? Hey all, I want to ask for a password, and echo *'s How do I do this? I.e. for i=1:1:8 read *S write * gives: a*b*c*d*e*f*g*h* How do I hide the letters? Thanks Kevin P.S., what I really want to do is to compare the user's input to the electronic signiture code stored in the ELECTRONIC SIGNITURE CODE in file 200. Is there a Fileman way of doing this? I just want to ensure that the user knows the password. Thanks Kevin __ Celebrate Yahoo!'s 10th Birthday! Yahoo! Netrospective: 100 Moments of the Web http://birthday.yahoo.com/netrospective/ --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members = A practical man is a man who practices the errors of his forefathers. --Benjamin Disraeli Greg Woodhouse [EMAIL
Re: [Hardhats-members] How do I do a silent read?
Why not just use the Kernel API for this purpose? - Original Message - From: Kevin Toppenberg [EMAIL PROTECTED] To: Hardhats Sourceforge hardhats-members@lists.sourceforge.net Sent: Tuesday, March 08, 2005 11:13 PM Subject: [Hardhats-members] How do I do a silent read? Hey all, I want to ask for a password, and echo *'s How do I do this? I.e. for i=1:1:8 read *S write * gives: a*b*c*d*e*f*g*h* How do I hide the letters? Thanks Kevin P.S., what I really want to do is to compare the user's input to the electronic signiture code stored in the ELECTRONIC SIGNITURE CODE in file 200. Is there a Fileman way of doing this? I just want to ensure that the user knows the password. Thanks Kevin __ Celebrate Yahoo!'s 10th Birthday! Yahoo! Netrospective: 100 Moments of the Web http://birthday.yahoo.com/netrospective/ --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members --- SF email is sponsored by - The IT Product Guide Read honest candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595alloc_id=14396op=click ___ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members