{"id":6534,"date":"2014-12-12T14:56:54","date_gmt":"2014-12-12T19:56:54","guid":{"rendered":"http:\/\/www.iri.com\/blog\/?p=6534"},"modified":"2017-11-06T13:54:10","modified_gmt":"2017-11-06T18:54:10","slug":"migrating-cobol-vision-files","status":"publish","type":"post","link":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/","title":{"rendered":"Migrating COBOL Vision Files &#8211; The Metadata"},"content":{"rendered":"<p>In the course of legacy platform and\/or\u00a0application migration, COBOL users often need to convert\u00a0their binary and index files into a human-readable, ASCII-numeric target. One of these older formats is the ACUCOBOL Vision<sup><a id=\"ref1\" href=\"#fn1\">1<\/a><\/sup> file, which we discussed previously\u00a0in <a href=\"http:\/\/www.iri.com\/blog\/data-transformation2\/vision\/\" target=\"_blank\" rel=\"noopener\">this article<\/a>.<\/p>\n<p>In order to convert and make use of those files, you need a program or utility that can read and process them, and metadata that will define your data source and target layouts. There are two programs that are capable of natively processing COBOL Vision files:<\/p>\n<ul>\n<li><a href=\"http:\/\/www.iri.com\/products\/nextform\" target=\"_blank\" rel=\"noopener\">IRI NextForm<\/a>: The &#8220;<a href=\"http:\/\/www.iri.com\/products\/nextform\/technical-details\" target=\"_blank\" rel=\"noopener\">COBOL edition<\/a>&#8221; of this program is primarily used to convert from one file type to another, and\/or convert from one data type to another. NextForm also has report formatting features, and can be used to federate and replicate data.<\/li>\n<li><a href=\"http:\/\/www.iri.com\/products\/cosort\" target=\"_blank\" rel=\"noopener\">IRI CoSort<\/a>: The &#8220;<a href=\"http:\/\/www.iri.com\/products\/cosort\/sortcl\" target=\"_blank\" rel=\"noopener\">SortCL<\/a>&#8221; program within CoSort does all that NextForm does, plus many other functions, including: data transformations (sort, join, aggregate, pivot, etc.) and data masking (encrypt, hash, pseudonymize, etc.).<\/li>\n<\/ul>\n<p>Note that both NextForm and CoSort are supported in the <a href=\"http:\/\/www.iri.com\/products\/workbench\" target=\"_blank\" rel=\"noopener\">IRI Workbench<\/a>, a free graphical integrated development environment (IDE), built on Eclipse.\u2122 The workbench automates the discovery and definition of metadata for, and the creation and execution of, IRI jobs.<\/p>\n<p>You will also need to have access to either the COBOL copybook or the Identification Section of the XFD file associated with the Vision file. If you have neither, life will be much harder, though there is the possibility of guessing what&#8217;s inside after a &#8216;blind&#8217; conversion.<sup><a id=\"ref2\" href=\"#fn2\">2<\/a><\/sup><\/p>\n<p>Both the XFD and the COBOL copybook contain the metadata for the data file, including:<\/p>\n<ul>\n<li>record size<\/li>\n<li>column positions or offset for the fields<\/li>\n<li>byte size of the fields<\/li>\n<li>data type of the fields<\/li>\n<li>how many times a particular group of definitions occur<\/li>\n<li>format, if any fields are one of the various numerics<\/li>\n<li>field names<\/li>\n<\/ul>\n<p>Let&#8217;s assume you\u00a0have a\u00a0Vision file that is accompanied by\u00a0the following copybook:<\/p>\n<pre>FD\u00a0 CLIENT-PROCEDURE-FILE.\r\n*01\u00a0 FILLER\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC X(186).\r\n 01\u00a0 CLIENT-RECORD.\r\n      05\u00a0 PROCEDURE-KEY.\r\n           10\u00a0 PROCEDURE-CODE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC X(60).\r\n      05\u00a0 PROCEDURE-DATA.\r\n           10\u00a0 CATEGOTY\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC X(5).\r\n           10\u00a0 PROCEDURE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC X(10).\r\n           10\u00a0 PROCEDURE-DESC OCCURS 3 TIMES.\r\n                15\u00a0 PROCEDURE-PART\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC X(30).\r\n                15\u00a0 PROCEDURE-CHARGE\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PIC S9(9)V9(4).\r\n<\/pre>\n<p>The field section of an XFD file for the same Vision file might (and there are different versions) contain:<\/p>\n<pre>00000,00186,16,00186,+00,000,999,CLIENT-RECORD\r\n00000,00060,16,00060,+00,000,999,PROCEDURE-KEY\r\n00000,00060,16,00060,+00,000,000,PROCEDURE-CODE\r\n00060,00136,16,00126,+00,000,999,PROCEDURE-DATA\r\n00060,00005,16,00005,+00,000,000,CATEGORY\r\n00065,00010,16,00010,+00,000,000,PROCEDURE\r\n90001,00003,00037,START-OCCURS\r\n00075,00037,16,00030,+00,000,999,PROCEDURE-DESC\r\n00075,00030,16,00020,+00,000,000,PROCEDURE-PART\r\n00105,00007,09,00014,-02,000,000,PROCEDURE-CHARGE\r\n90002,END-OCCURS\r\n<\/pre>\n<p>Lines that are actual field definitions have 000 in the 7th column. The first column has the start position, the second has the byte size, the third has the data type, and the last column has the field name. Following\u00a0is a list of the more common codes for the data types:<\/p>\n<table  class=\" table table-hover\" width=\"270\">\n<tbody>\n<tr>\n<td>\u00a0\u00a0\u00a00<\/td>\n<td>Numeric edited<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a01<\/td>\n<td>Unsigned numeric<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a02<\/td>\n<td>Signed numeric (trailing separate)<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a03<\/td>\n<td>Signed numeric (training combined)<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a04<\/td>\n<td>Signed numeric (leading separate)<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a05<\/td>\n<td>Signed numeric (leading combined)<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a06<\/td>\n<td>Signed computational<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a07<\/td>\n<td>Unsigned computational<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a08<\/td>\n<td>Positive packed-decimal<\/td>\n<\/tr>\n<tr>\n<td>\u00a0\u00a0\u00a09<\/td>\n<td>Signed packed-decimal<\/td>\n<\/tr>\n<tr>\n<td>\u00a010<\/td>\n<td>Computational-6<\/td>\n<\/tr>\n<tr>\n<td>\u00a016<\/td>\n<td>Alphanumeric<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>Either the copybook or the XFD can be used to translate the legacy file dictionary to the Data Definition File (.ddf) <a href=\"http:\/\/www.iri.com\/products\/cosort\/sortcl-metadata\" target=\"_blank\" rel=\"noopener\">format<\/a> used by all IRI software. For copybooks, IRI also has a standalone conversion utility, called &#8216;<a href=\"http:\/\/www.iri.com\/products\/cosort\/sortcl-metadata\/convert-import-metadata\" target=\"_blank\" rel=\"noopener\"><em>cob2ddf<\/em><\/a>&#8216; to create DDF repositories with the same information in IRI&#8217;s metadata syntax. This tool runs in the IRI Workbench as well to produce the metadata for your NextForm or CoSort SortCL jobs.<\/p>\n<p>The copybook-equivalent layout ready for IRI software (produced by <em>cob2ddf<\/em>)\u00a0looks like this:<\/p>\n<pre>\/FIELD=(PROCEDURE_CODE, POSITION=1, SIZE=60)\r\n\/FIELD=(CATEGOTY, POSITION=61, SIZE=5)\r\n\/FIELD=(PROCEDURE, POSITION=66, SIZE=10)\r\n\/FIELD=(PROCEDURE_PART_1, POSITION=76, SIZE=30)\r\n\/FIELD=(PROCEDURE_CHARGE_1, POSITION=106, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2)\r\n\/FIELD=(PROCEDURE_PART_2, POSITION=113, SIZE=30)\r\n\/FIELD=(PROCEDURE_CHARGE_2, POSITION=143, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2 )\r\n\/FIELD=(PROCEDURE_PART_3, POSITION=150, SIZE=30)\r\n\/FIELD=(PROCEDURE_CHARGE_3, POSITION=180, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2 )\r\n<\/pre>\n<p>There are COBOL computational fields in the data; these are the MF_CMP3. They are numeric fields that are not human readable. To translate MF_CMP3 to a regular NUMERIC data type, the size needs to be double the size given for the original field, plus 1 for the decimal.<\/p>\n<p>The parameter IMPLIED_DECIMAL means that there is no decimal in the original data, but it is understood or implied that there should be a decimal with the number of digits to the right of the decimal equal to the implied number. In the COBOL copybook, this number is obtained from the number of 9s to the right of the V in the numeric mask of the field. In the XFD file, this number is obtained from the fifth column that defines the field.<\/p>\n<p>However, once your fields <i>are<\/i> defined, they can be used in NextForm or other programs to convert the fields to new\u00a0data types, and to remap the fields to other positions in readable, portable\u00a0output files.<\/p>\n<p>Once you have the .DDF layouts, you can then use the NextForm COBOL edition or CoSort&#8217;s SortCL program to convert the data to something human readable, with a job script (that either product can use) like this:<\/p>\n<pre>\/INFILE=CLIENT-PROCEDURE.dat\r\n  \/PROCESS=VISION\r\n   \/FIELD=(PROCEDURE_CODE, POSITION=1, SIZE=60)\r\n   \/FIELD=(CATEGORY, POSITION=61, SIZE=5)\r\n   \/FIELD=(PROCEDURE, POSITION=66, SIZE=10)\r\n   \/FIELD=(PROCEDURE_PART_1, POSITION=76, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_1, POSITION=106, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2)\r\n   \/FIELD=(PROCEDURE_PART_2, POSITION=113, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_2, POSITION=143, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2 )\r\n   \/FIELD=(PROCEDURE_PART_3, POSITION=150, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_3, POSITION=180, SIZE=7, MF_CMP3, IMPLIED_DECIMAL=2 )\r\n\r\n\/REPORT\r\n\r\n\/OUTFILE= CLIENT-PROCEDURE-ASCII.dat\r\n   \/FIELD=(PROCEDURE_CODE, POSITION=1, SIZE=60)\r\n   \/FIELD=(CATEGORY, POSITION=61, SIZE=5)\r\n   \/FIELD=(PROCEDURE, POSITION=66, SIZE=10)\r\n   \/FIELD=(PROCEDURE_PART_1, POSITION=76, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_1, POSITION=106, SIZE=15, PRECISION=2, NUMERIC)\r\n   \/FIELD=(PROCEDURE_PART_2, POSITION=121, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_2, POSITION=151, SIZE=15, PRECISION=2, NUMERIC)\r\n   \/FIELD=(PROCEDURE_PART_3, POSITION=166, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_3, POSITION=196, SIZE=15, PRECISION=2, NUMERIC)\r\n   \r\n\/OUTFILE= CLIENT-PROCEDURE-FIXED.dat\r\n  \/LENGTH=186\r\n   \/FIELD=(PROCEDURE_CODE, POSITION=1, SIZE=60)\r\n   \/FIELD=(CATEGORY, POSITION=61, SIZE=5)\r\n   \/FIELD=(PROCEDURE, POSITION=66, SIZE=10)\r\n   \/FIELD=(PROCEDURE_PART_1, POSITION=76, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_1, POSITION=106, SIZE=7, MF_CMP3)\r\n   \/FIELD=(PROCEDURE_PART_2, POSITION=113, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_2, POSITION=143, SIZE=7, MF_CMP3)\r\n   \/FIELD=(PROCEDURE_PART_3, POSITION=150, SIZE=30)\r\n   \/FIELD=(PROCEDURE_CHARGE_3, POSITION=180, SIZE=7, MF_CMP3)\r\n<\/pre>\n<p>Notice that there are two output files, each with their own metadata:<\/p>\n<ul>\n<li>The first has converted the MF_CMP3 to regular NUMERIC, adjusted the field sizes and positions accordingly, and used PRECISION to set the decimal. The records will have a linefeed (LF) or carriage return linefeed (CRLF) as their terminator.<\/li>\n<li>The second has not changed any of the field definitions, but notice that there is a \/LENGTH statement. This means that there will not be a LF or CRLF to terminate the records, and the LENGTH\u00a0value\u00a0determines where the\u00a0records end. It is best to use this when there are binary data types in the records, such as the computationals,\u00a0so that the data\u00a0are not\u00a0confused with record terminators.<\/li>\n<li>IRI job scripts like the one above can specify any number of data sources and targets. These two files could have been 200, and a mix of files, database tables, pipes, and\/or procedures in one or more formats (including customized, detail and summary reports).<\/li>\n<\/ul>\n<p>Another consideration is the source computer for the data. For some\u00a0binary data types, if the endianness of the source and destination computers is not the same, the hex representation of these fields will not be the same. IRI software addresses endian states\u00a0at the field and file level. Click <a href=\"http:\/\/www.iri.com\/solutions\/data-and-database-migration\/data-conversion\/endianness\" target=\"_blank\" rel=\"noopener\">here<\/a>\u00a0for more information, and contact <a href=\"mailto:nextform@iri.com\" target=\"_blank\" rel=\"noopener\">nextform@iri.com<\/a>\u00a0if you have any questions.<\/p>\n<hr \/>\n<p><sup id=\"fn1\">1. <a href=\"http:\/\/www.iri.com\/solutions\/data-and-database-migration\/file-conversion\/vision\" target=\"_blank\" rel=\"noopener\">Vision files<\/a> use an index format that was developed by AcuCOBOL, which was later acquired by Micro Focus. Micro Focus has other COBOL index formats that can be processed by the IRI programs NextForm and CoSort SortCL. The supported MF-ISAM formats include IDX3, IDX4, IDX8, ESDS, XESDS, and C-ISAM. IRI software also supports Micro Focus Variable Length (MFVL) long and short records, and the other data source formats listed <a href=\"http:\/\/www.iri.com\/products\/workbench\/data-sources\" target=\"_blank\" rel=\"noopener\">here<\/a>.<a title=\"Jump back to footnote 1 in the text.\" href=\"#ref1\">\u21a9<\/a><\/sup><\/p>\n<p><sup id=\"fn2\">2. If you need help creating a DDF from an XFD, or if do not have either an XFD or a copybook, contact IRI for help. Without an\u00a0XFD or copybook, you can use NextForm or SortCL to convert the Vision file &#8216;in the blind&#8217; to another file format, and then work to define fields manually with the\u00a0<a href=\"http:\/\/www.iri.com\/products\/workbench\/cosort-gui\/discover-convert-metadata\" target=\"_blank\" rel=\"noopener\">metadata discovery wizard<\/a> in the IRI Workbench. You will have to parse the fields manually to assign names, offsets, and data types to them, at which point you may (if successful) have a new file and metadata repository to work with. But as you can imagine, especially with binary fields, this is much more difficult than having an XFD or copybook to work with, and arriving at\u00a0accurate field definitions may\u00a0remain\u00a0impossible.<\/sup><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the course of legacy platform and\/or\u00a0application migration, COBOL users often need to convert\u00a0their binary and index files into a human-readable, ASCII-numeric target. One of these older formats is the ACUCOBOL Vision1 file, which we discussed previously\u00a0in this article. In order to convert and make use of those files, you need a program or utility<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\" title=\"Migrating COBOL Vision Files &#8211; The Metadata\">Read More<\/a><\/div>\n","protected":false},"author":10,"featured_media":11772,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[31,1,90],"tags":[554,557,555,568,443,558,559,561,563,71,566,564,565,556,546,553,489,562,567,560],"class_list":["post-6534","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-migration","category-data-transformation2","category-migration","tag-acucobol-vision","tag-ascii-numeric-target","tag-binary","tag-c-isam","tag-cobol","tag-convert-files","tag-data-type","tag-ddf","tag-dx3","tag-eclipse","tag-esds","tag-idx4","tag-idx8","tag-index","tag-iri-cosort","tag-iri-nextform","tag-metadata","tag-mf-isam-formats","tag-xesds","tag-xfd-file"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Migrating COBOL Vision Files - The Metadata - IRI<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Migrating COBOL Vision Files - The Metadata - IRI\" \/>\n<meta property=\"og:description\" content=\"In the course of legacy platform and\/or\u00a0application migration, COBOL users often need to convert\u00a0their binary and index files into a human-readable, ASCII-numeric target. One of these older formats is the ACUCOBOL Vision1 file, which we discussed previously\u00a0in this article. In order to convert and make use of those files, you need a program or utilityRead More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2014-12-12T19:56:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-11-06T18:54:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Susan Gegner\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Susan Gegner\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\"},\"author\":{\"name\":\"Susan Gegner\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/87be5da567628ab9396ca81170f36d63\"},\"headline\":\"Migrating COBOL Vision Files &#8211; The Metadata\",\"datePublished\":\"2014-12-12T19:56:54+00:00\",\"dateModified\":\"2017-11-06T18:54:10+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\"},\"wordCount\":1152,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg\",\"keywords\":[\"ACUCOBOL Vision\",\"ASCII-numeric target\",\"binary\",\"C-ISAM\",\"cobol\",\"convert files\",\"data type\",\"DDF\",\"DX3\",\"Eclipse\",\"ESDS\",\"IDX4\",\"IDX8\",\"index\",\"IRI CoSort\",\"IRI NextForm\",\"metadata\",\"MF-ISAM formats\",\"XESDS\",\"XFD file\"],\"articleSection\":[\"Data Migration\",\"Data Transformation\",\"Migration\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\",\"url\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\",\"name\":\"Migrating COBOL Vision Files - The Metadata - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg\",\"datePublished\":\"2014-12-12T19:56:54+00:00\",\"dateModified\":\"2017-11-06T18:54:10+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage\",\"url\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg\",\"contentUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg\",\"width\":200,\"height\":200},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/beta.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Migrating COBOL Vision Files &#8211; The Metadata\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#website\",\"url\":\"https:\/\/beta.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/beta.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/beta.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/87be5da567628ab9396ca81170f36d63\",\"name\":\"Susan Gegner\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2b1ca5592a65d44483351292cf1ae00a?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2b1ca5592a65d44483351292cf1ae00a?s=96&d=blank&r=g\",\"caption\":\"Susan Gegner\"},\"url\":\"https:\/\/beta.iri.com\/blog\/author\/susang\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Migrating COBOL Vision Files - The Metadata - IRI","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/","og_locale":"en_US","og_type":"article","og_title":"Migrating COBOL Vision Files - The Metadata - IRI","og_description":"In the course of legacy platform and\/or\u00a0application migration, COBOL users often need to convert\u00a0their binary and index files into a human-readable, ASCII-numeric target. One of these older formats is the ACUCOBOL Vision1 file, which we discussed previously\u00a0in this article. In order to convert and make use of those files, you need a program or utilityRead More","og_url":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/","og_site_name":"IRI","article_published_time":"2014-12-12T19:56:54+00:00","article_modified_time":"2017-11-06T18:54:10+00:00","og_image":[{"width":200,"height":200,"url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","type":"image\/jpeg"}],"author":"Susan Gegner","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Susan Gegner","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#article","isPartOf":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/"},"author":{"name":"Susan Gegner","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/87be5da567628ab9396ca81170f36d63"},"headline":"Migrating COBOL Vision Files &#8211; The Metadata","datePublished":"2014-12-12T19:56:54+00:00","dateModified":"2017-11-06T18:54:10+00:00","mainEntityOfPage":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/"},"wordCount":1152,"commentCount":0,"publisher":{"@id":"https:\/\/beta.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage"},"thumbnailUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","keywords":["ACUCOBOL Vision","ASCII-numeric target","binary","C-ISAM","cobol","convert files","data type","DDF","DX3","Eclipse","ESDS","IDX4","IDX8","index","IRI CoSort","IRI NextForm","metadata","MF-ISAM formats","XESDS","XFD file"],"articleSection":["Data Migration","Data Transformation","Migration"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/","url":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/","name":"Migrating COBOL Vision Files - The Metadata - IRI","isPartOf":{"@id":"https:\/\/beta.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage"},"thumbnailUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","datePublished":"2014-12-12T19:56:54+00:00","dateModified":"2017-11-06T18:54:10+00:00","breadcrumb":{"@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#primaryimage","url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","contentUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","width":200,"height":200},{"@type":"BreadcrumbList","@id":"https:\/\/beta.iri.com\/blog\/data-transformation2\/migrating-cobol-vision-files\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/beta.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Migrating COBOL Vision Files &#8211; The Metadata"}]},{"@type":"WebSite","@id":"https:\/\/beta.iri.com\/blog\/#website","url":"https:\/\/beta.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/beta.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/beta.iri.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/beta.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/beta.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/87be5da567628ab9396ca81170f36d63","name":"Susan Gegner","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2b1ca5592a65d44483351292cf1ae00a?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2b1ca5592a65d44483351292cf1ae00a?s=96&d=blank&r=g","caption":"Susan Gegner"},"url":"https:\/\/beta.iri.com\/blog\/author\/susang\/"}]}},"jetpack_featured_media_url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2014\/12\/acucobol.jpg","_links":{"self":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/6534"}],"collection":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=6534"}],"version-history":[{"count":37,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/6534\/revisions"}],"predecessor-version":[{"id":11773,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/6534\/revisions\/11773"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/media\/11772"}],"wp:attachment":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=6534"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=6534"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=6534"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}