Git Product home page Git Product logo

worldvista / pophealth Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pophealth/pophealth

46.0 46.0 45.0 46.93 MB

popHealth - An open source clinical quality measure reporting and visualization tool. For announcements and information on current state of popHealth, please visit -

Home Page: http://osehra.org/popHealth

License: Apache License 2.0

Ruby 53.33% CoffeeScript 19.54% HTML 12.60% Shell 3.46% JavaScript 0.03% Handlebars 7.62% SCSS 3.43%

pophealth's People

Contributors

addynaik avatar adrianlfns avatar andrequina avatar carpeliam avatar cjohnsonal avatar dtkirsch avatar eedrummer avatar eknelson17 avatar hadleynet avatar imbroglioj avatar jmccloud avatar johnwunder avatar josephsnyder avatar lrasmus avatar mrnosal avatar noranda avatar npm526 avatar pelargir avatar petercyli avatar raj209 avatar rbclark avatar rcchan avatar rdingwell avatar rmccready avatar schreiaj avatar sproinks avatar ssayer avatar ttaylor249 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pophealth's Issues

Windows

Trying to make this work on Windows. I am using makensis in windows to create the msi file.
The issue is that the zip files for pophealth are empty.

Does anyone know how to create this for windows?

Command line defined: "BUILDARCH=32"
Command line defined: "INSTALLER_VER=1.4.1"
Processing config: c:\PROGRA~2\NSIS\nsisconf.nsh
Processing script file: "popHealth.nsi" (ACP)
File: "pophealth" -> no files found.
Usage: File [/nonfatal] [/a] ([/r] [/x filespec [...]] filespec [...] |
/oname=outfile one_file_only)
Error in script "popHealth.nsi" on line 371 -- aborting creation process

Patient Demographics - seed task

Currently for popHealth's database, the collections for Race, Ethnicity, and Languages are not included. This requires a rake task to seed the database which was included in V2. The following branch reintroduces the task to include patient demographics information in the patient summary page.

https://github.com/smc-ssiddiqui/popHealth/tree/demographics

The demographic codes are imported during step 8 of the installation https://github.com/OSEHRA/popHealth/wiki/Installation using the 'rake db:seed' task.

User/Practice Structure via Web UI

At the login page, register a new user. Go back to login and log in as master user (e.g.: pop health). Create a new practice and assign to a user. Go to the administrator menu in the top right hand and select practices. Click on 'edit practice' for the practice you just created. There is no option to edit the users to assign to this practice.

screen shot 2016-12-06 at 1 44 54 pm

If you then go to the Users screen (Adminitrator->Users), there is no option to select the practice for the user.
screen shot 2016-12-06 at 10 22 10 am

Clicking on the button 'View Info' gives an application error.

If you use the api to create the structures, it all appears to work......

Pophealth QRDA Category 3 files have validation errors

All of the QRDA Cat3 xml documents that I have been able to produce with PopHealth have had schema validation errors, which will prevent them from being used to achieve MU 2 Certification.

The validator is provided by ONC and is located here:

http://sitenv.org/qrda-validator

Here is an example of the errors:

QRDA Document Validation Results
Upload Results:
The file: qrda_cat3.xml was uploaded successfully.
QRDA category selected: categoryIII
Validation Results
Validation Failed.
The file has encountered schema errors.
Schema Errors Received:
Error 1:
[Line number:15 Column number:65]cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'st'.
Error 2:
[Line number:15 Column number:65]cvc-attribute.3: The value '' of attribute 'extension' on element 'id' is not valid with respect to its type, 'st'.
Error 3:
[Line number:42 Column number:60]cvc-datatype-valid.1.2.3: 'author_root' is not a valid value of union type 'uid'.
Error 4:
[Line number:42 Column number:60]cvc-attribute.3: The value 'author_root' of attribute 'root' on element 'id' is not valid with respect to its type, 'uid'.
Error 5:
[Line number:54 Column number:79]cvc-datatype-valid.1.2.3: 'authors_organization_root' is not a valid value of union type 'uid'.
Error 6:
[Line number:54 Column number:79]cvc-attribute.3: The value 'authors_organization_root' of attribute 'root' on element 'id' is not valid with respect to its type, 'uid'.
Error 7:
[Line number:73 Column number:82]cvc-datatype-valid.1.2.3: 'custodian_rganization_root' is not a valid value of union type 'uid'.
Error 8:
[Line number:73 Column number:82]cvc-attribute.3: The value 'custodian_rganization_root' of attribute 'root' on element 'id' is not valid with respect to its type, 'uid'.
Error 9:
[Line number:90 Column number:80]cvc-datatype-valid.1.2.3: 'legal_authenticator_root' is not a valid value of union type 'uid'.
Error 10:
[Line number:90 Column number:80]cvc-attribute.3: The value 'legal_authenticator_root' of attribute 'root' on element 'id' is not valid with respect to its type, 'uid'.
Error 11:
[Line number:102 Column number:85]cvc-datatype-valid.1.2.3: 'legal_authenticator_org_root' is not a valid value of union type 'uid'.
Error 12:
[Line number:102 Column number:85]cvc-attribute.3: The value 'legal_authenticator_org_root' of attribute 'root' on element 'id' is not valid with respect to its type, 'uid'.

CMS146v3 double counting patients

I am running
popHealth commit: 90277b
last tag: v4.0.0
bundle 2.6.0

The patient data set that I loaded into pophealth for this measure only includes 2 patients. But the Measure is reporting: IPP=4, NUMER=2, DENOM=4, DENEX=2

