1 / 37

IBC233

IBC233. Calling Programs Updated Winter 2009. Agenda. Calling Programs Lab 11. OPM (static) Call. CALL Parameters: PGM PARM. How it works. When the call statement is executed: Your authority to the program object is checked Do you have access to all the resources required?

faxon
Download Presentation

IBC233

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IBC233 Calling Programs Updated Winter 2009

  2. Agenda • Calling Programs • Lab 11

  3. OPM (static) Call • CALL • Parameters: PGM PARM

  4. How it works • When the call statement is executed: Your authority to the program object is checked Do you have access to all the resources required? Gather resources Program opened

  5. Passing Parameters in CL (OPM) Call program1 (‘test’ ‘new’) then program 1must have a pgm statement that looks like this: pgm (&parm1 &parm2) dcl &parm1 *char 10 dcl &parm2 *char 5

  6. Passing Parameters in CL (OPM) pgm dcl &var1 *char 6 value ‘IBC233’ call pgm2 &var1 call pgm(pgm3) parm(&var1) endpgm Pgm2 and pgm3 must have a pgm statement similar to this: pgm parm(&parm1)

  7. Passing Parameters CL to RPG (OPM) pgm call pgm2 (‘RPG’) endpgm RPG program must have the fixed format C spec code: F1 Operation F2 Result *entry plist parm varName

  8. ILE (dynamic) Call • CALLPRC Parameters: PRC PARM RTNVAL

  9. How it works • When the application is created, authority to modules is checked and entire application is bound • When application is called all resources are allocated entire application is opened

  10. Passing Parameters in CL (ILE) Call appl1 (‘test’ ‘new’) then the first *module in the application must must have a pgm statement like this: pgm (&parm1 &parm2) dcl &parm1 *char 10 dcl &parm2 *char 5

  11. Passing Parameters in CL (ILE) pgm dcl &var1 *char 6 value ‘IBC233’ call pgm2 &var1 callprc (mod3) parm(&var1) endpgm mod2 and mod3 must have a pgm statement similar to this: pgm &parm1

  12. Passing Parameters CL to RPG (ILE) pgm callprc pgm2 (‘RPG’) endpgm RPG procedure must have the fixed format C spec code: F1 Operation F2 Result *entry plist parm varName

  13. Advantages of OPM • Don’t have to have all parts of the application done to test. • Parts of the application can be changed without affecting the entire application

  14. Disadvantages of OPM • Integrated Language not supported

  15. Advantages of ILE • Integrated Language Support • Best language for the task • You don’t have to pass all parameters to the program – previous values will be used

  16. Disadvantages of ILE • All modules must be in place to test application • Version Control

  17. What you need to know for Lab 11

  18. SQL and RPG • When defining a table, SQL doesn’t follow the rules that the record format name must be different than the table name. • RPG needs the two to be different

  19. Solve the SQL problem – F Spec change Filename: This is where you type the pf or table name FT (File Type): I O U C FD (File Designation): P R S T F (we use blank or F) FF (File Format): F E Record Length: blank or a number RAT (Record Address Type): A D F K P D Z ( we use blank or K) DEVICE: Printer, Disk, WorkStn

  20. Solve the SQL problem – F Spec change KEYWORDS: RENAME(fileName:newRecName)

  21. Defining a Spooled File Filename: qprint or qsysprt FT (File Type): O FD (File Designation): blank FF (File Format): F Record Length: 132 (width of the FileName) RAT (Record Address Type): blank DEVICE: Printer KEYWORDS: OFLIND(*INOF)

  22. Output Specs • Defines the report layout. • Type E is the name of the group of record formats • EXCEPT prints a group of record formats eg. EXCEPT totals prints all of the lines belonging to the group totals

  23. Logic for an RPG program that creates a report for all of the records in a file

  24. Report Logic Initialize Variables

  25. Report Logic Initialize Variables Print the report heading

  26. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF

  27. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF

  28. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line

  29. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals

  30. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals print the detail line

  31. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals print the detail line read the next record

  32. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals print the detail line read the next record End of loop

  33. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals print the detail line read the next record End of loop Print the totals

  34. Report Logic Initialize Variables Print the report heading Read the first record and check for EOF Loop until EOF format the detail line update the totals print the detail line read the next record End of loop Print the totals End of program logic

  35. Lab 11 – CLLE new commands

  36. OVRDBF • Allows you to use a different file instead of the one that is defined by the RPG program

  37. OVRPRTF • Changes attributes about the spool file.

More Related