You can do this manually as shown in this example:
CREATE TABLE ROB/ITEMMSTR (ITEMKEY CHAR (10 ) NOT NULL, ITEMACTV
CHAR (1 ) NOT NULL) RCDFMT ITEMFRF
Table ITEMMSTR created in ROB.
CREATE INDEX rob/ITEMDDLI
ON rob/ITEMMSTR (ITEMKEY)
WHERE ITEMACTV = 'Y'
RCDFMT ITEMFRF
Index ITEMDDLI created in ROB on table ITEMMSTR in ROB.
The only thing I changed on your CREATE INDEX is in lower case, the
schema.
So, now I went into "IBM Navigator for i" which is the web interface
available when I go to
http://gdisys:2001
Database, Databases, gdisys, Schemas, ROB, Indexes, pick the index and go
through the generate sql option.
Isn't this what you wanted?
CREATE INDEX ROB.ITEMDDLI
ON ROB.ITEMMSTR
( ITEMKEY )
WHERE ITEMACTV = 'Y'
RCDFMT ITEMFRF ADD ALL COLUMNS ;
I will try this again.
I deleted the index, using the web interface. Then I used this DDS to
generate the logical file
R ITEMFRF PFILE(ITEMMSTR)
K ITEMKEY
S ITEMACTV CMP(EQ 'Y')
Then I went back into "IBM Navigator for i". First difference is that it
appears as a view and not an index.
I do not have these new options. However I am still on TR6.
I reread the website you stated. It didn't ignore the select/omit. It's
plainly in there in the WHERE clause. It ignored the record format.
DSPMSGD RANGE(SQL1507) MSGF(QSQLMSG)
Maybe that was because the example used had a different format on the LF
than the PF? I don't know. Since I am still at TR6 I couldn't go
further.
So I changed my DDS to this:
R ITEMFRL PFILE(ITEMMSTR)
ITEMKEY
ITEMACTV
K ITEMKEY
S ITEMACTV CMP(EQ 'Y')
This uses a different record format than the physical.
Since you are at TR7, try the first, then the second DDS and see if it
works differently.
Rob Berendt
As an Amazon Associate we earn from qualifying purchases.