I am trying to compare PTF's between two lpars. I've done some things
with QSYS2.PTF_INFO but my exception join is listing PTF's for Product
options that the other system may not have installed. I am trying to get
a list of what products and Options the systems may have installed. I'd
prefer to use these services.
This is what I am starting out with:
dashdash Replace the system name below
dashdash Copy the data locally since remote exception joins are not
supported.
Create or Replace table rob.PTF_INFO as (
select * from RACK1HST.QSYS2.PTF_INFO)
with data;
Select a.PTF_IDENTIFIER, a.PTF_PRODUCT_ID, a.PTF_PRODUCT_OPTION,
b.PTF_IDENTIFIER, b.PTF_PRODUCT_ID, b.PTF_PRODUCT_OPTION
From QSYS2.PTF_INFO a exception join rob.PTF_INFO b
on a.PTF_IDENTIFIER=b.PTF_IDENTIFIER
Order by a.PTF_PRODUCT_ID, b.PTF_PRODUCT_ID, a.PTF_IDENTIFIER,
b.PTF_IDENTIFIER;
I tried to work around it with the solution below but it has two errors.
One, logically it can miss PTF's if the PTF is the first PTF for the
product/option thus the product/option would not appear as installed on
the other system.
Two, it generates a system error.
Select a.PTF_IDENTIFIER, a.PTF_PRODUCT_ID, a.PTF_PRODUCT_OPTION,
b.PTF_IDENTIFIER, b.PTF_PRODUCT_ID, b.PTF_PRODUCT_OPTION
From QSYS2.PTF_INFO a exception join rob.PTF_INFO b
on a.PTF_IDENTIFIER=b.PTF_IDENTIFIER
where
(a.ptf_identifier is not null and a.ptf_product_id concat
a.ptf_product_option in (
select distinct b.ptf_product_id concat b.ptf_product_option from
rob.ptf_info))
or
(b.ptf_identifier is not null and b.ptf_product_id concat
b.ptf_product_option in (
select distinct a.ptf_product_id concat a.ptf_product_option from
qsys2.ptf_info))
Order by a.PTF_PRODUCT_ID, a.PTF_PRODUCT_OPTION, b.PTF_PRODUCT_ID,
a.PTF_IDENTIFIER, b.PTF_IDENTIFIER, b.PTF_PRODUCT_OPTION
;
Rob Berendt
As an Amazon Associate we earn from qualifying purchases.