We are currently working on the forum. For the short-term, all forum content will be in read-only format. We apologize for the interruption and look forward to collaborating with you shortly. All the best in your research!

study progress report and best way to contribute


I'm part of the data management team in a large study, where we have developed a tool to measure the data entry / SDV progress according to the study protocol specifications (most CRFs are mandatory, some arm dependent, other clinical information dependent). We would like to know how to contribute to the OC community with this tool, but I have 2 questions:

1.- there is any other current effort to integrate this functionality you are aware of?

2.- any suggestion of how to integrate it in OC? There is any plugin API so we can add a new option in the OC task menu for instance? We are ok with recoding in java or other language.

The functionality idea is to have two views: i) clinical research coordinator, and ii) manager/directors others views. View (i) should show which CRFs are missing in a specific patient, or require SDV to declare it complete. View (ii) must show a table with % and # of progress per event, patient, center, including averages, and historical information. Currently we extract data from the DB and create excel tables.

Best, Mauricio.


  • ccollinsccollins Posts: 383 admin
    via Email
    Hi Mauricio,

    Thanks for sharing! There are two possible ways you can share this with the
    OpenClinica community:

    - Submit the code via a pull request to github
    . This is the best option if
    it is written as part of the java web application, or if you're willing to
    rewrite it in java or javascript.[1]
    - Add it to the extensions site,
    with instructions on what it does and how to install/use it. In this case
    it's a good practice to publish the code in on github under your own
    account as well.


    [1] - writing the plugin in javascript using the OpenClinica REST API would
    likely be the best way to go. This way the functionality could be packaged
    into the core application but you wouldn't have to get into the many
    complex layers of Java (DAOs, Beans, Controllers, JSPs, etc) which can be a
    bit overwhelming. Krikor has been experimenting with this approach since
    OC14 and we could help you make sure it's done in a way that will be
  • Hello!

    I have a similar requirement, in particular looking at the SDV status of CRFs. My preference would be to use the REST API to obtain this data (since we're working with hosted OpenClinica, it's probably the only option). However. I can't find the SDVed status in the REST data. (The data entry status is there). I'm using OpenClinica/rest/clinicaldata/xml/view/S_102/*/*/* as the URI.


  • Dear Cal,

    Thanks for your answer. It will be ok for me to rewrite in java script using OpenClinica REST API but as Richar point out, I'm not sure if that API give me enough access. Doing a quick check to make the "progress report" I propose I'll need the API to provide per patient the following information:

    1- All CRFs created and their data entry status (initiated, completed, removed, etc). Including creation/lastmodification date, owner user, event, ocurrence number, crf version.
    2- All CRFs and their SDV status (same as Richard), last SDV date, user who did last sdv.
    3- The list of discrepancies for each CRF, owner, creation/modification date.

    1 and 2 are necessary, 3 will be nice. Also from the javascript side, I need to specify the list of mandatory CRFs, how can I store that information in OC or should I store it in my external application ? Can you provide a full example of using REST API, I only found some for SOAP.

    PS: I'll be confortable using  Java (DAOs, Beans, Controllers, JSPs, etc), but I don't find any example tutorial of adding some funcionality to OC.

    Best, Mauricio.

  • lindsay.stevenslindsay.stevens Posts: 404 ✭✭✭
    via Email
    Clincapture has some nice looking reports / summaries embedded on the data
    manager home screen. It might be worth looking at their code to get a head
    start on this, although I'm not sure whether it uses the REST API or DAOs.
    On 29/11/2014 4:26 AM, "mauricio.cerda"
  • Dear Lindsay,

    Thanks for the tip. I tested Clicapture (first time I use it, interesting project!) and the reports in the home page are very nice indeed, and close to what I want.

    When I verified the way these reports are implemented in Clincapture, each chart/report is an independent Widget. The main difference to SOAP or REST is that widget have the freedom to implement their "own" WebService in JSP, that can be then used with JS+ajax from the client side. So, there is no limit to what information widgets can potentially access as opossed to SOAP / Rest WS.

    Do you known if there is anything similar in OC?

    Best, Mauricio.
  • lindsay.stevenslindsay.stevens Posts: 404 ✭✭✭
    via Email
    There are a couple of summaries on the openclinica data manager home
    screen, but not widgets. I suppose you could count any of the table views
    as similar, e.g. Subject matrix, discrepancies. Clincapture is a modified
    fork of openclinica so maybe it is possible to diff the relevant
    files for a head start on your implementation.
    On 30/11/2014 6:01 AM, "mauricio.cerda"
  • kkrumliankkrumlian Posts: 25
    Hello Mauricio,

    As Cal highlighted earlier, the best approach would be to consume our REST web services and implement the dashboard on the front end using JS components. In recent year the front end frameworks have become very sophisticated and are fully capable of handling your requirements. 

    Take a look at the following examples:

    I would recommend you create the dashboard as a standalone app and then consume our REST web service. 

    If you have any further questions please feel free to let us know
  • Hello Krikor,

    Thanks for your answer. I see the advantages of adding functionalities using REST web services, but what I'm not sure is that information such as data entry status, SDV status and other extra CRF information (owner, create/modifications date), and discrepancies associated to CRFs is available through REST ??? I don't see anything related in the documentation or examples available.

    Best, Mauricio.
  • GerbenRienkGerbenRienk Posts: 838 ✭✭✭
    Hi Mauricio,
    Yes, apart from the SDV status it's all there, especially if you add the Dn and audit parameters to the URL, lik
    Kind regards,
    Gerben Rienk
This discussion has been closed.