Edit VSAM file using C#

1.1k views Asked by At

We are looking at different ways to update a VSAM file.

One of the things that we would like to do is to stop writing any new cobol code.

We were wondering is it possible to download a VSAM file from the Main Frame to a Windows Server, then use a C# program to edit it, then transfer it back to the Main frame?

Has anyone tried this?

And yes we are moving away from the use of VSAM, but it takes time.

2

There are 2 answers

0
James Anderson On BEST ANSWER

There are plenty of other options for updating a VSAM file other than a COBOL program.

Transferring the file and and back again seems a perverse and error prone way to update a simple VSAM file. Most VSAM files contain a mix of character, integer and packed decimal data, C# plain cannot handle mainframe packed decimal and any attempt to translate EBDCIC to ASCII during file transfer will corrupt the packed decimal and binary values, so, you will need to manipulate raw EBCDIC characters.

  • Obviously you can write a COBOL program! (seems perverse not to!)
  • You could also write a C, C++, Java or PL/1 program all of which run on the mainframe, all of which have VSAM support.
  • You could extract to a sequential file update with a script (zsh, Rexx, PERL etc. etc.) and reload. (Your site may have an add-in that allows direct update from Rexx).
  • Most largish mainframe sites have an add on utility like File-Aid, Startool or Ditto which allow direct editing of VSAM files.
0
weismat On

The MS way would be to use Biztalk Microsoft Host Integration Server to access VSAM.
There might be other non-MS drivers, which I am not aware of - maybe via DB2 Windows drivers.