PO Acceptance Upload

Description

PO Acceptance Upload records buyer-side acceptances (acknowledgments) against existing approved Oracle Purchasing documents – Standard, Blanket, Contract and Planned POs and Blanket Releases – from Excel, via the standard Oracle Purchasing public API. It captures whether the buyer accepts the document, the acceptance type, date, accepting employee and an optional note.

When to use it

  • Record buyer acknowledgment/acceptance of one or many approved POs or Blanket Releases in bulk.
  • Capture supplier-order acknowledgments back into EBS where the buyer confirms acceptance on behalf of the organization.
  • Backfill acceptance history with a specific acceptance date and acceptance type per document.
  • Set the accepting employee and role on each acceptance.
  • Attach acceptance descriptive flexfield values at the time of recording.

Before you start

  • Blitz Report is installed and you are signed in to a responsibility with access to the operating unit.
  • An existing purchase document exists for the operating unit – not cancelled, not finally closed, in status Approved, Requires Reapproval, or Incomplete.
  • If you enter a revision, it must be the document’s current revision.

Step 1 – Set the parameters and download

In Blitz Report, open PO Acceptance Upload and set the parameters:

ParameterPurpose
Operating UnitThe operating unit the documents belong to.
Default ActionThe acceptance Action used when the Action column is left blank (default New).
Default Action DateThe acceptance Action Date used when the column is blank; if that’s also blank, the current date is used.

Run the upload to download and open the Excel file. This upload records new buyer acceptances – the template opens empty.

Step 2 – Enter the acceptances

On each row enter the Operating Unit and PO Number (and Release for a Blanket Release), set Accepted (Yes/No) and the Acceptance Type, and optionally the Action, Action Date, Accepted By Employee, Role and Comments. Supplier columns are optional – they only help narrow the PO Number list.

Step 3 – Validate and Save

Click Validate and Save. This checks for missing required values and runs the upload’s validation, then saves the file. Correct anything it flags before continuing.

Step 4 – Upload and view the result

Back in Blitz Report, click Upload and select your saved file. This submits the Blitz Upload request, which records each acceptance. When it finishes, a result report opens showing each row as success or error.

What’s produced

  • Recorded buyer acceptances against the selected purchase documents.
  • A result report listing every row with a status (success or error) and a message.

Common questions

Can I update or delete existing acceptances with this upload?
No. It only records new buyer acceptances; the template always opens empty and there is no update or delete capability.

Can I record supplier acceptances?
No. Only buyer acceptances are supported.

Do I have to fill in the supplier columns?
No. They are optional and exist only to narrow the PO Number list; you can type the PO Number directly.

What happens if I leave Action or Action Date blank?
Action falls back to the Default Action parameter (default New); Action Date falls back to the Default Action Date parameter, and if that’s also blank, the current date is used.

What if I don’t specify an accepting employee?
The PO/Release buyer is used as the accepted-by. If the employee name isn’t unique, also supply the employee number.

Troubleshooting

MessageCauseWhat to do
PO Number is not valid / not uniqueNo PO matches that number in the operating unit, or more than one does.Choose the PO Number from the dropdown; verify the operating unit; narrow by supplier if duplicated.
Release Number is not validThe release number doesn’t exist for that PO.Select a valid Release for the chosen Blanket PO.
Revision does not match the document’s current revisionThe Revision entered isn’t the document’s current revision.Leave Revision blank or enter the current revision number shown in the message.
Accepted By is not a valid current employee / not uniqueThe employee name/number doesn’t resolve to one current buyer-agent employee.Use the dropdown; add the employee number to disambiguate, or leave blank to default to the buyer.
Flexfield validation errorAn attribute value failed validation for the acceptance flexfield.Correct the attribute category and values against the flexfield’s allowed values.
select
null action_,
null status_,
null message_,
null request_id_,
null modified_columns_,
pav.acceptance_id,
--
hou.name operating_unit,
asu.vendor_name supplier,
asu.segment1 supplier_number,
assa.vendor_site_code supplier_site,
nvl(pha2.segment1,pha.segment1) po_number,
pra.release_num release,
pav.revision_num revision,
pav.action,
pav.action_date,
xxen_util.meaning(pav.accepted_flag,'YES_NO',0) accepted,
pav.acceptance_type,
xxen_util.meaning(pav.accepting_party,'ACCEPTANCE_PARTY',201) acceptance_party,
case when pav.employee_id is not null
then pav.full_name
else po_inq_sv.get_party_vendor_name(pav.created_by)
end accepted_by_employee,
pav.employee_num accepted_by_employee_num,
pav.role,
&lp_note_column
xxen_util.meaning(pav.signature_flag,'YES_NO',0) signature, -- not relevant for buyer acceptances
pav.erecord_id, -- not relevant for buyer acceptances
--
xxen_util.display_flexfield_context(201,'PO_ACCEPTANCES',pav.attribute_category) attribute_category,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE1',pav.row_id,pav.attribute1) po_acceptance_attribute1,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE2',pav.row_id,pav.attribute2) po_acceptance_attribute2,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE3',pav.row_id,pav.attribute3) po_acceptance_attribute3,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE4',pav.row_id,pav.attribute4) po_acceptance_attribute4,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE5',pav.row_id,pav.attribute5) po_acceptance_attribute5,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE6',pav.row_id,pav.attribute6) po_acceptance_attribute6,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE7',pav.row_id,pav.attribute7) po_acceptance_attribute7,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE8',pav.row_id,pav.attribute8) po_acceptance_attribute8,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE9',pav.row_id,pav.attribute9) po_acceptance_attribute9,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE10',pav.row_id,pav.attribute10) po_acceptance_attribute10,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE11',pav.row_id,pav.attribute11) po_acceptance_attribute11,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE12',pav.row_id,pav.attribute12) po_acceptance_attribute12,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE13',pav.row_id,pav.attribute13) po_acceptance_attribute13,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE14',pav.row_id,pav.attribute14) po_acceptance_attribute14,
xxen_util.display_flexfield_value(201,'PO_ACCEPTANCES',pav.attribute_category,'ATTRIBUTE15',pav.row_id,pav.attribute15) po_acceptance_attribute15,
--
:p_default_action default_action,
:p_default_date default_action_date,
1 upload_row
from
po_acceptances_v pav,
po_headers_all pha,
po_releases_all pra,
po_headers_all pha2,
ap_suppliers asu,
ap_supplier_sites_all assa,
hr_operating_units hou
where
-- this upload only supports upload of new buyer acceptances
'X'='Y' and
:p_upload_mode = :p_upload_mode and
hou.name = :p_operating_unit and
nvl(pav.accepting_party,'B') = 'B' and
pav.po_header_id = pha.po_header_id (+) and
pav.po_release_id = pra.po_release_id (+) and
pra.po_header_id = pha2.po_header_id (+) and
nvl(pha2.vendor_id,pha.vendor_id) = asu.vendor_id and
nvl(pha2.vendor_site_id,pha.vendor_site_id) = assa.vendor_site_id and
nvl(pha2.org_id,pha.org_id) = hou.organization_id
Parameter NameSQL textValidation
Operating Unit
 
LOV
Default Action
 
Char
Default Action Date
 
Date