Friday, October 21, 2011

Phone Support

We have overhauled our internal phone system, in order to separate ourselves a bit from our parent company, M+H Consulting.

Since we have people in Oregon, Massachusetts and Connecticut, we know that our internal communication has sometimes been lacking.

You will still call 203-481-4885, but the extensions have changed:
  • Extension 104: Sales Support
  • Extension 105: Tech Support
With our new phone system, messages actively follow us around, so we hope to cut down on response time.

Wednesday, October 19, 2011

Where Is My Software?

QUESTION

We just purchased the above referenced software on our Purchase Order
Number XXXXXXXXX.  The Pay-Pay Receipt number is XXXX-XXXX-XXXX-XXXX.  At
the time the order was placed there was no shipping method specified.
Could we have the software emailed to us?


ANSWER

We are happy to email confirmed purchases. Your file is on its way, assuming that no email firewall between us intercepts it because it contains a .EXE file.

(If the email is rejected, we will send it via TransferBigFiles.com, a third party service. They will send you an email and you can use the link in that email to pull down your purchase.)

We hear that a purchase did not go through at least once a month, so we are writing up this answer in case our process is not intuitive.

The typical purchase should go like this:
  1. You place the order
  2. Our system confirms the payment
  3. The software should start to download during your session
  4. As a back up, an email is sent to you with a link

F29 Release: AIX Support

We have just released DRGFilt for AIX.

The version of AIX under which we built and tested this executable is this:

AIX host-name 1 6 00C1FB204C00

We can build any of our Unix-based products for AIX, but DRGFilt is the only one popular enough to be in the on-line store: all others are built on-demand.

F29 Release: When AIX Support?

QUESTION

When will the DRG for AIX be available for version 29?  I didn't see
anything on the tech blog about an ETA.
ANSWER

Excellent question, it should be available in about two hours (ie, about Noon Eastern Time today). Sorry for the poor communication.

Thursday, October 13, 2011

F29 Release: Web Site Updated

Our web site has been updated. This completes our initial F29 release.

F29 Release: Product Catalog

Our product catalog is fully assembled except for the porting lab products, which are not done yet:

  • AIX DRGFilt
  • SPARC DRGFilt

F29: Support Changes

As of F29, we no longer support the ICL rapid application development environment (IDE, BDE).

We have decided to continue support for 32 bit Linux this year, but we are on the fence about that, so we are going to take a poll about 32 bit Linux support for next year.

F29 Manual: What Changed

We have revised our manual for F29. Here is what changed with the F29 version of the manual:
  • updated various dates in the text
  • fixed typo "appeneded" in various chapters
  • chapter 3: added documentation of bit string DAE outputs, per this tech support question.

Wednesday, October 12, 2011

F29 Standing Orders Have Been Filled

Our pre-ordered F29 orders and our standing orders have been filled.

Left to do:
  • publish an updated manual
  • update our on-line store
  • release the updated web site

F29 Release: Windows Validation

Win32 DRGFilt...Passed
Win32 C-callable DLL...Passed
Win32 VB-callable DLL...Passed
Win32 VB-DRG / VB-callable DLL compatibility...Passed
Win32 CGI-DRG...Passed
Win32 F29 ICD9 table...Passed
Win32 ICD labeling DLL...Passed

Win32 F29 masks installer...Passed
Win32 C-callable DLL installer...Passed
Win32 VB-callable DLL installer...Passed

Our windows product line is validated and ready for shipping.

Tuesday, October 11, 2011

F29 Release: Linux Validation

F29 Linux Product Validation Log

Masks for F29...Passed
DAE Regression Test...Passed
Linux DRGFilt for F29...Passed
Demo Linux version of DRGFilt...Passed
Linux C Shared Object for F29...Passed
Linux Perl Shared Object for F29...Passed
Linux PHP Shared Object for F29...Passed
Linux CGI-DRG for F29...Passed

Details

Masks for F29...Passed
Validated the masks file against official list, which we found here. Not that some MS-DRGs are not defined, such as 9, 18, 19, etc.

DAE Regression Test...Passed
Ran the latest DAE through our regression testing suite.