ignore_provider_performance_dates

Hello,

Best I can tell the design for this workaround was to stop looking at the time element in the provider performer.

     <performer typeCode="PRF">
             <time>
                  <low value="20130101" />
                  <high value="20131231" />
             </time>

I cannot get this working and I have done everything short of dropping the DB and dropping the directory and reinstalling entirely. I reloaded the bundle, patients providers etc. Am I missing something. I do know that if I erase that element from the QRDA 1, it works as desired.

QRDA3 failes with Cypress 2.4

I know this is old cypress but when I load earlier measure bundle 2.4.1 in pophealth and export QRDA3 it fails Cypress validation. The reason being QualityMeasureDocument/id root attribute. It should be extension. Cypress is expecting the measure number in Root in 2.4 version. Subsequently they have corrected it. Is there any way I can change root to me made as extension for temporary testing purpose while generating QRDA3?

    <!-- QualityMeasureDocument/id This is the version specific identifier for eMeasure -->
    <id root="2.16.840.1.113883.4.738" extension="40280381-3E93-D1AF-013E-9F642782222A"/>
    <!-- SHOULD This is the title of the eMeasure -->
    <text>Preventive Care and Screening: Screening for Clinical Depression and Follow-Up Plan</text>

Patient DOB Shifted

In the source cda document, the birthTime node is: . Ir is being translated within popHealth as: AlerePatient NQF0031 22 48 12/24/1968,. In the mongoDB, the value is: -32140800 which translates using the unix date -r-32140800 command to Tue Dec 24 16:00:00 PST 1968. Data files were imported both through the popHealthUploader from PartStreet as well as through the webUI in the patients section.

V5 Measure Link Issue

When clicking the measure name on the home dashboard, the user is not brought to the measure page.

image

It looks like the provider ID is not being passed in the URL.

After clicking on the measure (NQF 0018) the I am directed to the following URL :
localhost:3003/#measures/40280381-51F0-825B-0152-22B98CFF181A/providers/

Should there be a provider id included in the URL?
localhost:3003/#measures/40280381-51F0-825B-0152-22B98CFF181A/providers/{provider_id}

Is this happening to anyone else?

C4 - Filter requirements - questions

Dear all,
I would like to bring up a couple of filters related questions/issues here. Please do let me know if you think these are valid.

  1. Attached (ProviderPerformanceSample.txt) is a snippet from a synthetic patient QRDA Cat I generated from Cypress. The TIN no. denoted by root "2.16.840.1.113883.4.2" does not get imported.
  2. Practice Site Address: The Certification Companion Guide says that this is "the address of the site that bills for care rather than the mailing address of the provider itself". Now, is this available in the QRDA/CCD? If we are referring to the address in the ProviderPerformance, I don't think HDS imports all such addresses. Once it has created a provider with an NPI, it does not seem to care to add/update the addresses anymore.
  3. I guess the source of Payer Typology is available in Health Data Standards under "{oid: "2.16.840.1.114222.4.11.3591"}", but I am unable to locate Provider Type Taxonomy. Is this part of the latest Cypress bundle?
    Thanks
    Gnana

popHealth Installation with latest pophealth code and the 2.5.0 measure bundle from September

I have followed the latest installation instructions to the letter, and I am running into the #39 issue with delayed job execution - failed with error 16722: "exception: SyntaxError: Unexpected token ;"

Downgrading fixed the issue, so I believe this is a problem somewhere between the current popHealth source code, the gem versions it uses, and the version of the measures bundle that gets imported.

Here is what fixed the issue for me:

git reset --hard eb00169
delete all gems and do bundle install again
drop all dbs in mongo
download an older bundle (2.4.0): curl -u NLM_USERNAME:NLM_PASSWORD http://demo.projectcypress.org/bundles/bundle-2.4.0.zip -o ../bundle-2.4.0.zip
re-import this older bundle: bundle exec rake bundle:import[../bundle-2.4.0.zip,false,false,'*',true,true]
Please try installing using the latest instructions and you are guaranteed to reproduce this error.

Assets Failing to Load

I have just installed popHealth using Installation v4.0 instructions.
popHealth commit: 90277b
last tag: v4.0.0
bundle 2.6.0

But many of the icons seem to be missing when viewing in Chrome. The Chrome Console displays following load errors:

Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Medium/Roboto-Medium-webfont.woff
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Medium/Roboto-Medium-webfont.ttf
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Regular/Roboto-Regular-webfont.ttf
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Thin/Roboto-Thin-webfont.woff
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Bold/Roboto-Bold-webfont.woff
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Thin/Roboto-Thin-webfont.ttf
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/Roboto-Bold/Roboto-Bold-webfont.ttf
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/font-awesome/fonts/fontawesome-webfont.woff?v=4.0.3
Failed to load resource: the server responded with a status of 404 (Not Found)
http://192.168.98.161/assets/font-awesome/fonts/fontawesome-webfont.ttf?v=4.0.3

By contrast, when I run in Development mode, I do see the icons without problem.

Incidentally, when precompiling the assets, the following warnings appeared:

pophealth@ubuntu:~/popHealth$ rake assets:precompile
WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.9.1
/home/pophealth/popHealth/lib/tasks/sharding.rake:4: warning: class variable access from toplevel

I can fix some of the icons by copying ~/popHealth/vendor/assets/components/font-awesome
to ~/popHealth/public/assets/font-awesome
and precompiling the assets again. But I suspect there must be a better solution.

