Fileman and Lab Agile Project (FLAP)

Mission Statement:

To deliver fresh, new versions of the VISTA File Manager and Lab packages to VA, IHS, and other VISTA adopters, and to renew and revitalize the VISTA software lifecycle with agile projects within OSEHRA.



Git Repository


Project Background:

The Department of Veterans Affairs (VA) has contributed the Veterans Health Information Systems and Technology Architecture (VistA) codebase to OSEHRA (Open Source Electronic Health Record Agent), the custodial agent that serves as the central governing body of a new open source community. VA’s adoption of open source practices enables, among other benefits, not only the sharing of VA-developed software with the community, but the sharing of community-developed software with VA. VA is implementing the internal processes required to ingest, integrate, test, and deploy software drawn from OSEHRA; doing so makes it possible for VA and the community to converge on common VistA code wherever possible and beneficial. This project served by this contract takes a significant step in converging core VistA software and enabling VA to benefit from the most current VistA enhancements.

Scope of Work:

The Contractor shall enhance the data structure management capabilities of VistA Fileman, refactor VistA Lab, and support VA in the process of deploying the improved Fileman and Lab software. The Contractor shall bring the features of the “MSC Fileman” software into the version of Fileman residing with OSEHRA and shall refactor the Lab package to move appropriate functions to the Fileman package. Working with OSEHRA and the open source community, the Contractor shall ensure that all software is incorporated into OSEHRA’s open source VistA codebase. The Contractor shall assist OSEHRA in certifying the software and shall assist VA in the process of obtaining, integrating, testing, and deploying the new Fileman and Lab packages.

Group Email:

Fileman 22.2 Presentation at the VCM

At the VISTA Community Meeting in Sacramento in a week and a half, I will be presenting an update about Fileman 22.2, including a preview of our plans for version 22.3 and what will probably be a lively discussion with the audience about what they would like to see in the next few versions of File Manager. We invite you to join us there.

Pictures from the OSEHRA Summit

In the spirit of "openness", I took a collection of pictures throughout the OSEHRA event, all of which are available for download at no cost.  (BTW, I have a lot of pictures of participants in addition to the speakers).

You will find them on my website at    Look at the "Featured" albums.

To download, select the images you like from the OSEHRA event and choose "Buy".  You will not be charged.

Comments welcomed and appreciated.

Fix for DDR2 for Fileman 22.3...

Jim Bell found a bug in the Fileman Delphi Components server side routines, where subfile entries were not correctly retrieved under certain conditions. George Timson gave me these examples: Try this in FOIA Vista: K A,SAM S A("FILE")=19,A("IENS")="9",A(" FIELDS")="10*",A("FLAGS")="E" D GETSC^DDR2(.SAM,.A) ZW SAM SAM(1)="[Data]" That's bad. Where's the 'data'?? Here how it should work: K A,SAM S A("FILE")=19,A("IENS")="9",A("FIELDS")="10*",A("FLAGS")="E" D GETSC^DDR2(.SAM,.A) ZW SAM SAM(1)="[Data]" SAM(2)="19.01^1,9^.01^^XUPROG" SAM(3)="19.01^1,9^2^^" SAM(4)="19.01^1,9^3^^25"

Fileman Code Convergence: Testing, Production, and Support

For those new to this project, File Manager version 22.2 is the flagship project for VISTA reunification, a code-convergence movement that aims to get the core of VISTA aligned across all VISTA implementations. Code convergence is on the very short list of the top strategic priorities for the VISTA community - right up there with Meaningful Use, ICD-10, and just a couple other things - because it offers the community a way to leap ahead in productivity, by reducing the amount of reinventing the wheel that goes on across all the VISTA dialects.

Re: [flap] DI*22.2*1 SEQ #1 and DI*22.2*10,001 SEQ #10,001

Will the File Man Delphi Components still work with this version of Fileman? I assume the do or the testers would have noticed something. -- Nancy Anthracite On Sunday, June 23, 2013, toad wrote: > We've been working with OSEHRA to set up the Forum patching infrastructure > we're going to use to release our patches through OSEHRA. That is likely to > take some more weeks, maybe even a month or two, to get fully ready. In the > meantime, we're going to release the first patches to Fileman 22.2 > independently, so we can work in parallel with the OSEHRA Forum-building

DI*22.2*1 SEQ #1 and DI*22.2*10,001 SEQ #10,001

We've been working with OSEHRA to set up the Forum patching infrastructure we're going to use to release our patches through OSEHRA. That is likely to take some more weeks, maybe even a month or two, to get fully ready. In the meantime, we're going to release the first patches to Fileman 22.2 independently, so we can work in parallel with the OSEHRA Forum-building work.

