Your SlideShare is downloading. ×
LabIMSEXP_QMF - IMS UG Omaha 10-2013
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

LabIMSEXP_QMF - IMS UG Omaha 10-2013


Published on

Published in: Technology

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. Using the IMS Explorer Lab 1
  • 2. This hands-on lab provides the opportunity to access IMS databases from a distributed runtime environment provided by IBM’s IMS Enterprise Suite Explorer for Development. This lab focuses on the use of the IMS Catalog and IMS 12. The IMS Enterprise Suite Explorer for Development The IMS Enterprise Suite Explorer for Development is an Eclipsebased integrated development environment (IDE) for IMS application developers and database architects • It can also be integrated with other IBM Eclipsed based tools (RAD, RDz, Optim Data Studio) • Provides end-to-end application development cycle Graphical editors are used for development and visualization of • • Program Specification Blocks (PSBs) Database Descriptions (DBDs) See database rela- Generate Edit PSB IMS Universal JDBC driver type-4 connectivity provides: • • Relational view of IMS data Graphical assistance to build SQL statements 2
  • 3. DRDA IMS Application Server IMS Universal Driver DRDA DRDA Application TCP/IP DLI IMS Connect TCPIP DRDA DDM SCI ODBM IMS calls DRA Requestor z/OS New support which incorporates the DLIModel Utility and the IMS 12 Catalog functionality: • Provides current existing functionalities from IMS DLIModel Utility • Provides migration support of existing DLIModel Utility projects • • Provides Metadata source for update to IMS Catalog Provides Metadata access from the IMS Catalog Distribution of the IMS Explorer is through a download capability • IMS Enterprise Suite V2.2.0.1 at IMS Connect and Open Database Manager • Open Database Manager (ODBM) is a Common Service Layer component • • • • Receives database connection requests from IMS Connect Translates incoming database requests from the DDM protocol into DLI calls expected by IMS Translates responses to the client into the DDM protocol Manages connections to IMS DB • Implements the DRA interface 3
  • 4. IMS Enterprise Suite Explorer for Development In this part of the lab, the IMS Explorer is used to create the IMS Java Database View metadata by parsing the IMS PART Database PSB and DBD sources. 1. Start IMS Explorer Click on Start > All Programs > IMS Enterprise Suite for Development > IMS Enterprise Suite for Development You may be prompted to select a workspace. A workspace is a directory that stores all of the files for the projects. You can select your own directory, e.g., C:shareexplorerlabworkspace or any name you choose. When Explorer startup is complete, you may be shown the Welcome Screen. If so, close the Welcome page (x the tab at the top of the screen on the left). 4
  • 5. 2. Click on File > New > IMS Explorer Project. (If you don’t see “IMS Explorer Project” as a choice then click on File > New > Other and open the IMS folder and select IMS Explorer Project) 5
  • 6. 3. Define a Project Name, e.g., PnnSAM09 where nn is your team number. 6
  • 7. Click Next. On the Select an Import Source window you can: (a) Use a Local file system if you have previously downloaded the source PSB and DBD files to your workstation, (b) Select a z/OS system and connect directly to where your DBDs/PSBs are stored, or (c) If your IMS is at Version 12 with the Catalog function enabled, you can obtain the Metadata directly from the IMS Catalog. For this lab (Part 1) we will use a connection to the z/OS system and download source from z/OS to create the Metadata. 4. Select z/OS system to obtain the source. 7
  • 8. Click NEXT. Select the Add PSB button. You will be asked to provide the z/OS connection information. 5. On the Connect to z/OS System and Select Resources to Import screen, click on the No z/OS connection to open the Connections box. 8
  • 9. Select New. In the Name field enter PnnSAM09 where nn is your team number In the Host name field enter Keep the Port Number as 21 (FTP port) and Transfer mode as Passive. 9
  • 10. Click Apply and then OK. You will return to the Connect to z/OS System and Select Resources to Import box which now has your connection name. To establish a connection, click the orange box (choose the connection you created) to open the System z –FTP New Credentials box. 10
  • 11. In the userid field enter IMPOTxx where xx is your team number. In the password field enter IBM08POT . Click OK to establish the connection. 6. You are now ready to retrieve your IMS resources. Change the High-Level qualifier field to IMS.V12R1.SDFSISRC and hit Enter on your PC keyboard. 11
  • 12. Scroll down the list and select PNNSAM09 PSB Click Finish to activate the parsing of the PSB and DBD. 12
  • 13. Note you will be prompted to add the DBD DI21PART. Select the ADD DBD button and then scroll and then select DI21PART Click FINISH. 13
  • 14. After parsing completes, your project is created. Click on Finish. Now it is time to add the fields to the segments that were not defined in the DBD but are available in a Cobol Copybook. 14
  • 15. 7. In the Project Explorer box, click the + to open your PnnSAM09 project and navigate to the DBD folder. To open the basic view double click on DI21PART. 15
  • 16. You will see a graphical representation of the database. The Manage Fields function is used to add more fields to the segment since only the key fields are defined. Right click on PARTROOT and select Import COBOL or PL/I Structures. The Import Data Structures box opens. You will need to import the COBOL structures. The copybook was previously downloaded to your workstation. Select the Browse button and look for the following directory C:shareboston2013labsource. Select C00SAM09 and click Open. 16
  • 17. Use the Drop down list to specify the structure for the PARTROOT segment. 17
  • 18. Select Add to Import List button. 18
  • 19. Click Finish to complete the import process. The PARTROOT segment (table) will now have all the fields (columns). 19
  • 20. Repeat the above process for the other segments. This completes the field definitions. 20
  • 21. Use Ctrl-S to save the changes or just use the x tab to close the view. In the Project Explorer box, Follow the path IMS Universal Drivers Metadata > Pnnsam09 and double-click to view the updates to the metadata. This completes the building of the metadata. 8. You are now ready to use the Data Store Explorer (DSE) to access the IMS PART database using the metadata you just created. To connect to an IMS database use the New Connection wizard to create a connection profile, so that you can connect to an IMS database and browse existing data objects. 21
  • 22. If you already have the Data Source Explorer box open at the bottom of your IMS Explorer window then you can skip the following instructions. If you do not have the Data Source Explorer box then click on the Window tab at the top of the IMS Explorer tool and follow the path: Show View > Other. In the Show View > Other box, click + Data Management, select Data Source Explorer and click OK. 22
  • 23. In the Data Source Explorer, right-click the Database Connections folder, and click New. The New Connections box opens up. Select IMS as the database manager and the driver name IMS Universal JDBC Driver as the JDBC driver. 23
  • 24. Under Properties General tab In the Connection Name field enter IMPOTxx where xx is your team number In the HOST field enter In the Port number field enter 7001 In the userid field enter IMPOTxx where xx is your team number In the password field enter value provided by lab instructor In the Metadata source drop down list select Local IMS Explorer project From the Project drop down list, select your project, e.g., PnnSAM09 24
  • 25. Under Properties select Optional tab 25
  • 26. In the Data store: field enter IMSD Click Finish. The connection is displayed in the Data Source Explorer. 26
  • 27. The preceding picture shows that the connection is active. If you need to disconnect or re Connect, all you have to do is right click on the connection name and choose your action. 27
  • 28. To test the connection in the Data Source Explorer section under Database Connections, right click on the connection name you defined, e.g., IMPOTxx. Expand the path until you can select PARTROOT. Right click and select Data then click on Return All Rows to return data. The results will be available in the box on the right under SQL Results. 28
  • 29. You can now also issue additional queries. In between queries, you might need to disconnect/reconnect the connections. Try looking at other tables/columns. 9. You can also try creating SQL calls using the SQL Query Builder. In the Project Explorer box, select your project e.g., PnnSAM09. Right click New > Other 29
  • 30. In the Select a Wizard box expand the Data folder and select SQL or XQuery Script then click Next. You will see the New SQL or Xquery Script box change Name to SelectScript1. Choose your Project PnnSAM09 from the dropdown list. Under the radio button SQL Query Builder note that you can choose your Statement type. The default is Select. 30
  • 31. When you have changed the values, click Finish. You will need to select a connection profile for the database you want to access. Choose the one you created earlier, e.g., IMPOTxx. Click Finish. The SQL Query Builder Box opens upl In the Add a table window right click and select Add Table. 31
  • 32. Use the drop down list to specify segments (tables) 32
  • 33. You will be able to choose which tables to add, and check which columns to include. Note how the script is built. When you are done, position your cursor to the upper box, right click on the Select statement that was built and choose the Run SQL option. 33
  • 34. The results can be viewed in the bottom box. Note that there are two tabs. One for Status and one for Results. 34
  • 35. Save the SelectScript1.sql script you created by issuing Ctrl-s . 35
  • 36. You can also review the DL/I calls that were generated to support the SQL request. Keeping the SelectScript1.sql window open, go to the top of the IMS Explorer window, click on IMS Explorer and then on Show SQL to DLI call translation tabs. The SQL to DL/I Call translation window opens up. Fill in the Connection profile with the PnnSAM09 value you have been using and a PSB value of DFSSAM09. Cut and paste the SQL statement from the SelectScript1.sql window and hit the Translate tab. 36
  • 37. Take the time now to continue using the same wizard to INSERT a new PARTROOT e.g., Use 02PnnSAM09 (where nn is your team number) for the partkey value. Run the SQL statement when you are done. Check the SQL Results at the 37
  • 38. bottom tab to make sure it ran to successful completion. You can also try an UPDATE. Note for an UPDATE you will need to use the Set and Where tabs in the box that allows you to choose your tables. For example you can specify a different value for the REJECT_CODE and qualify the call using the partkey PART_NO_EDIT = 02PnnSAM09. 38
  • 39. Check the SQL Results tab at the bottom of the window. Finally, try the DELETE and remove the 02PnnSAM09 part that you previously created. 39
  • 40. 40
  • 41. This completes the lab. 41
  • 42. Using the IMS Universal Drivers and QMF to Access Your IMS Data Hands-on Lab 42
  • 43. Overview QMF for Workstation is an Eclipse-based, rich client desktop Java application, that uses JDBC to connect to data sources to provide querying, reporting and Business Intelligence (BI) solution development and execution capabilities. This hands-on lab covers how to use QMF for Workstation to access IMS DB using the IMS Universal Driver. QMF can be used – – – Allow users to graphically construct ad-hoc IMS queries Create reports and dashboards that draw directly from IMS data Roll out web-based graphical content that blends IMS data with relational and multi-dimensional data sources The lab exercises cover the following topics: 1. Installing the IMS driver 2. Creating a personal repository. 3. Working with queries. 4. Developing reports using QMF forms. 5. Defining virtual data sources. Exercise 1: Configuring the IMS JDBC Driver 43
  • 44. QMF for Workstation uses JDBC drivers to connect to data sources. The product does not include the actual JDBC driver files. Administrators must define the location of the JDBC driver files. How to get the IMS Universal Drivers The IMS Universal Drivers are shipped with IMS. The IMS distribution libraries (DLIBs) contain the master copy of elements in IMS and can be used to restore SYSMODs in the target library or to rebuild a target environment. These data sets are maintained by SMP/E. The IMS.ADFSJHFS: ADFSJHFS contains the type-2 and type-4 Universal driver Java class libraries used for IMS DB access through the JDBC and DLI for Java interfaces. The TLIB data sets are the IMS SMP/E target libraries (SYSLIBs), and are the libraries that are used to run and use IMS. The following data sets that reside in a UNIX System Services (USS) file system are also maintained by the SMP/E APPLY processing: SDFSJCPS SDFSJTOL SDFSIC4J SDFSJCIC SDFSJCPI SDFSJHFS SDFSJRAR SDFSJSAM The IMS HFS data sets contain SDFSJCIC: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/classic/cics/IBM/ SDFSJHFS: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/IBM/ 44
  • 45. SDFSJSAM: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/ivp/IBM/ SDFSJRAR: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/IBM/ SDFSJCPI: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/classic/IBM/ SDFSJTOL: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/classic/dlimodel/IBM/ SDFSJCPS: Maps to PathPrefix/usr/lpp/ims/imsnn/imsjava/classic/classic/ivp/IBM/ SDFSIC4J: Maps to PathPrefix/usr/lpp/ims/imsnn/ico/IBM/ The IMS Universal JDBC driver (imsudb.jar) is used to make SQL calls with the JDBC API and can be download as a binary file from HFS path: PathPrefix/usr/lpp/ims/imsnn/imsjava/IBM/ where nn is the IMS version you have installed.. For this lab the imsudb.jar has already been downloaded and can be found at C:shareboston2013lab Creating the IMS Universal Driver JDBC driver configuration file Launch QMF for Workstation via the shortcut on the desktop or via the Windows Start Menu. You’ll find the application link under ‘DB2 Query Management Facility’. Open the Administrator perspective if you have not already done so. To open the Administrative perspective go to the menu pane and select: Window > Open perspective > Other > Administrator. Select Preferences from the View menu to open the Preferences window. Select JDBC Libraries. The JDBC Libraries page opens. QMF supplies pre-populated libraries named for specific databases including IMS. To specify where to find the associated JAR files: a. Expand the library that contains the IMS JDBC driver class name to which you 45
  • 46. want to add JAR file location information. b. Select Add JARS. The Add JARS to [libraryname] window opens. c. Search for and select the IMS JDBC driver file that you want to add. d. Select Open. The location of the IMS JDBC driver JAR file is saved in the JDBC library that you have selected. Select OK. This completes the IMS JDBC Driver installation. Exercise 2: Create a personal repository 46
  • 47. A personal repository is a set of database tables that stores QMF for Workstation objects, such as queries and dashboards, as well as database connection information, QMF configuration information, and application data. To set up a personal repository, follow these steps: 1. Select File -> New -> other and then expand Repository. Choose Personal Repository. Select NEXT and enter a name. For example IMSQMFLABxx where xx is your team number. 47
  • 48. Click FINISH. The IMSQMFLABxx Personal Repository connection information needs to be updated to connect to a repository: Expand IMSQMFLABxx. Right click Relational Data Source - > NEW - > Relational Data Source 48
  • 49. In the Data Source Name field enter IMSBzseverosnn where nn is your team number. Set the connection type button to JDBC. In the JDBC Driver drop down list select IMS Universal JDBC Driver. Enter the following for the JDBC URL to access the IMS 12 Catalog metadata: jdbc:ims://;data storeName=IMSB; Select NEXT. (DFSCP000 is the PSB for the IMS catalog on an IMS 12 environment). 49
  • 50. In the userid field enter IMPOTxx where xx is your team number. In the password field enter ibm08pot. Click OK. This should allow you access to the IMS 12 system with a catalog. Select PSB table and right click then use Open with Table Viewer to get the following output. 50
  • 51. Create another Data Source connection, this time for access to PSB DFSIVP37. Right click Relational Data Source NEW -> Relational Data Source In the Data Source Name field enter IMSBDFSIVP37 Set the connection type button to JDBC. In the JDBC Driver drop done list select IMS Universal JDBC Driver. Enter the following for the JDBC URL to access the DFSIVP37 local file metadata: jdbc:ims:// ew:dbViewLocation=C:/share/IMS Universal Drivers Metadata;fetchSize=0; Select NEXT. (Note that in this case, we are using the metadata that is kep in a local file). The IMS system we are going to is an IMS 11 system for this test. 51
  • 52. In the userid field enter IMPOTxx where xx is your team number In the password field enter ibm08pot. Click OK. Create another IMSQMFLABxx Personal Repository connection. The URL for this connection also uses a local metadata file: Right click Relational Data Source NEW -> Relational Data Source . In the Data Source Name field enter IMSClocalmetadata. Set the connection type button to JDBC. In the JDBC Driver drop down list select IMS Universal JDBC Driver. In the JDBC URL drop down list enter the following: jdbc:ims:// eView:dbViewLocation=C:/share/IMS Universal Drivers Metadata;fetchSize=0; 52
  • 53. Select OK to close the template. Select NEXT. In the userid field enter IMPOTxx where xx is your team number In the password field enter ibm08pot. 53
  • 54. Select OK to close the template. Select NEXT to get following screen: 54
  • 55. Select FINISH. Select IMSClocalmetadata and select OK for the following screen: 55
  • 56. In the Repository Explorer you will see the tables in the IMS PARTS DB. This completes access setup to IMS. 56
  • 57. Exercise 3 – Working with queries This section introduces you to the query development facilities in QMF for Workstation. There are a number of ways to create a new query, including: • Browsing through your database structure and double-clicking on a given table. • Using the File->New->Query menu item or ‘New Query’ toolbar button. • Using the QMF command bar to directly display a given table with a default query. • Using the ‘Draw Query’ toolbar button. • Clicking on tables that have been arranged in an arbitrary folder structure in your QMF workspace. In our case, we will start by using the QMF command bar. 1. Click on the ‘Show Command Bar’ toolbar button (fourth from the left). The QMF command bar visibility is toggled. Click on the button such that the command bar is visible. 57
  • 58. Alternatively, you can click on View -> Command Bar The command bar accepts QMF procedure commands. You only need enough letters from the command’s name to allow QMF for Workstation to distinguish it from other procedure commands. We will use the DISPLAY command but only need enter ‘di’ since DISPLAY is the only command that starts with ‘di’. 2. Enter di q.backordr into the Run command field and on the right in the Data Source field, choose the one that you last created which has the table, e.g., IMSClocalmetadata. Press enter. QMF for Workstation creates a default 58
  • 59. query and runs it. 2. Review the SQL that was generated by clicking on the SQL tab toward the bottom. 3. Try another query. Enter di q.A1111111 into the Run command field and in the Data source: drop down box select IMSBDFSIVP37 then press enter. QMF for Workstation creates a default query and runs it. 59
  • 60. 4. Sort the Results. Right click on the IO LAST NAME column and select either Sort Ascending or Sort Descending to view the results in a different order. 60
  • 61. 5. Close the query by clicking on the X in the query tab. Transferring Data to Microsoft Excel (this can be done back at your shop but cannot be done in this lab because Microsoft Excel is not installed) QMF for Workstation is capable of directly transferring query results to Microsoft Excel. When running QMF for Workstation on a desktop with Excel installed, data can be immediately exported to Excel by pressing Ctrl+B or selecting the Results->Display Excel Sheet menu item. 61
  • 62. A screen capture of the outcome of exporting a query result set to Microsoft Excel using QMF for Workstation’s ‘Display Excel Sheet’ function. The export is performed ‘live’ without the need to create and open an external file. 62
  • 63. Exercise 4 – Developing Reports using QMF Forms In this exercise, we will apply a QMF form to the result set produced from the query that was created in the prior exercise. 1. Click on the backorder tab to display the result set that you created earlier. 2. Click on the ‘Display a report’ toolbar button, or alternatively, click on Results -> Display Report tabs. 3. The Display Report wizard allows users to either create a new report or apply an existing report to a given query result set. Leave ‘Create a new report’ selected and click on the Next button. 4. Select Create a classic report from the report type combo box. Note the 63
  • 64. remaining options in the dialog – one can create a default report format or derive the report from the format already contained in the query result set. Ensure that ‘Create from query’ and the ‘use available data is selected then click on the finish button. 5. The report is created and executed. Note that the report format matches the layout of the query. 64
  • 65. 65
  • 66. Exercise 5 – Defining virtual data sources to simplify database schemas for non-technical users Virtual data sources allow QMF administrators to define simplified data schemas that make it easier for end users to work with your enterprise data. Traditionally, QMF users have been required to understand the explicit data schemas in your data sources since they work directly with the tables and views when building queries and forms. With virtual data sources, you can now define a level of simplification between the underlying data sources and the end users. This has two distinct advantages: • Users are shielded from the complexities of the underlying data sources and only see relevant columns that pertain to their job function. • A metadata layer allows changes to the underlying data schema without necessarily altering the virtual schema used by queries, reports and dashboards. This can be used to isolate BI content from database changes. 1. Select the Administrator Perspective. This displays the Repository Explorer. 2. Expand IMSQMFLABxx and right-click on Virtual Data Sources. Select New->Virtual Data Source 66
  • 67. 3. Enter IMS Data for the data source name and click on the Finish button. 4. Expand the new IMS Data virtual data source and note that it appears much like any other data source in the repository explorer, complete with a tables tree item. 67
  • 68. Virtual data source tables can be added using two key approaches: • Adding tables from real data sources into the virtual data sources. Once added, the table name and columns can be renamed and specific columns can be removed from the virtual data source copy. • Adding saved QMF queries into the virtual data source’s table collection. The query will appear as a regular table. As above, the table name and columns can be renamed and specific query columns can be removed. 5. We will copy a table from an existing data source. Locate the DFSIVP37 A1111111 table in the IMSBDFSIVP37 Data Source, listed under IMSQMFLABxx->Relational Data Sources tree item. When located, select the table and hold left mouse key to drag to the table folder in Virtual Data Sources. Repeat to copy table from IMSCLocalmetadata data source. 68
  • 69. 6. Right-click on the A1111111 table and select rename. Type IMSPerson for the table name. 7. Expand the table to view the columns and right-click on the io-lastname col69
  • 70. umn. Rename it to IMSLastName. 8. Right-click on the io-extension column and select delete to remove it from the virtual table. Any number of columns can be removed from a virtual data source table. 9. Double-click on the tabs for each of the tables to view the schemas. 70
  • 71. This concludes the hands on lab. Thank you for taking the time to complete this set of exercises. 71