Error in install wiki for v4.0

In Step 13 when configuring apache.

The config for pophealth's directory location are incorrect.

/etc/apache2/sites-available/pophealth

These lines should be changed:

DocumentRoot /home/pophealth/popHealth/public
<Directory /home/pophealth/popHealth/public>

to:

DocumentRoot /home/ubuntu/popHealth/public
<Directory /home/ubuntu/popHealth/public>

Unable to download measure bundle

The contrib/install_pophealth.sh is pointing to demo.projectcypress.org, which does not resolve, on line 578:

curl -s -u ${nlm_user}:${nlm_passwd} http://demo.projectcypress.org/bundles/bundle-latest.zip -o ../bundle-latest.zip" pophealth

~/popHealth$ bundle exec rake pophealth:download_update_install version=2.6.0 RAILS_ENV=production
/home/clohl/popHealth/lib/tasks/sharding.rake:4: warning: class variable access from toplevel
NLM Username?: c#######
NLM Password?:
Downloading and saving bundle-2.6.0.zip to /home/clohl/popHealth/bundles
An error occured while downloading the bundle
rake aborted!
Errno::ETIMEDOUT: Connection timed out - connect(2) for "demo.projectcypress.org" port 80

unable to create providers with the api

We are getting "Status 500 internal server error" when we upload providers via the api. We are using version 5.0 of PopHealth. We tried both the apis "POST /api/admin/providers" and "POST /api/providers" with both JSON and opml as input, but each time we get the same "internal server error". we used the JSON and opml files provided in the test\fixures. Can you guide us what we are doing wrong?

4.0 update ignores QRDA 1 <Entry> for Observation Diagnosis - after the first

Hi,

I updated to 4.0 dev and bundle 2.6 and am having an issue where the same for Diagnosis is being ignored during patient import if it is repeated in order to present the diagnosis for another code and valueset. Notice below that id extension 116082 has two tags. The first with a snomed value code="35489007" and the second ICD10 value code="F32.9". For some reason the second and all subsequent of these are ignored during patient import. I don't have the 3.0 for regression testing but I have record of the same test patient meeting CMS161 population, which it is now not. Can you advise if this is something in popHealth or something I am missing in the updated schema?

      <entry>
        <observation classCode="OBS" moodCode="EVN">
          <templateId root="2.16.840.1.113883.10.20.22.4.4" />
          <templateId root="2.16.840.1.113883.10.20.24.3.11" />
          <id extension="116082" />
          <code code="282291009" codeSystem="2.16.840.1.113883.6.96" displayName="diagnosis" codeSystemName="SNOMED-CT" />
          <text>Diagnosis, Active: BH Condition Involving Unipolar Depression ( Code List: 2.16.840.1.113883.3.1257.1.1505 )</text>
          <statusCode code="completed" />
          <effectiveTime>
            <low value="20140715104519" />
            <high />
          </effectiveTime>
          <value code="35489007" codeSystem="2.16.840.1.113883.6.96" xsi:type="CD" d8p1:valueSet="2.16.840.1.113883.3.1257.1.1505" xmlns:d8p1="urn:hl7-org:sdtc">
            <originalText>Diagnosis, Active: BH Condition Involving Unipolar Depression ( Code List: 2.16.840.1.113883.3.1257.1.1505 )</originalText>
          </value>
          <entryRelationship typeCode="REFR">
            <observation classCode="OBS" moodCode="EVN">
              <templateId root="2.16.840.1.113883.10.20.22.4.6" />
              <templateId root="2.16.840.1.113883.10.20.24.3.94" />
              <id root="f7b6dc50-ecc6-0130-a509-22000aa43ef1" />
              <code code="33999-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="status" />
              <statusCode code="completed" />
              <value displayName="active" codeSystemName="SNOMED CT" code="55561003" codeSystem="2.16.840.1.113883.6.96" xsi:type="CD" />
            </observation>
          </entryRelationship>
        </observation>
      </entry>
      <entry>


<entry>
        <observation classCode="OBS" moodCode="EVN">
          <templateId root="2.16.840.1.113883.10.20.22.4.4" />
          <templateId root="2.16.840.1.113883.10.20.24.3.11" />
          <id extension="116082" />
          <code code="282291009" codeSystem="2.16.840.1.113883.6.96" displayName="diagnosis" codeSystemName="SNOMED-CT" />
          <text>Diagnosis, Active: Major Depressive Disorder-Active ( Code List: 2.16.840.1.113883.3.526.3.1491 )</text>
          <statusCode code="completed" />
          <effectiveTime>
            <low value="20140715104519" />
            <high />
          </effectiveTime>
          <value code="F32.9" codeSystem="2.16.840.1.113883.6.90" xsi:type="CD" d8p1:valueSet="2.16.840.1.113883.3.526.3.1491" xmlns:d8p1="urn:hl7-org:sdtc">
            <originalText>Diagnosis, Active: Major Depressive Disorder-Active ( Code List: 2.16.840.1.113883.3.526.3.1491 )</originalText>
          </value>
          <entryRelationship typeCode="REFR">
            <observation classCode="OBS" moodCode="EVN">
              <templateId root="2.16.840.1.113883.10.20.22.4.6" />
              <templateId root="2.16.840.1.113883.10.20.24.3.94" />
              <id root="f7b6dc50-ecc6-0130-a509-22000aa43ef1" />
              <code code="33999-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="status" />
              <statusCode code="completed" />
              <value displayName="active" codeSystemName="SNOMED CT" code="55561003" codeSystem="2.16.840.1.113883.6.96" xsi:type="CD" />
            </observation>
          </entryRelationship>
        </observation>
      </entry>

