support: Customer Portal
Focused on delivering choice, investment protection and flexibility to organizations with valuable COBOL assets
 

Veryant Knowledge Base
Home > All Categories > isCOBOL General > How do I migrate indexed files to a format that is supported by isCOBOL?
Question Title How do I migrate indexed files to a format that is supported by isCOBOL?
Question:

I have indexed files from my legacy application and want to migrate them to either isCOBOL JISAM or c-treeRTG. What are my options for doing this?

Answer:

There are two basic ways to migrate files to an isCOBOL ISAM file format such as isCOBOL JISAM or c-treeRTG. 
  1. Use a utility provided with the original ISAM file system to dump all of the records into a binary sequential file, and then use the corresponding utility from the target ISAM file system to load those records into an empty file. This method is known as "Unload/Load".

  2. Use the isCOBOL ISMIGRATE utility or run a COBOL program that reads records from the original ISAM file and writes them out to the target ISAM file.
First Method - Unload/Load

Here are the instructions for using the unload/load method to migrate for example a Vision file to isCOBOL JISAM:
  1. Run a program that creates an empty file in JISAM format. Just set iscobol.file.index=jisam and then OPEN OUTPUT and CLOSE the file.

  2. Unload the records from the Vision file into a binary sequential file

    vutil -unload

  3. Load the records from the binary sequential file into JISAM file

    java JUTIL -load
For example,
  1. Run a program to create the empty JISAM file:
           select jisamfile assign to "jisamfile"
                  organization indexed
                  record key jisamfile-key.
     
           fd jisamfile.
           01 jisamfile-rec.
            03 jisamfile-key pic 9(5).
            03 jisamfile-data pic x(100).
     
               set environment "file.index" to "jisam".
               open output jisamfile.
               close jisamfile.
    
  2. Run vutil -unload

    vutil32 -unload visionfile seqfile 

  3. Run JUTIL -load

    java JUTIL -load jisamfile seqfile 

    When you run vutil and JUTIL specify the ISAM file name without the extensions added by the file system (e.g. visionfile instead of visionfile.vix). 

    For further information see the documentation for vutil in the Acucorp docs and for JUTIL in the isCOBOL docs (User Guide : Utilities : JUTIL).
Second Method - ISMIGRATE

The ISMIGRATE utility can migrate files from and to any of the following file systems: isCOBOL JISAM, c-treeRTG, Acucorp's Vision and others.

The steps to run ISMIGRATE in background mode to migrate a Vision file to isCOBOL JISAM are as follows:
  1. Create an ismigrate.properties text file and copy/paste the following in it:

    iscobol.ismigrate_input_file_index=com.iscobol.io.ScanVision
    iscobol.ismigrate_output_file_index=jisam

  2. Run ISMIGRATE

    java -Discobol.conf=ismigrate.properties ISMIGRATE visionfile outputdirectory 

  3. If you prefer, you can run ISMIGRATE without parameters, so the wizard interface appears and you need to set the correct input file index type:
    "ACUCOBOL Vision (com.iscobol.io.ScanVision)" for Vision 
    "RM/COBOL (com.iscobol.io.ScanRMKF)" for RM files 
    "Micro Focus (com.iscobol.io.ScanMF)" from MF files 

  4. For further information on ISMIGRATE please review the documentation in the isCOBOL SDK User Guide.
Migrating to c-treeRTG

If you need to migrate to c-tree, the same instructions apply except for the following:

Unload/load method

  1. Set iscobol.file.index to ctreej

    iscobol.file.index=ctreej

    In the COBOL program that creates the empty file

    set environment "file.index" to "ctreej".

  2. Instead of JUTIL, use ctutil as follows:

    ctutil -load /datadirectory/ctreefile seqfile -b

    Note: Unless configured otherwise, ctreeRTG uses the directory where the server (ctreesql) was started as the data directory. Paths are relative to that directory. If you get errors running ctutil, then try specifying the c-tree filename using an absolute path, but still without the file extension.

ISMIGRATE method

  1. Set the iscobol.ismigrate_output_file_index to ctree in the ismigrate.properties file

    iscobol.ismigrate_output_file_index=ctreej

  2. If running ISMIGRATE with the wizard interface, choose "c-tree RTG - Java Interface (ctreej)" in the destination indexed file type.
