+ All Categories
Home > Documents > 5D – Advanced Search for Plex RPG Using SQL

5D – Advanced Search for Plex RPG Using SQL

Date post: 13-Jan-2016
Category:
Upload: pavel
View: 48 times
Download: 0 times
Share this document with a friend
Description:
5D – Advanced Search for Plex RPG Using SQL. Mark Murphy STAR Base Consulting, Inc. Bio. Mark Murphy STAR BASE Consulting, Inc. Cincinnati, OH Started with AS/400 and 2E in 1989 Using Plex since 1997 - PowerPoint PPT Presentation
Popular Tags:
26
3rd Annual Plex/2E Worldwide Users Conference 5D – Advanced Search for Plex RPG Using SQL Mark Murphy STAR Base Consulting, Inc.
Transcript
Page 1: 5D – Advanced Search for Plex RPG Using SQL

3rd Annual Plex/2E Worldwide Users

Conference

5D – Advanced Search for Plex RPG Using SQL

Mark Murphy

STAR Base Consulting, Inc.

Page 2: 5D – Advanced Search for Plex RPG Using SQL

2 8/20/2007 Advanced Search for Plex RPG using SQL

Bio

> Mark Murphy

> STAR BASE Consulting, Inc.

> Cincinnati, OH

> Started with AS/400 and 2E in 1989

> Using Plex since 1997

> Experience in Warehousing, Distribution, Retail, Manufacturing and Business Services markets

Page 3: 5D – Advanced Search for Plex RPG Using SQL

3 8/20/2007 Advanced Search for Plex RPG using SQL

Overview

Scenario: You have been asked to build a Customer Inquiry function that will sort customers by Customer ID, or Name. In addition it needs to be able to filter the customer records based on a portion of the Name, the State, or Zip Code. The environment for this inquiry function is iSeries.

The Problem: While this would be a good task for a custom SQL query, the Plex generators will not embed SQL within RPG.

The Approach: Using a little source code and language SQLRPG we can build a function that executes a custom SQL Select as part of a Block Fetch.

Page 4: 5D – Advanced Search for Plex RPG Using SQL

4 8/20/2007 Advanced Search for Plex RPG using SQL

Components

> There are just a few components needed An SqlBlockFetch function

Some User Source to embed the SQL in RPG

A function to build the SQL statement

A few messages to contain the static portion of the SQL

Page 5: 5D – Advanced Search for Plex RPG Using SQL

5 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch

Page 6: 5D – Advanced Search for Plex RPG Using SQL

6 8/20/2007 Advanced Search for Plex RPG using SQL

User Source

> There are 7 necessary User Sources Declare Variables

Declare SQL Statement

Declare Cursor

Prepare Statement

Open Cursor

Close Cursor

Fetch

Page 7: 5D – Advanced Search for Plex RPG Using SQL

7 8/20/2007 Advanced Search for Plex RPG using SQL

User Source – DeclareVariables

Page 8: 5D – Advanced Search for Plex RPG Using SQL

8 8/20/2007 Advanced Search for Plex RPG using SQL

User Source – DeclareSqlStatement

Page 9: 5D – Advanced Search for Plex RPG Using SQL

9 8/20/2007 Advanced Search for Plex RPG using SQL

User Source – Declare Cursor

Page 10: 5D – Advanced Search for Plex RPG Using SQL

10 8/20/2007 Advanced Search for Plex RPG using SQL

User Source - PrepareStatement

Page 11: 5D – Advanced Search for Plex RPG Using SQL

11 8/20/2007 Advanced Search for Plex RPG using SQL

User Source - OpenCursor

Page 12: 5D – Advanced Search for Plex RPG Using SQL

12 8/20/2007 Advanced Search for Plex RPG using SQL

User Source - CloseCursor

Page 13: 5D – Advanced Search for Plex RPG Using SQL

13 8/20/2007 Advanced Search for Plex RPG using SQL

User Source - Fetch

Page 14: 5D – Advanced Search for Plex RPG Using SQL

14 8/20/2007 Advanced Search for Plex RPG using SQL

SQL Block Fetch

> Data Access gives us the processing shell

> Only three places to add code Initialization

Position

Fetch

Page 15: 5D – Advanced Search for Plex RPG Using SQL

15 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch - Initialize

Page 16: 5D – Advanced Search for Plex RPG Using SQL

16 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch - Position

Page 17: 5D – Advanced Search for Plex RPG Using SQL

17 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch - Position

Page 18: 5D – Advanced Search for Plex RPG Using SQL

18 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch - Fetch

Page 19: 5D – Advanced Search for Plex RPG Using SQL

19 8/20/2007 Advanced Search for Plex RPG using SQL

SQLBlockFetch - Fetch

Page 20: 5D – Advanced Search for Plex RPG Using SQL

20 8/20/2007 Advanced Search for Plex RPG using SQL

Tying It All Together

> Two things left Replace BlockFetch with SQLBlockFetch in grid function

Add a function to build your SQL Statement

Page 21: 5D – Advanced Search for Plex RPG Using SQL

21 8/20/2007 Advanced Search for Plex RPG using SQL

Function Replacement

Page 22: 5D – Advanced Search for Plex RPG Using SQL

22 8/20/2007 Advanced Search for Plex RPG using SQL

The Action Diagram

Page 23: 5D – Advanced Search for Plex RPG Using SQL

23 8/20/2007 Advanced Search for Plex RPG using SQL

The Action Diagram – Part 2

Page 24: 5D – Advanced Search for Plex RPG Using SQL

24 8/20/2007 Advanced Search for Plex RPG using SQL

One Way to build the SQL Statement

Page 25: 5D – Advanced Search for Plex RPG Using SQL

25 8/20/2007 Advanced Search for Plex RPG using SQL

Resources

E-mail: [email protected]

Phone: (513) 245-0400

The Edge: edgeusergroup.pugmarks.net

Plex Wiki: wiki.plexinfo.net

2E Wiki: wiki.2einfo.net

Page 26: 5D – Advanced Search for Plex RPG Using SQL

26 8/20/2007 Advanced Search for Plex RPG using SQL

Synopsis

SQL support for iSeries development in Plex, and for that matter 2E is limited at best, and designing reports that perform acceptably can be a daunting task when the requirements are complex.  This framework provides a way to easily develop high performance reports for your iSeries without the need for creating a lot of extra access paths to support your reports.


Recommended