Running calculation simultaneous to using UI

In our implementation when we upload a file to load and do the calculation, the UI is freezing. Is there a way that I can do concurrent load and UI? Has anyone changed the code or looked at how to do that?

popHealth 4.0.2 Production environment - unable to import patients

I have set up an Ubuntu 14.04 VM with popHealth 4.0.2 with a production setup as given in: https://github.com/OSEHRA/popHealth/wiki/Installation-v4.0

I am unable to load any patients. Even after selecting the zip file and pressing upload, I am not getting any patients loaded.

This is what I get in the production.log:
Started PUT "/admin/upload_patients" for 10.159.93.40 at 2016-04-06 00:13:45 -0400
Processing by AdminController#upload_patients as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"MTxfOxl/1kWjST+SV7c1C3hju8xD5t+xjWPcxUbdV2I=", "file"=>#<ActionDispatch::Http::UploadedFile:0x0000000483a528 @tempfile=#Tempfile:/tmp/RackMultipart20160406-12650-u65cq3, @original_filename="patient_qrda_pophealth.zip", @content_type="application/zip", @headers="Content-Disposition: form-data; name="file"; filename="patient_qrda_pophealth.zip"\r\nContent-Type: application/zip\r\n">, "commit"=>"Upload"}
Redirected to http://10.159.93.234/admin/patients
Completed 302 Found in 37ms
Started GET "/admin/patients" for 10.159.93.40 at 2016-04-06 00:13:45 -0400
Processing by AdminController#patients as HTML
Rendered admin/patients.html.erb within layouts/application (2.5ms)
Rendered shared/_header.html.erb (2.0ms)
Completed 200 OK in 17ms (Views: 6.7ms)
Started GET "/api/admin/patients/count" for 10.159.93.40 at 2016-04-06 00:13:50 -0400
Processing by Api::Admin::PatientsController#count as JSON
Completed 200 OK in 15ms (Views: 0.4ms)

Any ideas on where to look for debugging this.

Thanks,
Sachin

Measure Calculation API

I was able to post parameters to /api/queries to start a measure calculation successfully. However, after the measure calculation is stored in the database, when selecting the pre-calculated reporting period it looks like its going through all of the patients associated with the displayed measures and inserting a test_id field in the patient record ("record" collection). I tested this process with 10,000 patients and it takes around an hour to assign the test_id to all the patients, once this process is complete, it takes a couple of seconds to pull the measure calculation from MongoDB.

image

Has anyone seen this?

Nick Martinez

Reading XML Values as String

It looks like when reading values, it treats the values as literal string values instead of XML values. The example I uncovered is when parsing the main provider information (documentationOf/serviceEvent/performer/assignedEntity/assignedPerson------both the given and family nodes), if you wrap values in [![CDATA]] tags, it includes the CDATA characters in the providers name inside of popHealth.

Enhancement Request : Forcing Measure to Recalculate

Once a measure is calculated the results are saved in the query_cache collection. However, if additional patients are loaded and the user returns to the same measurement period, the previous measure results are pulled from the query cache collection rather than recalculating. There is an API to force a measure to recalculate but there is no way for the user to do this from the GUI.

QRDA3 file does not contain measure data

I have just installed popHealth using Installation v4.0 instructions.
popHealth commit: 90277b
last tag: v4.0.0
bundle 2.6.0

I have been testing with CMS122v3. I am now able to generate QRDA Cat3 files. The generated file does contain an entry for the CMS122v3 measure, but does not actually have the data for Initial Population, Denom, Numer, etc. even though the data is displayed in the UI.

I am a complete beginner with debugging Ruby. But here is what I see... populations and population_groups in the results object are empty:

12: def export(measures, header, effective_date, start_date, end_date, filter=nil,test_id=nil)
13:   results = {}
14:   measures.each do |measure|
15:     results[measure['hqmf_id']] = HealthDataStandards::CQM::QueryCache.aggregate_measure(measure['hqmf_id'], effective_date, filter, test_id)
16:   end
=> 17:   @rendering_context.render(:template => 'show', 
18:                             :locals => {:measures => measures, :start_date => start_date, 
19:                                         :end_date => end_date, :cat1_renderer => @cat1_renderer,
20:                                         :results => results,
21:                                         :header=>header})
22: end

