The following lines contain the word 'select', 'insert', 'update' or 'delete':
procedure INSERT_ROW (
X_ROWID in out nocopy VARCHAR2,
X_PB_INPUT_HEADER_ID in NUMBER,
X_DLV_XML_FLAG in VARCHAR2,
X_PUB_TEMPLATE_CODE in VARCHAR2,
X_DLV_EMAIL_FLAG in VARCHAR2,
X_DLV_EMAIL_ADDRESSES in VARCHAR2,
X_DLV_PRINTER_FLAG in VARCHAR2,
X_DLV_PRINTER_NAME in VARCHAR2,
X_PUB_LANGUAGE in VARCHAR2,
X_PUB_TERRITORY in VARCHAR2,
X_GENERATION_TIME_CODE in VARCHAR2,
X_GEN_SCHEDULE_DATE in DATE,
X_REQUEST_ID in NUMBER,
X_PRICE_BOOK_TYPE_CODE in VARCHAR2,
X_PUBLISH_EXISTING_PB_FLAG in VARCHAR2,
X_REQUEST_TYPE_CODE in VARCHAR2,
X_PRODUCT_ATTRIBUTE in VARCHAR2,
X_PRODUCT_ATTR_VALUE in VARCHAR2,
X_EFFECTIVE_DATE in DATE,
X_ITEM_QUANTITY in NUMBER,
X_PRODUCT_CONTEXT in VARCHAR2,
X_CUSTOMER_CONTEXT in VARCHAR2,
X_CUSTOMER_ATTRIBUTE in VARCHAR2,
X_CUSTOMER_ATTR_VALUE in VARCHAR2,
X_DLV_XML_SITE_ID in NUMBER,
X_CURRENCY_CODE in VARCHAR2,
X_PRICE_BOOK_NAME in VARCHAR2,
X_CREATION_DATE in DATE,
X_CREATED_BY in NUMBER,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_LOGIN in NUMBER,
X_ORG_ID in NUMBER,
X_OPERATING_UNIT in VARCHAR2,
X_CUSTOMER_NAME IN VARCHAR2,
X_PRODUCT_NAME IN VARCHAR2,
X_GENERATION_TIME in VARCHAR2,
X_PRICE_BOOK_TYPE in VARCHAR2,
X_PRODUCT_ATTRIBUTE_NAME in VARCHAR2,
X_CUSTOMER_ATTRIBUTE_NAME in VARCHAR2,
X_LANGUAGE in VARCHAR2,
X_SOURCE_LANG in VARCHAR2,
X_PUB_OUTPUT_DOCUMENT_TYPE in VARCHAR2,
X_PRICING_PERSPECTIVE_CODE in VARCHAR2,
X_OVERWRITE_EXISTING_PB_FLAG in VARCHAR2,
X_REQUEST_ORIGINATION_CODE in VARCHAR2,
X_PUB_TEMPLATE_NAME in VARCHAR2,
X_CURRENCY in VARCHAR2,
X_LIMIT_PRODUCTS_BY in VARCHAR2,
X_PRICE_BASED_ON in VARCHAR2,
X_PL_AGR_BSA_ID in NUMBER,
X_LIMIT_PRODUCTS_BY_NAME in VARCHAR2,
X_PRICE_BASED_ON_NAME in VARCHAR2,
X_PL_AGR_BSA_NAME in VARCHAR2,
X_PRICING_PERSPECTIVE in VARCHAR2,
X_VALIDATION_ERROR_FLAG in VARCHAR2,
X_CUST_ACCOUNT_ID in NUMBER
) is
cursor C is select ROWID from QP_PB_INPUT_HEADERS_B
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID
;
insert into QP_PB_INPUT_HEADERS_B (
DLV_XML_FLAG,
PUB_TEMPLATE_CODE,
DLV_EMAIL_FLAG,
DLV_EMAIL_ADDRESSES,
DLV_PRINTER_FLAG,
DLV_PRINTER_NAME,
PUB_LANGUAGE,
PUB_TERRITORY,
GENERATION_TIME_CODE,
GEN_SCHEDULE_DATE,
REQUEST_ID,
PRICE_BOOK_TYPE_CODE,
PUBLISH_EXISTING_PB_FLAG,
OVERWRITE_EXISTING_PB_FLAG,
REQUEST_ORIGINATION_CODE,
REQUEST_TYPE_CODE,
PRODUCT_ATTRIBUTE,
PRODUCT_ATTR_VALUE,
EFFECTIVE_DATE,
ITEM_QUANTITY,
PRODUCT_CONTEXT,
PB_INPUT_HEADER_ID,
CUSTOMER_CONTEXT,
CUSTOMER_ATTRIBUTE,
CUSTOMER_ATTR_VALUE,
DLV_XML_SITE_ID,
CURRENCY_CODE,
ORG_ID,
PUB_OUTPUT_DOCUMENT_TYPE,
PRICING_PERSPECTIVE_CODE,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN,
PL_AGR_BSA_ID,
PRICE_BASED_ON,
LIMIT_PRODUCTS_BY,
VALIDATION_ERROR_FLAG,
CUST_ACCOUNT_ID
) values (
X_DLV_XML_FLAG,
X_PUB_TEMPLATE_CODE,
X_DLV_EMAIL_FLAG,
X_DLV_EMAIL_ADDRESSES,
X_DLV_PRINTER_FLAG,
X_DLV_PRINTER_NAME,
X_PUB_LANGUAGE,
X_PUB_TERRITORY,
X_GENERATION_TIME_CODE,
X_GEN_SCHEDULE_DATE,
X_REQUEST_ID,
X_PRICE_BOOK_TYPE_CODE,
X_PUBLISH_EXISTING_PB_FLAG,
X_OVERWRITE_EXISTING_PB_FLAG,
X_REQUEST_ORIGINATION_CODE,
X_REQUEST_TYPE_CODE,
X_PRODUCT_ATTRIBUTE,
X_PRODUCT_ATTR_VALUE,
X_EFFECTIVE_DATE,
X_ITEM_QUANTITY,
X_PRODUCT_CONTEXT,
X_PB_INPUT_HEADER_ID,
X_CUSTOMER_CONTEXT,
X_CUSTOMER_ATTRIBUTE,
X_CUSTOMER_ATTR_VALUE,
X_DLV_XML_SITE_ID,
X_CURRENCY_CODE,
X_ORG_ID,
X_PUB_OUTPUT_DOCUMENT_TYPE,
X_PRICING_PERSPECTIVE_CODE,
X_CREATION_DATE,
X_CREATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN,
X_PL_AGR_BSA_ID,
X_PRICE_BASED_ON,
X_LIMIT_PRODUCTS_BY,
X_VALIDATION_ERROR_FLAG,
X_CUST_ACCOUNT_ID
);
insert into QP_PB_INPUT_HEADERS_TL (
PRICE_BOOK_NAME,
PB_INPUT_HEADER_ID,
PL_AGR_BSA_NAME,
PUB_TEMPLATE_NAME,
LAST_UPDATE_LOGIN,
LAST_UPDATED_BY,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LANGUAGE,
SOURCE_LANG
) select
X_PRICE_BOOK_NAME,
X_PB_INPUT_HEADER_ID,
X_PL_AGR_BSA_NAME,
X_PUB_TEMPLATE_NAME,
X_LAST_UPDATE_LOGIN,
X_LAST_UPDATED_BY,
X_CREATION_DATE,
X_CREATED_BY,
X_LAST_UPDATE_DATE,
L.LANGUAGE_CODE,
userenv('LANG')
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists
(select NULL
from QP_PB_INPUT_HEADERS_TL T
where T.PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
end INSERT_ROW;
cursor c is select
DLV_XML_FLAG,
PUB_TEMPLATE_CODE,
DLV_EMAIL_FLAG,
DLV_EMAIL_ADDRESSES,
DLV_PRINTER_FLAG,
DLV_PRINTER_NAME,
PUB_LANGUAGE,
PUB_TERRITORY,
GENERATION_TIME_CODE,
GEN_SCHEDULE_DATE,
REQUEST_ID,
PRICE_BOOK_TYPE_CODE,
PUBLISH_EXISTING_PB_FLAG,
OVERWRITE_EXISTING_PB_FLAG,
REQUEST_ORIGINATION_CODE,
REQUEST_TYPE_CODE,
PRODUCT_ATTRIBUTE,
PRODUCT_ATTR_VALUE,
EFFECTIVE_DATE,
ITEM_QUANTITY,
PRODUCT_CONTEXT,
CUSTOMER_CONTEXT,
CUSTOMER_ATTRIBUTE,
CUSTOMER_ATTR_VALUE,
DLV_XML_SITE_ID,
CURRENCY_CODE,
ORG_ID,
PUB_OUTPUT_DOCUMENT_TYPE,
PRICING_PERSPECTIVE_CODE,
VALIDATION_ERROR_FLAG,
CUST_ACCOUNT_ID
from QP_PB_INPUT_HEADERS_B
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID
for update of PB_INPUT_HEADER_ID nowait;
cursor c1 is select
PRICE_BOOK_NAME,
PL_AGR_BSA_NAME,
PUB_TEMPLATE_NAME,
decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
from QP_PB_INPUT_HEADERS_TL
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID
and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
for update of PB_INPUT_HEADER_ID nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
procedure UPDATE_ROW (
X_PB_INPUT_HEADER_ID in NUMBER,
X_DLV_XML_FLAG in VARCHAR2,
X_PUB_TEMPLATE_CODE in VARCHAR2,
X_DLV_EMAIL_FLAG in VARCHAR2,
X_DLV_EMAIL_ADDRESSES in VARCHAR2,
X_DLV_PRINTER_FLAG in VARCHAR2,
X_DLV_PRINTER_NAME in VARCHAR2,
X_PUB_LANGUAGE in VARCHAR2,
X_PUB_TERRITORY in VARCHAR2,
X_GENERATION_TIME_CODE in VARCHAR2,
X_GEN_SCHEDULE_DATE in DATE,
X_REQUEST_ID in NUMBER,
X_PRICE_BOOK_TYPE_CODE in VARCHAR2,
X_PUBLISH_EXISTING_PB_FLAG in VARCHAR2,
X_REQUEST_TYPE_CODE in VARCHAR2,
X_PRODUCT_ATTRIBUTE in VARCHAR2,
X_PRODUCT_ATTR_VALUE in VARCHAR2,
X_EFFECTIVE_DATE in DATE,
X_ITEM_QUANTITY in NUMBER,
X_PRODUCT_CONTEXT in VARCHAR2,
X_CUSTOMER_CONTEXT in VARCHAR2,
X_CUSTOMER_ATTRIBUTE in VARCHAR2,
X_CUSTOMER_ATTR_VALUE in VARCHAR2,
X_DLV_XML_SITE_ID in NUMBER,
X_CURRENCY_CODE in VARCHAR2,
X_PRICE_BOOK_NAME in VARCHAR2,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_LOGIN in NUMBER,
X_ORG_ID in NUMBER,
X_OPERATING_UNIT in VARCHAR2,
X_CUSTOMER_NAME IN VARCHAR2,
X_PRODUCT_NAME IN VARCHAR2,
X_GENERATION_TIME in VARCHAR2,
X_PRICE_BOOK_TYPE in VARCHAR2,
X_PRODUCT_ATTRIBUTE_NAME in VARCHAR2,
X_CUSTOMER_ATTRIBUTE_NAME in VARCHAR2,
X_LANGUAGE in VARCHAR2,
X_SOURCE_LANG in VARCHAR2,
X_PUB_OUTPUT_DOCUMENT_TYPE in VARCHAR2,
X_PRICING_PERSPECTIVE_CODE in VARCHAR2,
X_OVERWRITE_EXISTING_PB_FLAG in VARCHAR2,
X_REQUEST_ORIGINATION_CODE in VARCHAR2,
X_PUB_TEMPLATE_NAME in VARCHAR2,
X_CURRENCY in VARCHAR2,
X_LIMIT_PRODUCTS_BY in VARCHAR2,
X_PRICE_BASED_ON in VARCHAR2,
X_PL_AGR_BSA_ID in NUMBER,
X_LIMIT_PRODUCTS_BY_NAME in VARCHAR2,
X_PRICE_BASED_ON_NAME in VARCHAR2,
X_PL_AGR_BSA_NAME in VARCHAR2,
X_PRICING_PERSPECTIVE in VARCHAR2,
X_VALIDATION_ERROR_FLAG in VARCHAR2,
X_CUST_ACCOUNT_ID in NUMBER
) is
begin
update QP_PB_INPUT_HEADERS_B set
DLV_XML_FLAG = X_DLV_XML_FLAG,
PUB_TEMPLATE_CODE = X_PUB_TEMPLATE_CODE ,
DLV_EMAIL_FLAG = X_DLV_EMAIL_FLAG ,
DLV_EMAIL_ADDRESSES = X_DLV_EMAIL_ADDRESSES ,
DLV_PRINTER_FLAG = X_DLV_PRINTER_FLAG ,
DLV_PRINTER_NAME = X_DLV_PRINTER_NAME ,
PUB_LANGUAGE = X_PUB_LANGUAGE ,
PUB_TERRITORY = X_PUB_TERRITORY ,
GENERATION_TIME_CODE = X_GENERATION_TIME_CODE,
GEN_SCHEDULE_DATE = X_GEN_SCHEDULE_DATE,
REQUEST_ID = X_REQUEST_ID,
PRICE_BOOK_TYPE_CODE = X_PRICE_BOOK_TYPE_CODE,
PUBLISH_EXISTING_PB_FLAG = X_PUBLISH_EXISTING_PB_FLAG,
OVERWRITE_EXISTING_PB_FLAG = X_OVERWRITE_EXISTING_PB_FLAG,
REQUEST_ORIGINATION_CODE = X_REQUEST_ORIGINATION_CODE,
REQUEST_TYPE_CODE = X_REQUEST_TYPE_CODE,
LIMIT_PRODUCTS_BY = X_LIMIT_PRODUCTS_BY,
PRODUCT_ATTRIBUTE = X_PRODUCT_ATTRIBUTE,
PRODUCT_ATTR_VALUE = X_PRODUCT_ATTR_VALUE,
PRICE_BASED_ON = X_PRICE_BASED_ON,
PL_AGR_BSA_ID = X_PL_AGR_BSA_ID,
EFFECTIVE_DATE = X_EFFECTIVE_DATE,
ITEM_QUANTITY = X_ITEM_QUANTITY,
PRODUCT_CONTEXT = X_PRODUCT_CONTEXT,
CUSTOMER_CONTEXT = X_CUSTOMER_CONTEXT,
CUSTOMER_ATTRIBUTE = X_CUSTOMER_ATTRIBUTE,
CUSTOMER_ATTR_VALUE = X_CUSTOMER_ATTR_VALUE,
DLV_XML_SITE_ID = X_DLV_XML_SITE_ID,
CURRENCY_CODE = X_CURRENCY_CODE,
ORG_ID = X_ORG_ID,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
PUB_OUTPUT_DOCUMENT_TYPE = X_PUB_OUTPUT_DOCUMENT_TYPE ,
PRICING_PERSPECTIVE_CODE = X_PRICING_PERSPECTIVE_CODE,
VALIDATION_ERROR_FLAG = X_VALIDATION_ERROR_FLAG,
CUST_ACCOUNT_ID = X_CUST_ACCOUNT_ID
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID;
update QP_PB_INPUT_HEADERS_TL set
PRICE_BOOK_NAME = X_PRICE_BOOK_NAME,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
PL_AGR_BSA_NAME = X_PL_AGR_BSA_NAME,
PUB_TEMPLATE_NAME = X_PUB_TEMPLATE_NAME,
SOURCE_LANG = userenv('LANG')
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID
and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
end UPDATE_ROW;
procedure DELETE_ROW (
X_PB_INPUT_HEADER_ID in NUMBER
) is
begin
delete from QP_PB_INPUT_HEADERS_TL
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID;
delete from QP_PB_INPUT_HEADERS_B
where PB_INPUT_HEADER_ID = X_PB_INPUT_HEADER_ID;
end DELETE_ROW;
delete from QP_PB_INPUT_HEADERS_TL T
where not exists
(select NULL
from QP_PB_INPUT_HEADERS_B B
where B.PB_INPUT_HEADER_ID = T.PB_INPUT_HEADER_ID
);
update QP_PB_INPUT_HEADERS_TL T set (
PRICE_BOOK_NAME,
PL_AGR_BSA_NAME,
PUB_TEMPLATE_NAME
) = (select
B.PRICE_BOOK_NAME,
B.PL_AGR_BSA_NAME,
B.PUB_TEMPLATE_NAME
from QP_PB_INPUT_HEADERS_TL B
where B.PB_INPUT_HEADER_ID = T.PB_INPUT_HEADER_ID
and B.LANGUAGE = T.SOURCE_LANG)
where (
T.PB_INPUT_HEADER_ID,
T.LANGUAGE
) in (select
SUBT.PB_INPUT_HEADER_ID,
SUBT.LANGUAGE
from QP_PB_INPUT_HEADERS_TL SUBB, QP_PB_INPUT_HEADERS_TL SUBT
where SUBB.PB_INPUT_HEADER_ID = SUBT.PB_INPUT_HEADER_ID
and SUBB.LANGUAGE = SUBT.SOURCE_LANG
and (SUBB.PRICE_BOOK_NAME <> SUBT.PRICE_BOOK_NAME
or SUBB.PL_AGR_BSA_NAME <> SUBT.PL_AGR_BSA_NAME
or (SUBB.PL_AGR_BSA_NAME is null and SUBT.PL_AGR_BSA_NAME is not null)
or (SUBB.PL_AGR_BSA_NAME is not null and SUBT.PL_AGR_BSA_NAME is null)
));
insert into QP_PB_INPUT_HEADERS_TL (
PRICE_BOOK_NAME,
PB_INPUT_HEADER_ID,
LAST_UPDATE_LOGIN,
LAST_UPDATED_BY,
PL_AGR_BSA_NAME,
PUB_TEMPLATE_NAME,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LANGUAGE,
SOURCE_LANG
) select /*+ ORDERED */
B.PRICE_BOOK_NAME,
B.PB_INPUT_HEADER_ID,
B.LAST_UPDATE_LOGIN,
B.LAST_UPDATED_BY,
B.PL_AGR_BSA_NAME,
B.PUB_TEMPLATE_NAME,
B.CREATION_DATE,
B.CREATED_BY,
B.LAST_UPDATE_DATE,
L.LANGUAGE_CODE,
B.SOURCE_LANG
from QP_PB_INPUT_HEADERS_TL B, FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and B.LANGUAGE = userenv('LANG')
and not exists
(select NULL
from QP_PB_INPUT_HEADERS_TL T
where T.PB_INPUT_HEADER_ID = B.PB_INPUT_HEADER_ID
and T.LANGUAGE = L.LANGUAGE_CODE);