The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_last_update_login NUMBER,
x_mesg IN OUT NOCOPY VARCHAR2,
x_measurement_criteria VARCHAR2,
x_org_id NUMBER) IS
NO_RATE_FOUND EXCEPTION;
SELECT transaction_id
FROM GHG_TRANSACTIONS_V
WHERE invoice_id = i_invoice_id;
SELECT ai.invoice_date,
ai.invoice_num,
ai.gl_date,
pvs.match_option,
aid.distribution_line_number,
aid.invoice_line_number,
aid.quantity_invoiced,
aid.po_line_id,
aid.po_distribution_id,
DECODE(aid.receipt_number, NULL, NULL,
'. Receipt Num: ' ||aid.receipt_number) receipt_number,
aid.rcv_transaction_id,
aid.project,
aid.task,
pl.item_id,
pl.unit_meas_lookup_code,
pl.po_header_id,
pl.item_number,
pd.code_combination_id
FROM ap_invoices_all ai,
po_vendor_sites pvs,
ap_invoice_distributions_v aid,
po_lines_v pl,
po_distributions_v pd,
fnd_lookup_values_vl xnlv
WHERE ai.invoice_id = i_invoice_id
AND pvs.vendor_site_id = ai.vendor_site_id
AND aid.invoice_id = ai.invoice_id
AND aid.po_distribution_id IS NOT NULL
AND xnlv.lookup_code = aid.line_type_lookup_code
AND xnlv.lookup_type = 'GHG_PO_MATCH_EMISSION_LINE_TYP'
AND SYSDATE BETWEEN NVL(xnlv.start_date_active, SYSDATE - 1)
AND NVL(xnlv.end_date_active, SYSDATE + 1)
AND pl.po_line_id = aid.po_line_id
AND pl.item_id IS NOT NULL
AND pd.po_distribution_id = aid.po_distribution_id
ORDER BY aid.distribution_line_number;
v_debug_info := 'Delete any existing emissions';
GHG_TRANSACTIONS_HISTORY_PKG.insert_row(x_transaction_id => emission_rec.transaction_id);
ghg_transactions_pkg.delete_row(x_emission_id => emission_rec.transaction_id);
delete from GHG_TRANSACTION_DETAILS_ALL where transaction_id = emission_rec.transaction_id;
SELECT asp.org_id,
asp.set_of_books_id,
gsob.chart_of_accounts_id
INTO v_org_id,
v_set_of_books_id,
v_chart_of_accounts_id
FROM ap_system_parameters asp,
gl_sets_of_books gsob
WHERE gsob.set_of_books_id = asp.set_of_books_id;
SELECT map_accounts_flag,
map_operating_unit_flag,
map_projects_flag
INTO v_map_accounts_flag,
v_map_operating_unit_flag,
v_map_projects_flag
FROM GHG_SEGMENT_MAPPINGS_V;
--SELECT facility_id
--INTO v_facility_id_for_op_unit
--FROM XX_GHGAS_facility_ou_map_v;
SELECT xnsp.po_match_emission_date,
xnsp.receipt_match_emission_date
INTO v_po_match_emission_date,
v_receipt_match_emission_date
FROM GHG_SYSTEM_PARAMETERS_V xnsp;
SELECT NVL((MAX(transaction_line_number)), 0)
INTO v_highest_emission_number
FROM (SELECT MAX(transaction_line_number) transaction_line_number
FROM GHG_TRANSACTIONS_V
WHERE invoice_id = x_invoice_id
UNION
SELECT MAX(transaction_line_number) transaction_line_number
FROM GHG_TRANSACTIONS_HISTORY_V
WHERE invoice_id = x_invoice_id);
SELECT MAX(rt.transaction_date)
INTO v_emission_date
FROM rcv_transactions rt
WHERE rt.po_header_id IN (SELECT ph.po_header_id
FROM po_headers_v ph
WHERE ph.segment1 = x_po_number)
AND rt.transaction_type = 'RECEIVE';
SELECT rt.transaction_date
INTO v_emission_date
FROM rcv_transactions rt
WHERE rt.transaction_id = dist_rec.rcv_transaction_id;
SELECT s.source_name,
nvl(def.location_code,'ALL') location_code,
nvl(def.scope_lookup_code,1) scope_lookup_code
INTO v_emission_source,
v_location_code,
v_emission_scope_lookup_code
FROM GHG_SUPPLIER_ITEMS def
, GHG_SOURCES s
WHERE def.source_id = s.source_id
AND def.inventory_item_id = dist_rec.item_id
AND s.enabled = 'Y'
-- AND def.group_default = 'Y'
;
SELECT s.source_name,
def.location_code,
def.scope_lookup_code
INTO v_emission_source,
v_location_code,
v_emission_scope_lookup_code
FROM GHG_SUPPLIER_ITEMS def
, GHG_SOURCES s
WHERE def.source_id = s.source_id
AND def.supplier_id = x_vendor_id
and def.supplier_site_id = x_vendor_site_id
AND s.enabled = 'Y'
AND def.group_default = 'Y';
SELECT GHG_ORGANIZATION_CODE
into v_facility
FROM GHG_ORGANIZATIONS
WHERE GHG_ORGANIZATION_ID = v_facility_id;
SELECT GHG_TRANSACTIONS_S.NEXTVAL
INTO v_emission_id
FROM sys.dual;
v_debug_info := 'Insert emission';