[15] pry(#HealthDataStandards::Export::Cat3)> measures
=> #<Mongoid::Criteria
selector: {"$or"=>[{"sub_id"=>nil}, {"sub_id"=>"a"}], "hqmf_id"=>{"$in"=>["40280381-4555-E1C1-0145-90AC70DE2C73"]}}
options: {}
class: HealthDataStandards::CQM::Measure
embedded: false>

[16] pry(#HealthDataStandards::Export::Cat3)> results
=> {"40280381-4555-E1C1-0145-90AC70DE2C73"=>
#<HealthDataStandards::CQM::AggregateCount:0x000000097de7f0
@measure_id="40280381-4555-E1C1-0145-90AC70DE2C73",
@population_groups=[],
@Populations=[]>}

Inconsistent & insecure URL structure

The URLs that can be navigated to by a logged-in administrator are somewhat inconsistent:

/#providers
/teams
/admin/patients
/admin/users
/logs/index
/#admin/measures

Notably, the URLs that start with /# persist in the login URL if sent to a user that is not logged in - I feel that this would make sense if the user was automatically routed to that page after login, but this does not seem to be the case.

Also, unlike the others, the /teams URL breaks for an unauthorized user instead of redirecting to login, which seems to be the behavior for the other links.

V5 install instructions problems starting at Step 11

V5 says to run Ubuntu 16.04 LTS and on step 5 correctly uses systemctl. Then on step 11 the instructions are having the user attempt to use Upstart (sudo start delayed_worker). Upstart is unavailable on 16.04

In general I'm having a hard time getting V5 Server to install correctly. I'm assuming it is because the delayed_worker process is never starting up but as it currently stands I am consistently left with "forbidden" and Apache log showing "Apache cannot serve directory No matching direcotryindex found"

I don't believe V5 server install instructions are accurate.

Install step 7 results in a Syntax Error

Hi all,

I'm getting stuck at step 7 of the install with a SyntaxError in providers_controller.rb.

The command I'm running is:
bundle exec rake pophealth:download_update_install version=2.6.0 RAILS_ENV=production

Here is the error:

rake aborted!
SyntaxError: /osehra/popHealth/app/controllers/api/providers_controller.rb:163: syntax error, unexpected ':', expecting =>
        query={"addresses" => {"$elemMatch" => {"$or":[
                                                      ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:164: syntax error, unexpected ':', expecting =>
            {"city":/#{x}/i},
                    ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:164: syntax error, unexpected '}', expecting keyword_end
            {"city":/#{x}/i},
                            ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:165: syntax error, unexpected ':', expecting =>
            {"street":/#{x}/i},
                      ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:165: syntax error, unexpected '}', expecting keyword_end
            {"street":/#{x}/i},
                              ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:166: syntax error, unexpected ':', expecting =>
            {"state":/#{x}/i},
                     ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:166: syntax error, unexpected '}', expecting keyword_end
            {"state":/#{x}/i},
                             ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:167: syntax error, unexpected ':', expecting =>
            {"zip":/#{x}/i},
                   ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:167: syntax error, unexpected '}', expecting keyword_end
            {"zip":/#{x}/i},
                           ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:168: syntax error, unexpected ':', expecting =>
            {"country":/#{x}/i}
                       ^
/osehra/popHealth/app/controllers/api/providers_controller.rb:168: syntax error, unexpected '}', expecting keyword_end
/osehra/popHealth/config/environment.rb:5:in `<top (required)>'
/osehra/popHealth/lib/tasks/admin.rake:1:in `<top (required)>'
/osehra/popHealth/Rakefile:15:in `<top (required)>'
(See full trace by running task with --trace)

Any suggestions or thoughts?

Side Note: I signed up for a NLM account like this step said but I don't understand where this fits into this step. Also from the nih page I didn't see a place for NLM VSAC Services. Is there an environment variable that I need to set so that the app can connect to the NLM VSAC API?

Adding support for CCDA

Hi, it would be great if you would add support for CCDA since C32 is pretty much obsolete and CCDA is the latest. Might want to consider FHIR too since that seems to be coming up.

Load Error When Updating Existing Patient Record

Hello,

There is an issue when loading a new record for a patient that already exists in the database. This is an error in the import job and the files do not successfully load. There is a screen shot of the error below.

image

-Nick

Failure importing new measure bundles

When running the command:
popHealth $ bundle exec rake pophealth:download_update_install version=2016

There is an error about a new value in the value set model that is not allowed:

NLM Username?: xxxxxxxxxxxxxx
NLM Password?: 
Downloading and saving bundle-2016.zip to /Users/luke/popHealth/bundles
Modifying bundle bundle-2016.zip to support variable date ranges
bundle metadata unpacked...
Loading: Measures Complete          
Loading: Patients Complete          
rake aborted!
Mongoid::Errors::UnknownAttribute: 
Problem:
  Attempted to set a value for 'categories' which is not allowed on the model HealthDataStandards::SVS::ValueSet.
Summary:
  Without including Mongoid::Attributes::Dynamic in your model and the attribute does not already exist in the attributes hash, attempting to call HealthDataStandards::SVS::ValueSet#categories= for it is not allowed. This is also triggered by passing the attribute to any method that accepts an attributes hash, and is raised instead of getting a NoMethodError.
Resolution:
  You can include Mongoid::Attributes::Dynamic if you expect to be writing values for undefined fields often.

Date Calculation Issue in popHealth - Wrong Denominator.

We have popHealth installed from github. The versions installed are:

popHealth commit: 3fd494
last tag: v3.0.0.rc1
bundle 2.6.0

The issue I am having is with calculation of Blood Pressure measure (CMS165v3) for a time period ending earlier than 2nd August.

A video showing this issue is available at: https://youtu.be/LRIDBCvsWoU

Specifics of the issue

We have created 10 patients, all of whose Blood Pressure starts off as uncontrolled. The data used for this testing is available at: https://drive.google.com/file/d/0B80jMILLPf0vTm1Ra3pVR0NvZVU/view?usp=sharing

Some of the details pertaining to these 10 patients are:

Patient Name Last Encounter Date Controlled (Y/N)?
Heart_Adult_1 Controlled 09/20/2013 Y
Heart_Adult_2 Controlled 09/05/2013 Y
Heart_Adult_3 Controlled 08/20/2013 Y
Heart_Adult_4 Controlled 12/20/2013 Y
Heart_Adult_5 Controlled 12/20/2013 Y
Heart_Adult_1 Uncontrolled 12/20/2013 N
Heart_Adult_2 Uncontrolled 12/20/2013 N
Heart_Adult_3 Uncontrolled 12/20/2013 N
Heart_Adult_4 Uncontrolled 07/04/2013 N
Heart_Adult_5 Uncontrolled 06/04/2013 N

Based on the above data, the following lists the expected values and the actual values we get from popHealth

End Date Expected Numerator Expected Denominator popHealth Numerator popHealth Denominator Result as Expected?
12/31/2013 5 10 5 10 Y
09/30/2013 3 10 3 10 Y
09/15/2013 2 10 2 10 Y
09/01/2013 1 10 1 10 Y
08/21/2013 1 10 1 10 Y
08/20/2013 0 10 0 10 Y
08/19/2013 0 10 0 10 Y
08/15/2013 0 10 0 10 Y
08/10/2013 0 10 0 10 Y
08/03/2013 0 10 0 10 Y
08/02/2013 0 10 0 10 Y
08/01/2013 0 10 0 0 N
07/01/2013 0 10 0 0 N
06/15/2013 0 10 0 0 N

The specific question(s)

  1. Why does the Denominator become '0' when the end date is before August 02? The denominator of the population should remain the same at 10.
  2. What is the magic in August 2?

A video showing this issue is available at: https://youtu.be/LRIDBCvsWoU

ENHANCEMENT REQUEST: Add a Way to View Entire Patient List

From what I have seen, the only way to view a patient list in the web ui is if they are included in a measure population. There should be a way to list ALL patients evaluated and then possibly adding filters for what providers they are associated with.

issue with popHealth installation

I’m pretty new in Linux development and I have installed popHealth V4.0 on an Amazon Web Sevices, AWS.
I getting the message that “Web application could not be started”.
Thank you for any help to solve this issue.
See the error bellow:

error.zip

Uploading error.zip…

Web application could not be started

An error occurred while starting up the preloader. It exited before signalling successful startup back to Phusion Passenger. Please read this article for more information about this problem.

Raw process output:
--> Compiling passenger_native_support.so for the current Ruby interpreter...
(set PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY=0 to disable)
--> Downloading precompiled passenger_native_support.so for the current Ruby interpreter...
(set PASSENGER_DOWNLOAD_NATIVE_SUPPORT_BINARY=0 to disable)
Could not download https://oss-binaries.phusionpassenger.com/binaries/passenger/by_release/4.0.50/rubyext-ruby-2.1.5-x86_64-linux.tar.gz: The requested URL returned error: 404 Not Found
Trying next mirror...
Could not download https://s3.amazonaws.com/phusion-passenger/binaries/passenger/by_release/4.0.50/rubyext-ruby-2.1.5-x86_64-linux.tar.gz: The requested URL returned error: 403 Forbidden
--> Continuing without passenger_native_support.so.
/usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json/common.rb:67: [BUG] Segmentation fault at 0x00000000000018
ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0041 p:---- s:0131 e:000130 CFUNC :initialize
c:0040 p:---- s:0129 e:000128 CFUNC :new
c:0039 p:0075 s:0126 e:000123 METHOD /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json/common.rb:67
c:0038 p:0070 s:0115 e:000113 CLASS /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json/ext.rb:17
c:0037 p:0011 s:0112 e:000111 CLASS /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json/ext.rb:12
c:0036 p:0057 s:0110 e:000109 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json/ext.rb:9 [FINISH]
c:0035 p:---- s:0108 e:000107 CFUNC :require
c:0034 p:0019 s:0104 e:000103 CLASS /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json.rb:58
c:0033 p:0017 s:0102 e:000101 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/json-1.8.3/lib/json.rb:54 [FINISH]
c:0032 p:---- s:0100 e:000099 CFUNC :require
c:0031 p:0007 s:0096 e:000095 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/activesupport-4.1.14/lib/active_support/core_ext/object/json.rb:2 [FINISH]
c:0030 p:---- s:0094 e:000093 CFUNC :require
c:0029 p:0071 s:0090 e:000089 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/activesupport-4.1.14/lib/active_support/core_ext/object.rb:11 [FINISH]
c:0028 p:---- s:0088 e:000087 CFUNC :require
c:0027 p:0015 s:0084 e:000083 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/railties-4.1.14/lib/rails/configuration.rb:2 [FINISH]
c:0026 p:---- s:0082 e:000081 CFUNC :require
c:0025 p:0015 s:0078 e:000077 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/railties-4.1.14/lib/rails/railtie.rb:2 [FINISH]
c:0024 p:---- s:0076 e:000075 CFUNC :require
c:0023 p:0007 s:0072 e:000071 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/railties-4.1.14/lib/rails/engine.rb:1 [FINISH]
c:0022 p:---- s:0070 e:000069 CFUNC :require
c:0021 p:0047 s:0066 e:000065 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/railties-4.1.14/lib/rails/application.rb:6 [FINISH]
c:0020 p:---- s:0064 e:000063 CFUNC :require
c:0019 p:0063 s:0060 e:000059 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/railties-4.1.14/lib/rails.rb:11 [FINISH]
c:0018 p:---- s:0058 e:000057 CFUNC :require
c:0017 p:0007 s:0054 e:000053 TOP /usr/local/rvm/gems/ruby-2.1.5/gems/actionpack-4.1.14/lib/action_controller/railtie.rb:1 [FINISH]
c:0016 p:---- s:0052 e:000051 CFUNC :require
c:0015 p:0026 s:0048 e:000047 TOP /home/pophealth/popHealth/config/application.rb:4 [FINISH]

Tests fail with bundler 1.12.5

Noticed in latest CI build that unit tests fail after bundler is updated to the latest version (1.12.5):

There was an error while trying to load the gem 'quality-measure-engine'. (Bundler::GemRequireError)
Gem Load Error is: undefined method `field' for QME::QualityReport:Class
Backtrace for gem load error is:
/home/travis/build/OSEHRA/popHealth/lib/qme/quality_report.rb:6:in `<class:QualityReport>'
/home/travis/build/OSEHRA/popHealth/lib/qme/quality_report.rb:4:in `<module:QME>'
/home/travis/build/OSEHRA/popHealth/lib/qme/quality_report.rb:3:in `<top (required)>'
/home/travis/.rvm/gems/ruby-2.1.2/gems/quality-measure-engine-3.1.2/lib/quality-measure-engine.rb:10:in `require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/quality-measure-engine-3.1.2/lib/quality-measure-engine.rb:10:in `<top (required)>'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:86:in `require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:86:in `block (2 levels) in require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:81:in `each'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:81:in `block in require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:70:in `each'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler/runtime.rb:70:in `require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/bundler-1.12.5/lib/bundler.rb:102:in `require'
/home/travis/build/OSEHRA/popHealth/config/application.rb:15:in `<top (required)>'
/home/travis/build/OSEHRA/popHealth/config/environment.rb:2:in `require'
/home/travis/build/OSEHRA/popHealth/config/environment.rb:2:in `<top (required)>'
/home/travis/build/OSEHRA/popHealth/test/test_helper.rb:4:in `require'
/home/travis/build/OSEHRA/popHealth/test/test_helper.rb:4:in `<top (required)>'
/home/travis/build/OSEHRA/popHealth/test/functional/admin_controller_test.rb:1:in `require'
/home/travis/build/OSEHRA/popHealth/test/functional/admin_controller_test.rb:1:in `<top (required)>'
/home/travis/.rvm/gems/ruby-2.1.2/gems/rake-10.4.2/lib/rake/rake_test_loader.rb:15:in `require'
/home/travis/.rvm/gems/ruby-2.1.2/gems/rake-10.4.2/lib/rake/rake_test_loader.rb:15:in `block in <main>'
/home/travis/.rvm/gems/ruby-2.1.2/gems/rake-10.4.2/lib/rake/rake_test_loader.rb:4:in `select'
/home/travis/.rvm/gems/ruby-2.1.2/gems/rake-10.4.2/lib/rake/rake_test_loader.rb:4:in `<main>'

'Loading...' Message Does Not Go Away

If you log in as the master user (e.g.: pophealth), when all of the different measures turn from grey to black, the 'Loading...' message goes away but it does not. If you log in as other users, it goes away like it should. I have checked in IE11, Chrome (54.0.2840.98), Safari 10.0.1 (12602.2.14.0.7). Chrome was checked in both Windows and MAc.

Flexible Reporting Period Bug

When adjusting the reporting period, there are patients that are appearing in measures when they should not.

I have attached a sample CCD Below. In this sample, this patient has a diagnosis of hypertension and encounters on 20160704 and 20170101. However, when adjusting the reporting period to 9/1/2016-11/30/2016, this patient appears in the denominator even though there was no encounter during this reporting period.

sample.zip

Patient Data not being calculated

Hello!,
I am having issues with getting patient information to be calculated in popHealth. I used the front end upload method on the "/admin/patients" page to import 225 patients from the the zip file found here (https://github.com/projectcypress/cypress/downloads).

The records appear in my system, but they did not have providers associated with them. So I added a Practice, which created a provider for me. I created the association between the provider and the records by adding provider_performances to the records.

Now, on the home page, I am able to click on the specific provider and see that there are 225 patients in associated with it. However, when I click on measures, I consistently get 0/0 as numerator and denominator values. This occurs for different "effective_dates" that I try.

I do have delayed jobs running, and the calculations seem to be taking place. There are patient_cache, query_cache, and quality_report items being created in the database. I'm not sure what I am missing. Any help would be much appreciated!

Misspelling in config/popHealth.yml

node cda_header:

:organization:
:ids:
- :root: custodian_rganization_root
:extension: custodian_organization_ext
:name: ''

Assuming the root: should read custodian_organization_root

Count difference post Upgrade from 3.0 to 4

Hello,

We upgraded popHealth from 3.0 to 4 and see a drastic change in denominator and numerator count for provider with reporting year of 2015.

Example: ClosingReferralLoop was 17/84 and now its 8/37.

In the production log of popHealth, I see below error:
2016-05-13T02:37:44-0400: [Worker(host:pophealth4 pid:1157)] Job ImportArchiveJob (id=5732bd40c5e7fba5fa00000c) RUNNING
2016-05-13T02:37:44-0400: [Worker(host:pophealth4 pid:1157)] Job ImportArchiveJob (id=5732bd40c5e7fba5fa00000c) FAILED (15 prior attempts) with Errno::ENOENT: No such file or directory @ unlink_internal - /home/admin01/popHealth/tmp/import/patient_upload1462943040659
2016-05-13T02:37:44-0400: [Worker(host:pophealth4 pid:1157)] 1 jobs processed at 75.5989 j/s, 1 failed

Can you please help us know what might be causing this, is there anything we missed in installation to new version? Or is it expecting QRDA with 2016 version? Do we need to update value sets for new version?

Thanks,
Vijaya

memory usage in popHealth 4.0.2?

We are running popHealth in development mode on an Ubuntu 14.04, with 16GB RAM. If we start popHealth 4.0.2 on Ruby 2.1.2, and interact with it once or twice, the Ruby/popHealth memory usage grows to take up all 16GB of RAM and logins become very slow. Has anyone else observed this problem?
(Also, one of us installed popHealth in production mode on another Ubuntu VM. Although it was not possible to access that popHealth to exercise it because the web-server had not been setup, memory usage with no API calls grew overnight from 300MB to 900MB.
Perhaps there is some Ruby tuning that we need to do?
Thanks, --John B.

ENHANCEMENT REQUEST: View Patient Evaluations

Once you can view ALL patients associated with a provider, it would be REALLY nice to have a way to view from the mongodb the evaluation information stored when the rules are processed so a user could see exactly what part of the measure rules the patient did not meet.

Issue while restarting Apache (popHealth Installation)

Hi,

I have followed all the steps provided from the below installation link and while restarting the apache, i am getting the below error. Not sure what is wrong with my config file, Kindly help me on this.

https://github.com/OSEHRA/popHealth/wiki/Installation-v4.0

pophealth.conf - Content
SetEnv SECRET_KEY_BASE cat /dev/urandom | env LC_CTYPE=c tr -dc 'a-e0-9' | fold -w 64 | head -n 1

Command: service apache2 restart
Error Description:

  • Restarting web Server apache2
  • The apache2 configtest failed.
    Output of config test was:
    AH00526: Syntax error on line 1 of /etc/apache2/conf-enabled/pophealth.conf:
    SetEnv takes 1-2 arguments, an environment variable name and optional value to pass to CGI.
    Action 'configtest' failed.
    The Apache error log may have more information

Thanks in Advance

Regards
Nithin Basavarajappa

V4 Aggregate Calculation

Hi,

I updated to 4.0 and am having a problem with the aggregate calculation. The page gets stuck on the 'LOADING...' and never completes calculating. There is an 'undefined method' error which is preventing the calculation from completing. Please see the attached screenshots.

-Nick

aggregate calculation screenshot

undefined method

QRDA3 validation issue due to Performance Rate Cypress 2.6.1

Hi

While test with latest Cypress 2.6.1 (Measure Bundle 2.6.0), it gives errors. Is there any way to fix those? nullFlavor has to be there along with precision handling. Any quick help will be appreciated.

  1.  Reported Performance Rate SHALL not have a precision greater than .000001
    
  2.  Reported Performance Rate SHALL not have a precision greater than .000001
    
  3.  Reported Performance Rate SHALL not have a precision greater than .000001
    
  4.  Reported Performance Rate for Numerator 9ABAB074-B5D9-42B1-856C-AC8A91B847D9 should be NA
    
  5.  Reported Performance Rate for Numerator 2919957C-F557-484C-A832-B7AF9F2D9685 should be NA
    

WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.7.8

I am following the installation instructions (ver 3) to stand up a demo server. When I get to the following command in step 7:

bundle exec rake bundle:import[/home/pophealth/bundle-2.6.0.zip,false,false,'*',true,true] RAILS_ENV=development

I received the following:

WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.7.8
/home/iatric/popHealth/lib/tasks/sharding.rake:4: warning: class variable access from toplevel
rake aborted!
Errno::ENOENT: No such file or directory @ rb_sysopen - /home/pophealth/bundle-2.6.0.zip
/usr/local/rvm/gems/ruby-2.1.2/gems/health-data-standards-3.5.3/lib/health-data-standards/tasks/bundle.rake:41:in initialize' /usr/local/rvm/gems/ruby-2.1.2/gems/health-data-standards-3.5.3/lib/health-data-standards/tasks/bundle.rake:41:inopen'
/usr/local/rvm/gems/ruby-2.1.2/gems/health-data-standards-3.5.3/lib/health-data-standards/tasks/bundle.rake:41:in block (2 levels) in <top (required)>' /usr/local/rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:ineval'
/usr/local/rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `

'
Tasks: TOP => bundle:import
(See full trace by running task with --trace)

The greatest version of libxml2 distributed for Ubuntu Precise is 2.7.8.

Please advise.

Missing version info in Gemfile causes failure: NoMethodError (undefined method `for' for #<Devise::ParameterSanitizer

After installing, we tried to run a report (multiple patients) and got an empty output file.
The log showed:


...
MOPED: 127.0.0.1:27017 QUERY database=pophealth-development collection=preferences selector={"$query"=>{"user_id"=>BSON::ObjectId('57ed666dff80404097000000')}, "$orderby"=>{:_id=>1}} flags=[] limit=-1 skip=0 batch_size=nil fields=nil runtime: 0.4080ms
Completed 500 Internal Server Error in 3ms

NoMethodError (undefined method for' for #<Devise::ParameterSanitizer:0x007fc63201fea0>): app/controllers/registrations_controller.rb:69:inconfigure_permitted_parameters'
...


In Devise 4.x the 'for' method has been replaced. Backing down to Devise 3.5.2 solved the problem and we got the reports.
The Gemfile has no version for 'devise' and for most other packages. I would help by starting to track down and fill in version detail, but since we are a relatively new install, I don't have a good way to verify that all the modules are working as they should with the versions we have.

Measure Calculation Error

When calculating measures, there is an error message that occurs periodically. I have been able to calculate the measure successfully, however after changing the reporting period the measure never finishes calculating. When looking in MongoDB there is an 'Uninitiated Constant Moped::BSON' error. See screenshot below.

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.