[Tue Oct 11 16:33:41 2011]     | --------SUMMARY-----------
[Tue Oct 11 16:33:41 2011]     |   v29: Ok
[Tue Oct 11 16:33:41 2011]     |   v28: Ok
[Tue Oct 11 16:33:41 2011]     |   v27(poa): Ok
[Tue Oct 11 16:33:41 2011]     |   v27: Ok
[Tue Oct 11 16:33:41 2011]     |   v26(poa): Ok
[Tue Oct 11 16:33:41 2011]     |   v26: Ok
[Tue Oct 11 16:33:41 2011]     |   v25: Ok
[Tue Oct 11 16:33:41 2011]     |   v24: Ok
[Tue Oct 11 16:33:41 2011]     |   v23: Ok
[Tue Oct 11 16:33:41 2011]     |   v22: Ok
[Tue Oct 11 16:33:41 2011]     |   v21: Ok
[Tue Oct 11 16:33:41 2011]     |   v20: Ok
[Tue Oct 11 16:33:41 2011]     |   v19: Ok
[Tue Oct 11 16:33:41 2011]     |   v18: Ok
[Tue Oct 11 16:33:41 2011]     |   v17: Ok
[Tue Oct 11 16:33:41 2011]     |   v16: Ok
[Tue Oct 11 16:33:41 2011]     |   v15: Ok
[Tue Oct 11 16:33:41 2011]     |   v14: Ok
[Tue Oct 11 16:33:41 2011]     |   v13: Ok
[Tue Oct 11 16:33:41 2011]     |   v12: Ok




Linux DRGFilt for F29...Passed
Validated the DAE with DRGFilt against the test data set with this control file:

age  000 03
sex  003 01
ds   004 02
dxl  000 08
poa  000 07
dx   023 96
sgl  000 07
surg 223 98
exmp 006 01
# these are written out by us
drg  607 03
mdc  610 02
rc   612 02
dflg 614 15
sflg 629 15

Using our validation script, we compare the incoming DRG at offset 603 to our DRG at offset 607, the incoming MDC at 600 with ours at 610, the incoming RC at offset 598 with ours at 612.

Demo Linux version of DRGFilt...Passed
This free version only does F10. Validated it against our internal F10 dataset of 35,451 records.

Interactive Test Cases
We don't run the entire test dataset through our interactive UIs because it would be too much work for too little gain. Once we validate the core DAE, we validate the UIs with a sample of the official test dataset. This year that sample looks like this:

-------------------------------------------
   Age: 049
   Sex: F
  Disp: 01
   MDC: 21
   DRG: 908
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 99679 : :
  DX02: 25041 : :
  DX03: 5859  : :
  DX04: 2767  : :
  DX05: 25051 : :
  DX06: 36904 : :
  DX07: 25061 : :
  DX08: 3371  : :
  DX09: 40290 : :
  DX10: 2859::

Proc's:  Code
  SG01: 3942  
  SG02: 3993  
  SG03: 3995
-------------------------------------------
   Age: 059
   Sex: M
  Disp: 01
   MDC: 01
   DRG: 074
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 3564  : :
  DX02: 2639  : :
  DX03: 311   : :
  DX04: 2761  : :
  DX05: 5601  : :
  DX06: 5180::

Proc's:  Code
  SG01: 9383  
  SG02: 9339

-------------------------------------------
   Age: 050
   Sex: M
  Disp: 01
   MDC: 04
   DRG: 182
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 1628::

Proc's:  Code
  SG01: 324   
  SG02: 3409  
  SG03: 8965  
  SG04: 9396

-------------------------------------------
   Age: 077
   Sex: F
  Disp: 03
   MDC: 08
   DRG: 563
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 81611 : :
  DX02: 25081 : :
  DX03: 2512  : :
  DX04: E8849 : :
  DX05: 3319  : :
  DX06: 04110 : :
  DX07: 8831::

Proc's:  Code
  SG01: 7904  
  SG02: 9659  
  SG03: 8659

-------------------------------------------
   Age: 081
   Sex: F
  Disp: 01
   MDC: 02
   DRG: 117
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 3659::

Proc's:  Code
  SG01: 1279




Linux C Shared Object for F29...Passed
Validated the Linux C shared object with this test case, to also confirm that the used codes bit flag handling is now correct:

-------------------------------------------
   Age: 055
   Sex: F
  Disp: 01
   MDC: 08
   DRG: 455
  DX's:  Code :E:P where E=exempt flag P=present on admission flag
  DX01: 71500 : :Y

Proc's:  Code
  SG01: 8134  
  SG02: 8135



Raw return value from mhdrg:
0^8^455^29^5.6449^0.00^ ^COMBINED ANTERIOR/POSTERIOR SPINAL FUSION W/O CC/MCC                  ^1^11