Authored by: Veryant Support This question has been viewed 22340 times so far.
Click Here to View all the questions in isCOBOL General category.
File Attachments File Attachments
There are no attachment file(s) related to this question.
How helpful was this article to you?
User Comments User Comments Add Comment
There are no user comments for this question. Be the first to post a comment. Click Here
Related Questions Related Questions
  1. How do I compile for compatibility with older versions of Java?
  2. When can I get the "java.net.SocketException: Permission denied:connect" message? And how can it be avoided?
  3. How do I resolve "code too large for try statement" errors?
  4. How do I prevent hackers from decompiling Java class files to reverse engineer my COBOL application?
  5. How can I read an Excel spreadsheet from COBOL?
  6. Does SET ADDRESS OF X TO Y work?
  7. How would I create my own CBL_ALLOC_MEM and CBL_FREE_MEM routines?
  8. Do I need to worry about the compile warning "Note: MYPROG.java uses unchecked or unsafe operations?"
  9. What Micro Focus library routines are supported?
  10. What tools are available for automated functional (regression) testing of a COBOL application?
  11. Did you know you can create temporary files in memory?
  12. Where can I obtain a copy of the ANSI 2002 COBOL standard?
  13. Is there currently a way to debug COBOL and Java source together?
  14. How can I tell what changes were made in the isCOBOL latest update?
  15. How do I increase the maximum Java heap size when compiling?
  16. How do I turn on debug trace to produce a log file?
  17. Should I use JISAM or Veryant's c-treeRTG?
  18. How do I determine what properties are set?
  19. What is the best way to control Microsoft Word?
  20. How can I use the F10 key in my application without it changing the keyboard focus?
  21. How do I use conditional compilation?
  22. How do I specify properties or a properties file on the command line?
  23. Where can I find more information on A$ENCRYPT and A$DECRYPT?
  24. Does isCOBOL work with Flexus COBOL sp2?
  25. How do I change the icon in the upper left corner of the Window?
  26. What is the behavior difference of STOP THREAD?
  27. What are the defaults for the DATE-ENTRY control DISPLAY-FORMAT property and format styles?
  28. Sending SMTP mail
  29. How do I select 11x17 paper size using WIN$PRINTER?
  30. Where can I learn more about Classpath, the Java class loader, JDK tools and utilities?
  31. I still get the error : "Missing License: The license key is missing, invalid or has expired!" I can't figure out why
  32. What are the key technical advantages of isCOBOL?
  33. Why do I get the error message "Native call not found" and how do I fix the problem?
  34. Can Veryant recommend a good Web site to find 3rd party JavaBeans?
  35. Why do I get the error java.lang.NoClassDefFoundError: com/iscobol/rts_n/StopRunException?
  36. Is your runtime library backward compatible?
  37. Can I use directory paths in CALL names?
  38. How do I compile fixed (ANSI) format source that COPYs terminal format source or vice versa?
  39. What algorithm does isCOBOL use to load framework properties (runtime config variables)?
  40. What compile option should I use for ICOBOL compatibility?
  41. Can isCOBOL access a DLL or .so that is in a JAR file?
  42. How do I configure file locations with environment variables?
  43. How do I set iscobol.file.index.FileName with variable file name assignments?
  44. What is the easiest and/or best way to convert a legacy text-based user interface to a web front end?
  45. Does isCOBOL APS run on z/OS?
  46. Is isCOBOL backward compatible?
  47. How can I make my isCOBOL program to be called instead of a C routine when both have the same name?
  48. How do I specify which file status codes I want to use?
  49. Why do I get the error message “java.lang.UnsatisfiedLinkError: no ### in java.library.path?
  50. Does isCOBOL support C$REDIRECT?
  51. Is there any equivalent to COPY RESOURCE?
  52. What is the best way to profile an isCOBOL program?
  53. How do I write my own replacement for a C$ library routine?
  54. What should I use for USAGE HANDLE items instead of NULL?
  55. How can I avoid the "java.lang.OutOfMemoryError: Metaspace" error?
  56. Can the file system (iscobol.file.index) be set programmatically?
  57. Can you derive isCOBOL object classes from Java and vice versa?
  58. How can I monitor a jvm started on a remote computer box?
  59. I've heard there is a problem passing pointers to C functions. What is it?
  60. How do I suppress multiple reserved words with the -rw compiler option?
  61. Does isCOBOL support Crystal Reports or other Report Writers?
  62. How do I get more information when I get java.lang.reflect.InvocationTargetException?
  63. Why do I get the error message "java.lang.ArrayIndexOutOfBoundsException" ?
  64. Why do I get the error message "java.lang.NullPointerException" ?
  65. Can I call an RMCobol program passing parameters to it?
  66. What does the error "NO X11 DISPLAY" mean?
  67. How can I encode a URL String?
  68. What can I use to perform an email validation during entry-field accept?
  69. Working with sequential files on Pipes
  70. How do I resolve the error "java.lang.NoClassDefFoundError" or "java.lang.ClassNotFoundException"?
  71. Does isCOBOL support C$XML or other XML interfaces?
  72. Is there any way to direct the output from the "Print Screen" keyboard key directly to a printer?
  73. Why do I get the error "Could not load the main class" ?
  74. Did you know isCOBOL IDE allows you to easily understand how to invoke a method in a Java Class?
  75. Did you know you could set a background image from isCOBOL IDE's painter?
  76. How to replace a text within a string with a different length of text.
  77. How to write custom information inside isCOBOL log file
  78. How can I read data correctly from a line-sequential file that has a different encoding from the one used by isCOBOL?
  79. How to programmatically set the attributes for PDFs?
  80. Did you know you can encrypt the communication with the isCOBOL Server?
  81. GIT Server (Linux) - Install and Configuration
  82. Activating and Check the isCOBOL License
  83. Two options to get the working directory
  84. How to search by key with case insensitive on ISAM files
  85. How can I read a data written with a different encoding?
  86. How do I point my installed isCOBOL to a different Java location?
  87. How can I generate QR codes from COBOL?
  88. May I create my own type definitions and reuse them?
  89. How can I use the Call/Cancel custom HOOK program to get the start and end time of every CALLed program?
  90. How can I tell if my application is running in the WebClient environment or another environment?
  91. Can I define one or more data items based on the definition of another one?
  92. Guide to Updating the isCOBOL Software Version in a Standalone, Fat Client or Thin Client Production Environment
  93. How can you wait for several threads to finish?
  94. Send SMS from isCOBOL using Twilio
  95. Get the week number of the year for a date
  96. How to set switches with isCOBOL
  97. How to read QR codes
Article Information Additional Information
Article Number: 8
Created: 2009-08-28 12:51 PM
Rating: 2 Stars
 
Article Options Article Options
Print Question Print this Question
Email Question Email Question to Friend
Export to Adobe PDF Export to PDF File
Export to MS Word Export to MS Word
Bookmark Article
Subscribe to Article Subscribe to Article
 
Search Knowledge Base Search Knowledge Base



 
 

© Veryant - All Rights Reserved
Veryant and isCOBOL are trademarks or registered marks of Veryant in the United States and other countries. All other marks are the property of their respective owners.