Documenting the Fileman Remote Procedures

While loading all the Database Integration Agreements (DBIAs) into the Technical Manual, I noticed the DBIAs that the Fileman Delphi Components use to subscribe to Fileman's remote procedures - to be able to call them. It occurred to me that I did not know where the Fileman remote procedures themselves were documented, which is odd, since they're such an important linkage between Fileman on the server and any client applications.

Documenting Integration Agreements

Yesterday and today I'm focusing on the Fileman 22.2 Technical Manual. Sam has already done most of the work to update this manual with complete lists of all the new software elements George Timson and the rest of the team created, and Kathy Ice has already overhauled the formatting to put it into our document templates and styles.

Creating VISTA Patches

To summarize the previous post in executive fashion, this week FLAP phase one is delivering three products:

1) the final code and documentation for File Manager version 22.2;

2) the start of development on File Manager version 22.3, in the form of a 22.3 development environment and git codebase; and

3) the start of patching File Manager version 22.2, in the form of (a) a Forum system configured to allow release of FM22.2 patches and (b) the release of the first patch to FM22.2.

Therefore, this week, as that third deliverable, we're delivering DI*22.2*1 SEQ #1.

The VISTA Lifecycle After a Release

This is the final week of FLAP phase one, which focused on the development, documentation, testing, certification, and release of a new version of VISTA's File Manager package. We're wrapping up this round of documentation and testing, and we're wrapping up the code itself for a tidy release with the 22.2 version on the second lines of routines instead of 22.2T2.

But with VISTA, a code release is not any kind of ending. Instead, it is a transformation in the software lifecycle, a split into two parallel paths of development.

Fileman 22.3 code check-in...

Dear Developers, After consulting with Rick, from now on, the dev environment will host the 22.3 code. There will be a lot of code check-ins dealing with code for extensible data types as well as fixes for bugs that we fixed but never committed. The 22.2 code will live unchanged in the v22p2 instance. I hope nothing major breaks; if it does, let me know and I will take a look. Sam

Proposed changes for new Fileman Copy/Merge API

Included are my proposed changes to have a Copy/Transfer/Merge API Changes are made to DIT, DIT3 as outlined below 1. A new entry point TRNMRGEX^DIT is added. This was done so as to not break anything else. But I would expect that changes could be added to existing TRNMRG^DIT and TRNMRGEX could be removed. 2. Documentation is added to code. I don't know if this will cause a code size over run. 3. I changed expected syntax of TO IEN to match that used in UPDATE^DIE, namely "+1," when wanting to copy record into a new record. Internally,
No questions have been added to this group.

VISTA Architecture and FLAP

Here are the documents I used in the presentation I just gave to the OSEHRA Architecture Working Group about the FLAP project. I hope the participants enjoyed the presentation as much as I enjoyed giving it.

The emerging HTML versions of the Fileman 22.2 manuals - including the Release Notes, which I showed today - can be found here:

If you have any questions about this material, please do not hesitate to ask.

Fileman 22.2 Advanced User Manual

Here is the Fileman 22.2 Advanced User Manual. For this manual, the Programmers Manaul, and the Technical Manual, we were unable to do a complete re-write as we did with the Getting Started Manual. The Advanced User Manual has a few new sections, and the remaining information has been updated with Fileman's 22.2 features.


We are proud to announce that following Beta Testing we are releasing the final version of Fileman 22.2.

This version will be showing up on the git repository ( as the file VA-FILEMAN-22P2.RSA.

Attached to this message is a zipped up version of that file.

Thank you to all the folks who have participated in this project.

Sam Habiel
Fileman worker bee
VISTA Expertise Network

Fileman 22.2 Security Manual FINAL (probably)

Here is the final version of the Fileman 22.2 Security and Privacy Manual. I think. We've gone over it, and I think I've incorporated all the feedback I received, so I'm tentatively calling this one final. 

Of course, our deadline isn't until Friday, so if changes are still needed, there's still time to make them.

Fileman 22.3 pre-Alpha Software...

With Fileman 22.2 phase of FLAP coming to a close, we are releasing the source code of the future Fileman 22.3 as an RSA file (attached).

The changes from the to be released version of 22.2 are as follows:

* Extensible Data Types code

* Enhancements to the Fileman Delphi Components routines done by EHS in Jordan

* Bug fixes (all bugs found in Fileman 22.0)

- Modify File Attributes crash when performing a certain sequence of actions.

- Transfer/Merge bug affecting extract fields used as identifiers or keys.

No wikis have been added to this group.