Deconstructed return value from mhdrg:
rc=0, mdc=8, drg=455, ovn=29, weight=5.6449, mean=0.00, porm=
desc=COMBINED ANTERIOR/POSTERIOR SPINAL FUSION W/O CC/MCC                 
dx flags:1, px flags: 11

Expected result: RC: 0 MDC: 08 DRG: 455

Significant ICD codes:
 * DX code  1 was used
 * Proc code  1 was used
 * Proc code  2 was used


Linux Perl Shared Object for F29...Passed

Validated the Perl shared object against the same test case as C shared object.

THIS YEAR, WE WILL HAVE TO CHANGE OUR PROCESS TO HANDLE THE 5.8 VS POST-5.8 DIVIDE, AS WELL AS MULT-THREADED VS NOT-MULTI-THREADED.


Linux PHP Shared Object for F29...Passed
Validated the Perl shared object against the same test case as C shared object.

Linux CGI-DRG for F29...Passed
Validated the Linux CGI-DRG against same test case as C shared object.


Expected F29 Release: still 10/12/11

Development has turned over the ICD9 F29 DAE to us for validation, a process we expect to complete in time for a release tomorrow.

The ICD10-prototype-for-F28, which we call X28, will be out of development soon.

Version 29 of ICD10 won't be released until January, 2012, so development won't be done with X29 until the end of January, 2012, at the earliest.

Sunday, October 9, 2011

Expected F29 Release: 10/12/11?

When we predicted that we would do a release on 10/10/11, we forgot that 10/10/11 is a holiday hereabouts and that we are closed for business. We will need at least a day to get ready after we get back to work, so we are looking at 10/12/11 at the earliest now.

Saturday, October 8, 2011

Web Site Overhaul for F29

As part of our annual release this year, we are overhauling our web site.

We expect to release the new web site when we release the new version. We still expect to do the release sometime on October 10th, 2011.

We hope that the streamlining will make the site more useful to our customers. Let us know if it does not.

Friday, October 7, 2011

Expected F29 Release: 10/10/11

We were not able to get our release out yesterday; we currently expect to do the release on Monday, October 10th.

Tuesday, October 4, 2011

Codes Used in DRG Assignment, Continued

QUESTION

This is a follow-up to an earlier question.
When I use this.......
---------------------------------------------
$retval = mhdrgc::mhdrg(
         #'f26p',                        # which DRG version you want
         'f28',                        # which DRG version you want
         '/home/programmer/grouper',        # path to masks files
         '1',                        # discharge status (home)
        '72',                        # patient age on admission
        '2',                        # patient sex (1=male, 2=female)
        # ICD DX codes
         '3313    3312    Y49320  Y5990   N7812   Y3051   Y73300  Y3004   Y3320   Y71598  Y412    ',
        # ICD procedure codes
        '0331            ',
        '8',                        # length of each ICD DX code
        '7',                       # length of each ICD procedure code
     );
------------------------------------------------------------------
I'm putting in 11 DX codes and 1 procedure code.

What I get back is this...
---------------------------------------------
0^1^57^28^0.9350^0.00^ ^DEGENERATIVE NERVOUS SYSTEM DISORDERS W/O MCC                         ^1^0


The blog states ...
"The strings are positional: 1001 means that the first code was used, codes two and three were not but code four was. "

Shouldn't the output be more like 
0^1^57^28^0.9350^0.00^ ^DEGENERATIVE NERVOUS SYSTEM DISORDERS W/O MCC                         ^10000000000^0

That is, 3313 was used, but the other ten weren't?

ANSWER

You are referring to the bitstrings of which diagnoses or procedures that were used in the DRG assignment. For the DRGFilt product, these are sflg and dflg keywords.

You are correct, there is a bug in the interface routine. What we see at the lowest level, when we run your example through our testbed, is this:

Diagnosis flags=(100000000000000000000000000000)
Procedure flags=(000000000000000)

So somewhere between the DAE and the Perl interface,the output is being stripped of trailing zeroes, which is not what we want in this case.

We have opened an internal bug and expect to have this fixed in the upcoming release.

Sunday, October 2, 2011

Expected F29 Release: 10/06/11

Due to popular demand, this year we are publishing an expected release date for a version.

We expect to release support for version 28 of the US Federal DRG assignment algorithm, active as of October 1st 2011, on October 6th, 2011.

If you have pre-ordered from us, we expect you to have your software by close of business on October 6th, 2011.

We expect to publish an updated manual at the same time.