Skip Headers

Oracle Pedigree and Serialization Manager Process Guide
Release 1.2
Part Number E36379-01
Go to Table of Contents
Contents
Go to previous page
Previous
Go to next page
Next

Understanding Web Services

This chapter covers the following topics:

Web Services Overview

Oracle Pedigree and Serialization Manager (OPSM) can operate in an integrated mode with external transactional systems or it can operate as a standalone application. Through the use of web services and file transfer exchanges external third party systems can integrate with OPSM enabling them to streamline their business processes. OPSM hosts a set of inbound services.

For more information on web services and the Service Oriented Architecture (SOA), see

These tables list the OPSM and EPCIS web services provided by OPSM and provide a high-level overview of each web service:

OPSM Web Services
Web Service Functionality Inbound/Outbound WSDL
JobInstanceServiceAMService Create Job Instance Inbound JobInstanceServiceAMService wsdl
LotsServiceAMService Merge Lots Inbound LotsServiceAMService wsdl
PackagingServiceAMService Pack Package Inbound PackagingServiceAMService wsdl
PackagingServiceAMService Unpack Package Inbound PackagingServiceAMService wsdl
ProductServiceAMService Create and update product Inbound ProductServiceAMService wsdl
SerialGenRequestServiceAMService Create Serial Generation Request Inbound SerialGenRequestServiceAMService wsdl
SerialsServiceAMService Serials - Edit Status and Usage by Label Inbound SerialsServiceAMService wsdl
SerialsServiceAMService Serials - Edit Status and Usage by List Inbound SerialsServiceAMService wsdl
SerialsServiceAMService Serials - Edit Status and Usage by Primary Document Inbound SerialsServiceAMService wsdl
TransactionsServiceAMService Add Transaction (Shipment, Return, and Import Serials) Inbound TransactionsServiceAMService wsdl
EPCIS Web Services
CaptureService Capture and store events in the EPCIS Repository Inbound CaptureService wsdl
QueryService Query events in the EPCIS Repository Inbound EPCglobalEPCISService wsdl

Web Services Detail

This section lists the OPSM and EPCIS web services provided by Oracle Pedigree and Serialization Manager (OPSM) and provide the details for each web service.

CaptureService (Inbound)

The Capture web service is an inbound asynchronous business service part of the interoperability solution of the OPSM system. This service enables EPCIS events to get captured and stored in the events repository. Captured events can be queried by the EPCIS Query web service. The Capture service accepts the EPCISDocument form to store the EPCIS events in the repository.

Operation Description
capture Used to capture EPCIS events in the OPSM system.

capture Operation

This operation is used to capture EPCIS events in the OPSM system.

Key Logic

Required Input

Exceptions

capture

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
schemaVersion Number Yes The version of the schema corresponding to which the instance conforms.
creationDate DateTime Yes The date the message was created. Used for auditing and logging.
EPCISHeader EPCISHeader No The XML binding for the Core Event Types data definition module that includes an optional EPCISHeader element, which may be used by industry groups to incorporate additional information required for processing within that industry. The core schema includes a “Standard Business Document Header” (SBDH) as defined in [SBDH] as a required component of the EPCISHeader element. It also contains extensions of EPCISHeader.
EPCISBody EPCISBody Yes The XML binding for the Core Event Types data definition modules that includes EPCISBody a mandatory element. It contains eventList and extensions.

StandardBusinessDocumentHeader

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
HeaderVersion String Yes (If EPCIS Header Is provided) Specifies the version number of the standard business document.
Sender Partner Yes (If EPCIS Header Is provided) Sender of the message, party representing the organization which created the standard business document.
Receiver Partner Yes (If EPCIS Header Is provided) Receiver of the message, party representing the organization which receives the standard business document.
DocumentIdentification DocumentIdentification Yes (If EPCIS Header Is provided) Identification information for the document.
Manifest Manifest No Describes attachments.
BusinessScope BusinessScope No The business scope provides a basis to determine which rules are applicable to the transaction involving the enclosed business documents.
Extension EPCISDocumentExtensionType No Standard document business header supports extensibility so end users can address application needs or use case. User can give any elements under extensions.

Sender

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
Identifier PartnerIdentification Yes (If EPCIS Header is provided) A unique identification key for the sending party.
Authority String No Authority agency of the identification key.
ContactInformation ContactInformation No Name of the contact person or department for the sending party. See ContactInformation.

Receiver

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
Identifier PartnerIdentification Yes (If EPCIS Header is provided) A unique identification key for the receiving party.
Authority String No Authority agency of the identification key.
ContactInformation ContactInformation No Name of the contact person or department for the receiving party. See ContactInformation.

ContactInformation

Name Type Mandatory Description
Contact String Yes Name of contact person or department.
EmailAddress String No Email address of the contact.
FaxNumber String No Fax number of the contact.
TelephoneNumber String No Telephone number of the contact.
ContactTypeIdentifier String No Role of the identifier. For example, SELLER.

DocumentIdentification

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
Standard String Yes The name of the document standard contained in the payload.
TypeVersion String Yes Version information of the document included in the payload of SBDH. This is the "complete" version of the document itself and is different than the "HeaderVersion".
InstanceIdentifier String Yes Description that contains reference information which uniquely identifies this instance of the Standard Business Document (SBD) between the "Sender" and the "Receiver". This identifier identifies this document as being distinct from others.
Type String Yes This element identifies the type of the document. If there is a business need to send multiple types of documents, then the multiple types MUST be business documents related to each other and having the same version identifier. Example; invoice, debitCreditAdvice, tradeItemDocument.
MultipleType Boolean Yes Flag to indicate that there is more than one type of business document in the payload of the SBDH.
CreationDateAndTime String Yes Date and time of the SBDH document creation.

Manifest

Name Type Mandatory Description
NumberOfItems Integer Yes Number of attachments in document.
ManifestItem ManifestItem Yes Specifies information about the attached item in a document. See ManifestItem.

ManifestItem

Name Type Mandatory Description
MimeTypeQualifierCode MimeTypeQualifierCode Yes MIME type of attached item.
UniformResourceIdentifier anyURI Yes URL for the attached item.
Description String No Description of the attached item.
Language String No Language of the attached item.

BusinessScope

Name Type Mandatory Description
Scope Scope No Defines the scope of the business rule to the transactions involving the enclosed business documents. See Scope.

Scope

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
Type String No This element identifies the type of the scope.
InstanceIdentifier String No Description that contains reference information which uniquely identifies the scope.
Identifier String No A unique identification key for the scope.
ScopeInformation Scope No This is an abstract element with a substitution group. The element will be substituted by any one of the other elements that have the same substitution group.

EPCISBody

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
EventList EventListType No Defines the list of events in a document. Events can be objectEvent, transactionEvent, aggregationEvent, or quantityEvent. All events are a subclass of EPCISEvent.
extension EPCISEventListExtensionType No EPCISBody supports extensibility so end users can address application needs or use case. User can give any elements under extensions.

EventList

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
ObjectEvent ObjectEventType No ObjectEvent captures information about an event pertaining to one or more physical objects identified by EPCs.
AggregationEvent AggregationEventType No The event type AggregationEvent describes events that apply to objects that have been physically aggregated to one another. In such an event, there is a set of “contained” objects that have been aggregated within a “containing” entity that’s meant to identify the physical aggregation itself.
QuantityEvent QuantityEventType No A QuantityEvent captures an event that takes place with respect to a specified quantity of an object class.
TransactionEvent TransactionEventType No The event type TransactionEvent describes the association or disassociation of physical objects to one or more business transactions. While other event types have an optional bizTransactionList field that may be used to provide context for an event, the TransactionEvent is used to declare in an unequivocal way that certain EPCs have been associated or disassociated with one or more business transactions as part of the event.

ObjectEvent

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
eventTime DateTime Yes The date and time at which the EPCIS Capturing Application asserts the event occurred.
recordTime DateTime No The date and time at which this event was recorded by an EPCIS Repository. This field SHALL be ignored when an event is presented to the EPCIS Capture Interface, and SHALL be present when an event is retrieved through the EPCIS Query Interface.
eventTimeZoneOffset String Yes The time zone offset in effect at the time and place the event occurred, expressed as an offset from UTC.
baseExtension EPCISEventExtensionType No It specifies the base extension for ObjectEvent.
epcList EPCListType Yes An unordered list of one or more EPCs naming the physical objects to which the event pertained. Each element of this list SHALL be a URI [RFC2396] denoting the unique identity for a physical object.
action ActionType Yes The Action field of an ObjectEvent describes the events relationship to the lifecycle of the EPCs named in the event.
Actions are ADD, DELETE, or OBSERVE.
bizStep BusinessStepIDType No The business step of which this event was a part.
disposition DispositionIDType No The business condition of the objects associated with the EPCs presumed to hold, until contradicted by a subsequent event.
readPoint ReadPointType No The read point at which the event took place.
bizLocation BusinessLocationType No The business location where the objects associated with the EPCs may be found, until contradicted by a subsequent event.
bizTransactionList BusinessTransactionListType No An unordered list of business transactions that define the context of this event.
extension ObjectEventExtensionType No Extensions for object events are defined under the extensions tag. The main purpose of extensions is to adapt to particular business situations for different organizations.

AggregationEvent

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
eventTime DateTime Yes The date and time at which the EPCIS Capturing Application asserts the event occurred.
recordTime DateTime No The date and time at which this event was recorded by an EPCIS Repository. This field SHALL be ignored when an event is presented to the EPCIS Capture Interface, and SHALL be present when an event is retrieved through the EPCIS Query Interface.
eventTimeZoneOffset String Yes The time zone offset in effect at the time and place the event occurred, expressed as an offset from UTC.
baseExtension EPCISEventExtensionType No It specifies the base extension for AggregationEvent.
parentId ParentIDType No The identifier of the parent of the association.
childEPCs EPCListType Yes An unordered list of the EPCs of the contained objects. Each element of the list SHALL be a URI [RFC2396] denoting the unique identity for a physical object.
action ActionType Yes Action specifies how this event relates to the lifecycle of the aggregation named in this event.
Actions are ADD, DELETE, or OBSERVE.
bizStep BusinessStepIDType No The business step of which this event was a part.
disposition DispositionIDType No The business condition of the objects associated with the EPCs presumed to hold, until contradicted by a subsequent event.
readPoint ReadPointType No The read point at which the event took place.
bizLocation BusinessLocationType No The business location where the objects associated with the EPCs may be found, until contradicted by a subsequent event.
bizTransactionList BusinessTransactionListType No An unordered list of business transactions that define the context of this event.
extension Aggregation EventExtensionType No Extensions for aggregation events are defined under the extensions tag. The main purpose of extensions is to adapt to particular business situations for different organizations.

QuantityEvent

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
eventTime DateTime Yes The date and time at which the EPCIS Capturing Application asserts the event occurred.
recordTime DateTime No The date and time at which this event was recorded by an EPCIS Repository. This field SHALL be ignored when an event is presented to the EPCIS Capture Interface, and SHALL be present when an event is retrieved through the EPCIS Query Interface.
eventTimeZoneOffset String Yes The time zone offset in effect at the time and place the event occurred, expressed as an offset from UTC.
baseExtension EPCISEventExtensionType No It specifies the base extension for QuantityEvent.
epcClass EPCClassType Yes The identifier specifying the object class to which the event pertains.
quantity Integer Yes The quantity of the object within the class described by this event.
bizStep BusinessStepIDType No The business step of which this event was a part.
disposition DispositionIDType No The business condition of the objects associated with the EPCs presumed to hold, until contradicted by a subsequent event.
readPoint ReadPointType No The read point at which the event took place.
bizLocation BusinessLocationType No The business location where the objects associated with the EPCs may be found, until contradicted by a subsequent event.
bizTransactionList BusinessTransactionListType No An unordered list of business transactions that define the context of this event.
extension QuantityEventExtensionType No Extensions for quantity events are defined under the extensions tag. The main purpose of extensions is to adapt to particular business situations for different organizations.

TransactionEvent

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
eventTime DateTime Yes The date and time at which the EPCIS Capturing Application asserts the event occurred.
recordTime DateTime No The date and time at which this event was recorded by an EPCIS Repository. This field SHALL be ignored when an event is presented to the EPCIS Capture Interface, and SHALL be present when an event is retrieved through the EPCIS Query Interface.
eventTimeZoneOffset String Yes The time zone offset in effect at the time and place the event occurred, expressed as an offset from UTC.
baseExtension EPCISEventExtensionType No It specifies the base extension for TransactionEvent.
bizTransactionList BusinessTransactionListType Yes An unordered list of business transactions that define the context of this event.
parentId ParentIDType No The identifier of the parent of the EPCs given in the epcList.
epcList EPCListType Yes An unordered list of the EPCs of the objects associated with the business transaction. Each element of the list SHALL be a URI [RFC2396] denoting the unique identity for a physical object.
action ActionType Yes Action specifies how this event relates to the lifecycle of the business transaction named in this event.
Actions are ADD, DELETE, or OBSERVE.
bizStep BusinessStepIDType No The business step of which this event was a part.
disposition DispositionIDType No The business condition of the objects associated with the EPCs presumed to hold, until contradicted by a subsequent event.
readPoint ReadPointType No The read point at which the event took place.
bizLocation BusinessLocationType No The business location where the objects associated with the EPCs may be found, until contradicted by a subsequent event.
bizTransactionList BusinessTransactionListType No An unordered list of business transactions that define the context of this event.
extension TransactionEventExtensionType No Extensions for transaction events are defined under the extensions tag. The main purpose of extensions is to adapt to particular business situations for different organizations.

bizLocation

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
id BusinessLocationIDType Yes Indicates the location Id of the business location.
extension BusinessLocationExtensionType No Business location supports extensibility so end users can address application needs or use case. User can give any elements under extensions.

readPoint

The description information in this table was taken from the GS1 EPC Global - EPC Information Services (EPCIS) Version 1.0.1 Specification Guide.

Name Type Mandatory Description
id ReadPointIDType Yes Read Point Id is a discretely recorded location that is meant to identify the most specific place at which an EPCIS event took place.
extension ReadPointExtensionType No Read point supports extensibility so end users can address application needs or use case. User can give any elements under extensions.

WSDL

oracle.apps.pas.epc.service.capture.CaptureService.wsdl

For detailed descriptions of all input and output parameters, please refer to the CaptureService wsdl for this web service.

JobInstanceServiceAMService (Inbound)

The Job Instance web service is an inbound asynchronous business service part of the interoperability solution of the OPSM system. This service enables external systems to create job instances with job instance messages. The job instances and job instances messages are used for error notification when processing the createTransaction and mergeLot messages from the JMS Queue.

Operation Description
createJobInstance
createJobInstanceAsync
Used to create a new job instance and job instance messages within OPSM from an external system.

createJobInstance and createJobInstanceAsync Operations

These operations are used to create error, warning, and informational messages about a specified process into the Job Instances and Job Instance Messages table. It is used primarily in the error handling during asynchronous processing of messages from the JMS Queue.

Key Logic

Required Input

Exceptions

jobInstance

Name Type Mandatory Description
JobInstanceId Long No Unique identifier for the job instance.
JobType String Yes Identifies the job type.
This must be a valid value in the PAS_JOB_TYPE lookup.
JobStatus String Yes Indicates the status of the job.
This must be a valid value in the PAS_JOB_STATUS lookup.
WebServiceName String No Identifies the web service associated with the job.
This must be a valid value in the PAS_WEB_SERVICES lookup.

jobInstanceMsgVO

Name Type Mandatory Description
JobInstanceMsgId Long No Unique identifier for the job instance message.
ErrorCode String No Identifies the error code from the resource bundle.
ErrorSeverityLevel String No Indicates the severity level of the message.
ErrorSubValue1 String No Error substitution value.
ErrorSubValue2 String No Error substitution value.
ErrorSubValue3 String No Error substitution value.
ErrorSubValue4 String No Error substitution value.
ErrorSubValue5 String No Error substitution value.

WSDL

oracle.apps.pas.transactions.jobInstanceService.applicationModule.common.serviceinterface.JobInstanceServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the JobInstanceServiceAMService wsdl for this web service.

LotsServiceAMService (Inbound)

Inbound service that provides the ability to add or update lots and lot attributes from an external system into the OPSM system.

Operation Description
mergeLot
mergeLotAsync
These operations will merge lot information by adding a new lot or updating an existing lot in OPSM.

mergeLot and mergeLotAsync Operation

These operations are used to merge the lot information from an external system into the OPSM system.

Key Logic

The merge will attempt to find the lot in OPSM using the following precedence:

Required Input

One of the following combinations must exist to identify the lot:

Exceptions

If LotId was passed in, and the lot is not found in OPSM, an exception is issued and the lot is not added.

lotRow

Name Type Mandatory Description
LotId Long Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

Unique identifier for the lot in OPSM. If the lot identifier is provided, the lot identifier will be used to locate the lot record to be updated.
LotNumber String Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

Lot number associated to the lot.
The LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
LotSource String Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

The source system associated to the lot.
The LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant and ProductUom are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
Location String Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCode Variant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

The location associated to the lot. The location can be null if the source system does not associate a location reference to the lot information.
The LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant and ProductUom are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
This must be a location defined in OPSM.
ParentLot String No The parent lot number associated to the lot.
OriginationDate Date No The date that the lot originated.
ExpirationDate Date No The date that the lot expires.
The lot expiration date is not required for creation of the lot, however, a shipment of the product without a lot expiration date will be flagged as an exception.
BestByDate Date No The best by date associated with the lot.
SellByDate Date No The sell by date associated with the lot.
RetestDate Date No The retest date associated with the lot.
ItemNumber String Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCode Variant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

ItemNumber, ItemSource, and ItemUom can optionally be used to identify the product associated to the lot in OPSM using the item cross reference. If both product and item information are sent, the product information will take precedence in identifying the product.
ProductCode String Conditional: One of the following combinations must be sent to identify the lot:
  • LotId or

  • LotNumber, LotSource, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom or

  • LotNumber, LotSource, Location, ItemNumber, ItemSource, ItemUom or

  • LotNumber, LotSource, ItemNumber, ItemSource, ItemUom

ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom are used to identify the product detail associated to the lot.

LotProductVO

Name Type Mandatory Description
ProductCode String Yes Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom.
ProductCodeType String Yes Identifies the type of product code used in identification of the product in OPSM.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String No Identifies the specific variation of the product code when a product code is reused for different products over time.
Default: NOVARIANT.
ProductUom String Yes Identifies the product packaging unit where a specified product code is used for multiple packaging levels.

LotItemVO

Name Type Mandatory Description
ItemNumber String Yes Identifies the item number in the transactional system that is cross referenced to a product within OPSM.
ItemSource String Yes Identifies the source system related to the item number. Item source is used to cross reference the item specific to a source system to identify the product in OPSM.
ItemUom String Yes Identifies the item UOM in the transactional system that is cross referenced to the Product Packaging Unit in OPSM.

WSDL

oracle.apps.pas.serials.serialsService.applicationModule.common.serviceinterface.LotsServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the LotsServiceAMService wsdl for this web service.

PackagingServiceAMService (Inbound)

These are inbound services into the OPSM system, which record the packaging operations (pack and unpack) that are used to maintain the packaging hierarchy within OPSM.

Operation Description
packPackage
packPackageAsync
The pack request will pack one or multiple single level or a multiple level packaging structure as defined in the request. Resulting in a complete packaging hierarchy within OPSM.
unpackPackage
unpackPackageAsync
The unpack request will unpack one or more packages within a single unpack request.

packPackage and packPackageAsync Operations

These operations are used to pack one or multiple single level or multiple level packaging structure as defined in the request.

Key Logic

Uniqueness Check

To validate uniqueness for seeded serial types (SGTIN-96, STGIN-198, and USN-1), this web service uses serial type + serial number.

To validate uniqueness for custom serial types, this web service uses product code + serial number. The following combinations of product information can be used:

  1. Product Code Only OR

  2. Product Code, Product Code Type, Product Code Variant, and Product UOM OR

  3. Product Detail Id

If Product Detail Id is entered the rest of the data is ignored. If the Product Detail Id is provided and it is invalid the processing will fail.

Required Input

Exceptions

Restrictions

An alternate Label and LabelType cannot be used to identify the package.

packPackage

Name Type Mandatory Description
PackSequence Long No Sequences the order in which the packPackage requests are processed.
Default: 1.
ParentLabel String Yes The primary label used to identify the package.
ParentLabelType String Yes The primary label type used to identify the package.
This must be a valid user defined value in the PAS_LABEL_TYPE lookup.
ParentProductCode String No Identifies the product code associated with the package.
ParentProductCodeType String No Identifies the product code type associated with the product code.
ParentProductCodeVariant String No Identifies the product code variant associated with the product code.
ParentProductUom String No Identifies the product code unit of measure associated with the product code.
ParentProductDetailID String No Identifies the product detail Id associated with the package.
If the product detail Id is entered, it will take precedence over the following entries:
  • Product Code only

  • Product Code, Product Code Type, Product Code Variant, and Product UOM

ReusableFlag String No Identifies whether the container is reusable. This value is used when adding a new parent container.
Valid values: 0,1.
Default: 0.
PackagingUnit String No Identifies the packaging unit. This value is used when adding a new parent container.
This must be a valid value in the PAS_PACKAGE_UNIT lookup.
Default: UNASSIGNED.
LabelPrintFormat String Yes Identifies the label print format for the package. This value is used when adding a new parent container.
This must be a valid value in the PAS_LABEL_PRINT_FORMAT lookup.
ChildLabel String Yes The primary label used to identify the package that is being packed into the parent package. This package must exist in OPSM.
ChildLabelType String Yes The primary label type used to identify the package that is being packed into the parent package.
This must be a value in the PAS_LABEL_TYPE lookup.
ChildProductCode String No Identifies the product code associated with the package.
ChildProductCodeType String No Identifies the product code type associated with the product code.
ChildProductCodeVariant String No Identifies the product code variant associated with the product code.
ChildProductUom String No Identifies the product code unit of measure associated with the product code.
ChildProductDetailID String No Identifies the product detail Id associated with the package.
If the product detail Id is entered, it will take precedence over the following entries:
  • Product Code only

  • Product Code, Product Code Type, Product Code Variant, and Product UOM

unpackPackage and unpackPackageAsync Operations

These operations are used to unpack one or more packages from a higher level package.

Key Logic

The primary Label and LabelType are used to identify the package that will be unpacked. For example if a bottle is packed within a box and the label information for the bottle is sent, the bottle will be unpacked from the box.

Required Input

Exceptions

Restrictions

An alternate Label and LabelType cannot be used to identify the package.

unpackPackage

Name Type Mandatory Description
Label String Yes The primary label used to identify the package.
LabelType String Yes The primary label type used to identify the package.
This must be a valid user defined value in the PAS_LABEL_TYPE lookup.
ProductCode String No Identifies the product code associated with the package.
ProductCodeType String No Identifies the product code type associated with the product code.
ProductCodeVariant String No Identifies the product code variant associated with the product code.
ProductUom String No Identifies the product code unit of measure associated with the product code.
ProductDetailId String No Identifies the product detail Id associated with the package.
If the product detail Id is entered, it will take precedence over the following entries:
  • Product Code only

  • Product Code, Product Code Type, Product Code Variant, and Product UOM

WSDL

oracle.apps.pas.serials.serialsService.applicationModule.common.serviceinterface.PackagingServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the PackagingServiceAMService wsdl for this web service.

ProductServiceAMService (Inbound)

The Product Service web service is an inbound asynchronous business service part of the interoperability solution of the OPSM system. This service enables external systems to create or update product and related product detail, product item, and product item UOM records in OPSM. This web service behaves similar to the Product Synchronization ODI process.

Operation Description
mergeProducts
mergeProductsAsync
Used to create a new product and related product detail, product item, and product item UOMs records or update an existing product and related product detail, product item, and product item UOM in OPSM from an external system.

mergeProducts and mergeProductsAsync Operations

These operations are used to create a new product or update an existing product in OPSM from an external system. Multiple records can be processed at one time.

Key Logic

ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom determine if the product detail being sent is an existing product detail or a new product detail. SourceSystem and ItemNumber determine if the item being sent is an existing item or a new item. SourceSystem, ItemNumber and ItemUom determine if the item UOM cross reference being sent is an existing item UOM or a new item UOM. Each entity in the input xml (product, product detail, item, and item uom cross reference) can be new or existing. If new, it will be created. If it is existing, it will be updated. If a field is sent in as blank, the existing data in that field will not be updated.

Required Input

At a minimum, the required product information and one required product detail must be provided.

Exceptions

Product

Name Type Mandatory Description
AttributeChar1 String No Indicates a segment of the user descriptive flexfield.
AttributeChar2 String No Indicates a segment of the user descriptive flexfield.
AttributeChar3 String No Indicates a segment of the user descriptive flexfield.
AttributeChar4 String No Indicates a segment of the user descriptive flexfield.
AttributeChar5 String No Indicates a segment of the user descriptive flexfield.
AttributeChar6 String No Indicates a segment of the user descriptive flexfield.
AttributeChar7 String No Indicates a segment of the user descriptive flexfield.
AttributeChar8 String No Indicates a segment of the user descriptive flexfield.
AttributeChar9 String No Indicates a segment of the user descriptive flexfield.
AttributeChar10 String No Indicates a segment of the user descriptive flexfield.
AttributeChar11 String No Indicates a segment of the user descriptive flexfield.
AttributeChar12 String No Indicates a segment of the user descriptive flexfield.
AttributeChar13 String No Indicates a segment of the user descriptive flexfield.
AttributeChar14 String No Indicates a segment of the user descriptive flexfield.
AttributeChar15 String No Indicates a segment of the user descriptive flexfield.
AttributeNumber1 String No Indicates a segment of the user descriptive flexfield.
AttributeNumber2 String No Indicates a segment of the user descriptive flexfield.
AttributeNumber3 String No Indicates a segment of the user descriptive flexfield.
AttributeNumber4 String No Indicates a segment of the user descriptive flexfield.
AttributeNumber5 String No Indicates a segment of the user descriptive flexfield.
AttributeTimestamp1 DateTime No Indicates a segment of the user descriptive flexfield.
AttributeTimestamp2 DateTime No Indicates a segment of the user descriptive flexfield.
AttributeTimestamp3 DateTime No Indicates a segment of the user descriptive flexfield.
AttributeTimestamp4 DateTime No Indicates a segment of the user descriptive flexfield.
AttributeTimestamp5 DateTime No Indicates a segment of the user descriptive flexfield.
ContainerSize Decimal Conditionally required.
Yes if PedigreeControlFlag = 1. Otherwise, No.
Indicates the number of units contained in a package of the product (For example, 60 or 100). This is also known as pack size.
ContainerType String No Indicates the type of packaging container.
This must be a valid value in the PAS_CONTAINER_TYPE lookup.
ControlledSubstanceFlag String No
Default = 0
A flag used to indicate if this product is a controlled substance or not.
CreateSerialsForShipFlag String No
Default = 0
A flag used to indicate if the system will create serials in the Oracle Pedigree and Serialization Manager system at the time of shipment.
Turn on when serials should not already exist and should be created. Turn off when serials should exist for a shipment transaction.
DosageForm String Conditionally required.
Yes if PedigreeControlFlag = 1. Otherwise, No.
Indicates the dosage form of the product (For example, TABLET or CAPSULE).
This must be a valid value in the PAS_DOSAGE_FORM lookup.
Manufacturer String Conditionally required.
Yes if PedigreeControlFlag = 1. Otherwise, No.
Identifies the manufacturer for the product.
PedigreeControlFlag String No
Default = 0
A flag used to indicate if a pedigree should be created for this product when it ships.
ProductCategory String No Identifies the category code for the product (For example, stimulants, depressants, anti-anxiety, and so on).
This must be a valid value in the PAS_PRODUCT_CATEGORY lookup.
ProductCode String Yes Identifies the product code.
ProductCodeType String Yes Identifies the type of product code (For example, NDC442, NDC532, NDC541, NDC542, and GTIN).
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditionally required:
  • If ProductCodeVariant = NOVARIANT this field is not required. Default = NOVARIANT.

  • If ProductCodeVariant not equal to NOVARIANT then the ProductCodeVariant is required.

Identifies the product code variant for the product.
A unique key value used in case the Produce Code and Product Code Type do not uniquely identify the product.
ProductName String Conditionally required.
Yes if PedigreeControlFlag = 1. Otherwise, No.
Identifies the name of the product.
ProductOwningSrcSys String For internal use only. Identifies the owning source system for the existing product record.
RecordInternalReturnFlag String No
Default = 0
Flag to activate the recording of returns from internal customers for this product.
RecordInternalShipmentFlag String No
Default = 0
Flag to activate the recording of shipments from internal customers for this product.
SerialControl String No
Default = OPSM Serialized
Indicates if the serials for this product are generated by the OPSM system or if the serials are externally generated. Values are OPSM Serialized and Externally Generated.
Strength String Conditionally required.
Yes if PedigreeControlFlag = 1. Otherwise, No.
Indicates the strength or potency for the product including the unit of measure (For example, 60 mg or 25 ml).
Product Details      
EpcCompanyPrefix String No Identifies the Electronic Product Code (EPC) company prefix assigned to the product.
EpcFilter String Conditionally required.
Yes if Serial Type = SGTIN-96 or SGTIN-198
Indicates the default filter to be used when building the epcGlobal serial number.
EpcNumber String Conditionally required.
Yes if Serial Type = SGTIN-96 or SGTIN-198
Indicates the Electronic Product Code (EPC) number assigned to the product.
EPC Number is required for SGTIN serial types or serial types that are associated to a serial type group where the Product Unit Identifier Formula is set to EPC Number.
For products associated with a GTIN product code type, the system populates the EPC Number with the value in the Product Code field and it cannot be changed.
LabelPrintFormat String No Identifies the print label format for the product and packaging unit (For example, Barcode, RFID, and so on).
This must be a valid value in the PAS_LABEL_PRINT_FORMAT lookup.
LowestSaleableUnitQuantity Decimal No Identifies the total number of the lowest saleable units contained in this packaging unit.
ProdLevelRangeCtrlFlag String No
Default is 0.
A flag used to indicate whether or not to use ranges when generating serials for product level serial types.
ProductDetailOwningSrcSys String For internal use only. Identifies the owning source system for the existing product detail record.
ProductUom String Yes Identifies the unit of measure for the product.
SerialIncrease String No
Default is 0.
Indicates how many additional serials should be generated above the quantity/percent requested (For example, 5, 10, or 12).
SerialIncreaseType String No
Default is Percent.
Indicates the overage type for the amount of serials to be over generated. Values are PERCENT and AMOUNT.
SerialType String Yes Indicates the type of serial that will be generated.
This must be a valid value in the PAS_SERIAL_TYPE lookup.
Product Items      
ItemDescription String No Identifies the description of the item number from the transactional system.
ItemNumber String Yes Identifies the item number from the transactional system
ItemUom String Yes Identifies the unit of measure of the item number as it exists in the transactional system.
SourceSystem String Yes Indicates the item source (transactional system) from which this item originates.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.

WSDL

oracle.apps.pas.setup.setupService.applicationModule.common.serviceinterface.ProductServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the ProductServiceAMService.wsdl for this web service.

SerialGenRequestServiceAMService (Inbound)

The Serial Generation Request web service is an inbound asynchronous business service part of the interoperability solution of the OPSM system. This service enables external systems to make requests for OPSM for serial generation.

Operation Description
createSerialGenerationRequest
createSerialGenerationRequestAsync
Used to create a new serial generation request within OPSM from an external system.
createProcessSerialGenerationRequest createProcessSerialGenerationRequestAsync Used to create and process a new serial generation request within OPSM from an external system.

createSerialGenerationRequest and createSerialGenerationRequestAsync Operations

These operations are used to create a new serial generation request within OPSM from an external system. Requests can then be processed to generate serials for the product. Requests can be created for a quantity of serials as well as a starting and ending serial number. Do not send in both types, each request must be for either a quantity or a starting and ending range. An item or product may be passed in as well and up to two referencing documents.

Key Logic

For information on manually submitting a serial generation request, see Submitting Serial Generation Requests.

Required Input

Exceptions

createSerialGenerationRequest

Name Type Mandatory Description
GenerationStatus String No The initial status of the serial generation request can be set to SUBMITTED or REQUESTED. When set to SUBMITTED, the serial generation request will automatically be submitted for processing. When set to REQUESTED, processing of the serial generation request must be manually initiated.
Valid values: REQUESTED, SUBMITTED.
Default: REQUESTED.
This must be a valid value in the PAS_GENERATION_STATUS lookup.
SourceSystem String Yes Identifies the source system initiating the serial generation request. The source system must match the source system on the Location setup in OPSM.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
SerialQuantity Decimal Conditional: One of the following combinations must be passed:
  • SerialQuantity

  • StartingSerialNumber

  • StartingSerialNumber and EndingSerialNumber

The quantity of serials requested.
StartingSerialNumber Decimal Conditional: One of the following combinations must be passed:
  • SerialQuantity

  • StartingSerialNumber

  • StartingSerialNumber and EndingSerialNumber

The starting serial number used to request a range of serials instead of a quantity. If a starting serial number is passed without an ending serial number, it is assumed that the request is for one serial number.
EndingSerialNumber Decimal Conditional: One of the following combinations must be passed:
  • SerialQuantity

  • StartingSerialNumber

  • StartingSerialNumber and EndingSerialNumber

The ending serial number used to request a range of serials instead of a quantity.
IgnoreOverageFlag String Yes Indicates that the overage amount defined in the product detail definition should not be applied in the calculation of the quantity of serial to generate.
Valid values:
  • 1 = Do not apply overage amount in the calculation of the quantity of serials for generation

  • 0 = Apply overage amount


Default: 0.

Note: When a serial generation request is created through the Work Order Serialization process, this flag is always set to "1" since the work order processing logic calculates the overage amount.

SaleableUnitFlag String No Indicates that the generated serials should be flagged as saleable units.
Default: 1.
LocationId Long Conditional: Either the LocationId or Location is required. Identifies the location that initiated the serial generation request.
Location String Conditional: Either the LocationId or Location is required. Identifies the location that initiated the serial generation request.
SerialUsage String Yes Identifies the serial usage.
This must be a valid user defined value in the PAS_SERIAL_USAGE lookup.
ProductDetailId Long Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Unique identifier for the Product Detail record. If the ProductDetailId is provided, the ProductDetailId will be used to locate the product detail record.
ProductCode String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
ProductCodeType String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the type of product code used in identification of the product in OPSM.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the specific variation of the product code when a product code is reused for different products over time.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
Default: NOVARIANT.
ProductUom String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product packaging unit where a specified product code is used for multiple packaging levels.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
ItemNumber String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item number in the transactional system that is cross referenced to a product within OPSM.
If Item information and Product information are both provided, the Product information will take precedence in identifying the product.
ItemSource String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the source system related to the item number. Item source is used to cross reference the item specific to a source system to identify the product in OPSM.
If Item information and Product information are both provided, the Product information will take precedence in identifying the product.
SerializedUom String Conditional: If the location requires identification of the product or the serial type is product specific, one of the following combinations must be sent to identify the product detail:
  • ProductDetailId

  • ItemNumber, ItemSource, SerializedUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item UOM in the transactional system that is cross referenced to the product packaging unit in OPSM.
LotId Long No Unique identifier for the lot in OPSM.
LotLocation String No The location associated with the lot.
LotSource String No The Source System associated with the lot.
LotNumber String No Lot number associated to the lot. The LotNumber, LotLocation, and ProductDetailId are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
ParentLot String No Identifies the parent lot number associated with the lot.
OriginationDate Date No The origination date of the lot. Origination date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
ExpirationDate Date No The expiration date of the lot. Expiration date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
BestByDate Date No The lot best by date. Best by date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
SellByDate Date No The lot sell by date. Sell by date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
RetestDate Date No The lot retest date. Retest date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
Segment1 String No Identifies the 1st segment of the document (Document Organization) used as reference when commissioning the serials.
Segment2 String No Identifies the 2nd segment of the document (Document Number) used as reference when commissioning the serials.
Segment3 String No Identifies the 3rd segment of the document (Document Type) used as reference when commissioning the serials.
Segment4 String No Identifies the 4th segment of the document (Document Line Number) used as a reference when commissioning serials.
Segment5 String No Identifies the 5th segment of the document used as a reference when commissioning serials.
Segment6 String No Identifies the 6th segment of the document used as a reference when commissioning serials.
Segment7 String No Identifies the 7th segment of the document used as a reference when commissioning serials.
Segment8 String No Identifies the 8th segment of the document used as a reference when commissioning serials.
Segment9 String No Identifies the 9th segment of the document used as a reference when commissioning serials.
Segment10 String No Identifies the 10th segment of the document used as a reference when commissioning serials.
AlternateSegment1 String No Identifies the 1st (Document Organization) segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment2 String No Identifies the 2nd (Document Number) segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment3 String No Identifies the 3rd (Document Type) segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment4 String No Identifies the 4th (Document Line Number) segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment5 String No Identifies the 5th segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment6 String No Identifies the 6th segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment7 String No Identifies the 7th segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment8 String No Identifies the 8th segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment9 String No Identifies the 9th segment of the alternate document used as a reference when commissioning the serials.
AlternateSegment10 String No Identifies the 10th segment of the alternate document used as a reference when commissioning the serials.

createProcessSerialGenerationRequest and createProcessSerialGenerationRequestAsync Operations

These operations are used to create and process a new serial generation request within OPSM from an external system. Though the asynchronous version, createProcessSerialGenerationRequestAsync, is available only the synchronous version, createProcessSerialGenerationRequest, is supported. These operations differ from the createSerialGenerationRequest and the createSerialGenerationRequestAsync operations in that a separate step for submitting the request for processing is not needed. The xml elements for both the createProcessSerialGenerationRequest and the createSerialGenerationRequest are identical other than the type of the request. Requests can be created for a quantity of serials as well as a starting and ending serial number. Do not send in both types, each request must be for either a quantity or a starting and ending range. An item or product may be passed in as well and up to two referencing documents.

Key Logic

Required Input

Exceptions

createProcessSerialGenerationRequest

The request xml for createProcessSerialGenerationRequest is the same as that for createSerialGenerationRequest except for:

Name Type Mandatory Description
GenerationStatus String No Irrespective of the GenerationStatus in the request xml, it will be overwritten with a new status SYNC_REQ_SUBMITTED and the request will be processed immediately.
Values are: Any lookup value in the PAS_GENERATION_STATUS lookup type.
Default value is: SYNC_REQ_SUBMITTED.

The createProcessSerialGenerationRequest returns a response xml back which has most of the elements in the request xml. The values are queried from the serial generation record after the processing is done. SerialGenerationRequestResponse has the following additional elements:

Name Type Description
EpcNumber String The EpcNumber from the Product Detail record.
GlobalLocationNumber String The GlobalLocationNumber from the Location record.
StatusMessage String When there are errors, the following message is returned: No serials were generated. See the Maintain Serial Generation Request page in OPSM for details.
When there are warnings, the following message is returned: Warning messages were generated during serial generation. See the Maintain Serial Generation Request page in OPSM for details.
When there are no errors or warnings, no message is returned.

SerialGenerationRequestResponse has a child element SerialNumberList which is a list of serial numbers generated.

WSDL

oracle.apps.pas.transactions.serialGenRequestService.applicationModule.common.serviceinterface.SerialGenRequestServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the SerialGenRequestServiceAMService wsdl for this web service.

SerialsServiceAMService (Inbound)

These are inbound services into the OPSM system that are used to update the status and usage of one or multiple serials. Common uses for this service are to commission or decommission serials, change the serial usage, and mark serials as counterfeit. The serials can be selected based on various attributes such as, primary document number, label, and list. All serials contained within the selection will be updated with the passed serial attributes. If an attribute is not passed, then its value will not be changed.

For each serial status and usage update performed, the Serials Service web service will create a transaction. The transactions that can be created by this web service are:

All of the transactions that are created by the Serials Service web service can be viewed and maintained using the Maintain Transactions page in OPSM.

For more information on managing transactions in OPSM, see Understanding Transactions.

Operation Description
editSerialStatusAndUsageByLabel
editSerialStatusAndUsageByLabelAsync
These operations will update serial status, serial usage, and counterfeit status information for a given Label and LabelType combination and will utilize packaging hierarchy to update the top level serial for the given label and label type and any serial that is packed within it.
A Commission Serials, Decommission Serials, Reserve Serials, or Edit Serials transaction will be created depending on the type of edit performed.
editSerialStatusAndUsageByPrimaryDocument
editSerialStatusAndUsageByPrimaryDocumentAsync
These operations will update serial status, serial usage, and counterfeit status information for a group of serial numbers identified by their primary document. These operations also support the commissioning of serials.
A Commission Serials, Decommission Serials, Reserve Serials, or Edit Serials transaction will be created depending on the type of edit performed.
editSerialStatusAndUsageByList
editSerialStatusAndUsageByListAsync
These operations will update serial status, serial usage, and counterfeit status information for a given list of serial numbers. These operations also support the commissioning of serials.
A Commission Serials, Decommission Serials, Reserve Serials, or Edit Serials transaction will be created depending on the type of edit performed.

editSerialStatusAndUsageByLabel and editSerialStatusAndUsageByLabelAsync Operations

These operations will update serial status, serial usage, and counterfeit status information for a Label and LabelType combination and will utilize packaging hierarchy to update the top level serial for the given Label and LabelType and any serial that is packed within it. These operations are performed only against existing serial numbers. A Decommission Serials or Edit Serials transaction will be created depending on the type of edit performed.

Key Logic

Required Input

Exceptions

Restrictions

This service does not support reserving or commissioning of serials (SerialStatus = RESERVED or SerialStatus = COMMISSIONED).

This service does not support updating serials based on the alternate packaging Label and LabelType.

editSerialStatusandUsageByLabel

Name Type Mandatory Description
Label String Yes Identifies the primary identifier used for selection of the serials that will be updated.
LabelType String Yes Identifies the type of primary identifier used for selection of the serials that will be updated. For example, SGTIN-96.
This must be a valid user defined value in the PAS_LABEL_TYPE lookup.
TransactionSourceName String Yes Identifies the system source name for the transaction.
This must be a valid user defined value in the PAS_SOURCE_SYSTEM lookup.
SerialStatus String No Identifies the status that will be used for updating the selected serials.
This must be a valid status in the PAS_SERIAL_STATUS lookup.
ReasonCode String Conditional: Required if the SerialStatus is DECOMMISSIONED. Identifies the reason code on a decommissioned serial.
This must be a valid user defined value in the PAS_REASON_CODE lookup.
SerialUsage String No Identifies the serial usage.
This must be a valid user defined value in the PAS_SERIAL_USAGE lookup.
CounterfeitStatus String No Identifies the serial as COUNTERFEIT, NOTCOUNTERFEIT, or SUSPECT.
CounterfeitDate Date No Notes the date of the counterfeit status.

editSerialStatusAndUsageByPrimaryDocument and editSeialStatusAndUsageByPrimaryDocumentAsync Operations

These operations will update SerialStatus, SerialUsage, and CounterfeitStatus information for a group of serial numbers identified by their primary document. These operations also support the commissioning of serials. These operations are performed only against existing serial numbers.

These operations will also create transactions in OPSM for every web service call. You can view the transactions and their status using the Maintain Transactions page in OPSM. If the web service ends in error then error messages are recorded in the database and they can be viewed on the Maintain Transactions page in OPSM.

These operations return a response XML back which has most of the elements in the request XML along with the generic error message if there are any errors that occur during processing. A Reserve Serials, Commission Serials, Decommission Serials, or Edit Serials transaction will be created depending on the type of edit performed.

Key Logic

Required Input

The primary document information on the serial is the document information recorded on the serial when the serial is generated. Identification of the primary document information at serial generation is optional. Therefore, serials may not contain a primary document identifier if it is not part of the standard business process.

Exceptions

Restrictions

editSerialStatusAndUsageByPrimaryDocument

Name Type Mandatory Description
Segment1 String No Identifies the 1st segment (Document Organization) of the primary document for selection of serials.
Segment2 String Yes Identifies the 2nd segment (Document Number) of the primary document for selection of serials.
Segment3 String Yes Identifies the 3rd segment (Document Type) of the primary document for selection of serials.
If Segment3 (Document Type) does not exist in the lookup PAS_DOCUMENT_TYPE then it will be added to this lookup and a message will be sent informing you about this.
Segment4 String No Identifies the 4th segment (Document Line Number) of the primary document for selection of serials.
Segment5 String No Identifies the 5th segment of the primary document for selection of serials.
Segment6 String No Identifies the 6th segment of the primary document for selection of serials.
Segment7 String No Identifies the 7th segment of the primary document for selection of serials.
Segment8 String No Identifies the 8th segment of the primary document for selection of serials.
Segment9 String No Identifies the 9th segment of the primary document for selection of serials.
Segment10 String No Identifies the 10th segment of the primary document for selection of serials.
TransactionSourceName String Yes Identifies the system source name for the transaction.
This must be a valid user defined value in the PAS_SOURCE_SYSTEM lookup.
OnlyReservedSerials String No Indicates that only serials that are at a RESERVED status should be selected for update.
Valid values: 1 = Reserve Serial Only, 0 = All Statuses.
Default: 0.
SerialStatus String No Identifies the status that will be used for updating the selected serials.
This must be a valid status in the PAS_SERIAL_STATUS lookup.
ReasonCode String Conditional: Required if the SerialStatus is DECOMMISSIONED. Identifies the reason code on a decommissioned serial.
This must be a valid user defined value in the PAS_REASON_CODE lookup.
SerialUsage String No Identifies the serial usage.
This must be a valid user defined value in the PAS_SERIAL_USAGE lookup.
CounterfeitStatus String No Identifies the serial as COUNTERFEIT, NOTCOUNTERFEIT, or SUSPECT.
CounterfeitDate Date No Notes the date of the counterfeit status.
ProductDetailId Long Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom

Unique identifier for the Product Detail record. If the ProductDetailId is provided, the ProductDetailId will be used to locate the product detail record.
ProductCode String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom

Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUom are all provided, ProductDetailId will take precedence in identifying the product.
ProductCodeType String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom

Identifies the type of product code used in identification of the product in OPSM.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUom are all provided, ProductDetailId will take precedence in identifying the product.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom

Identifies the specific variation of the product code when a product code is reused for different products over time.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUom are all provided, ProductDetailId will take precedence in identifying the product.
Default: NOVARIANT.
ProductUom String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom

Identifies the product packaging unit where a specified product code is used for multiple packaging levels.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant, and ProductUom are all provided, ProductDetailId will take precedence in identifying the product.
LotId Long Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

Unique identifier for the Lot record in OPSM.
If the LotId is provided, the LotId will be used to locate the lot record.
LotNumber String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

Lot number associated to the lot. The LotNumber, LotSource, LotLocation, and ProductDetailId are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
LotSource String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

The source system associated to the lot.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
LotLocation String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

The location associated to the lot. The location can be null if the source system does not associate a location reference to the lot information.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
This must be a valid location defined in OPSM.
CommissionSegment1 String No Identifies the 1st segment of the document (Document Organization) used as reference when commissioning the serials.
CommissionSegment2 String No Identifies the 2nd segment of the document (Document Number) used as reference when commissioning the serials.
CommissionSegment3 String No Identifies the 3rd segment of the document (Document Type) used as reference when commissioning the serials.
If CommissionSegment3 (Document Type) does not exist in the lookup PAS_DOCUMENT_TYPE then it will be added to this lookup and a message will be sent informing you about this.
CommissionSegment4 String No Identifies the 4th segment of the document used as a reference when commissioning serials.
CommissionSegment5 String No Identifies the 5th segment of the document used as a reference when commissioning serials.
CommissionSegment6 String No Identifies the 6th segment of the document used as a reference when commissioning serials.
CommissionSegment7 String No Identifies the 7th segment of the document used as a reference when commissioning serials.
CommissionSegment8 String No Identifies the 8th segment of the document used as a reference when commissioning serials.
CommissionSegment9 String No Identifies the 9th segment of the document used as a reference when commissioning serials.
CommissionSegment10 String No Identifies the 10th segment of the document used as a reference when commissioning serials.

editSerialStatusAndUsageByList and editSerialStatusAndUsageByListAsync Operations

These operations will update SerialStatus, SerialUsage, and CounterfeitStatus information for a given list of serial numbers. These operations also support the commissioning of serials. These operations are performed only against existing serial numbers. A Reserve Serials, Commission Serials, Decommission Serials, or Edit Serials transaction will be created depending on the type of edit performed.

Key Logic

Required Input

Exceptions

Restrictions

No Restrictions

editSerialStatusAndUsageByList

Name Type Mandatory Description
SerialStatus String No Identifies the status that will be used for updating the selected serials.
This must be a valid status in the PAS_SERIAL_STATUS lookup.
ReasonCode String Conditional: Required if the SerialStatus is DECOMMISSIONED. Identifies the reason code on a decommissioned serial.
This must be a valid user defined value in the PAS_REASON_CODE lookup.
SerialUsage String No Identifies the serial usage.
This must be a valid user defined value in the PAS_SERIAL_USAGE lookup.
CounterfeitStatus String No Identifies the serial as COUNTERFEIT, NOTCOUNTERFEIT, or SUSPECT.
CounterfeitDate Date No Notes the date of the counterfeit status.
ProductDetailId Long Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Unique identifier for the Product Detail record. If the ProductDetailId is provided, the ProductDetailId will be used to locate the product detail record.
ProductCode String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
ProductCodeType String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the type of product code used in identification of the product in OPSM.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the specific variation of the product code when a product code is reused for different products over time.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
Default: NOVARIANT.
ProductUOM String Conditional: One of the following combinations is required to identify the product when updating the SerialStatus to COMMISSIONED:
  • ProductDetailId

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product packaging unit where a specified product code is used for multiple packaging levels.
If ProductDetailId, ProductCode, ProductCodeType, ProductCodeVariant and ProductUOM are all provided, ProductDetailId will take precedence in identifying the product.
LotId Long Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

Unique identifier for the Lot record in OPSM. If the LotId is provided, the LotId will be used to locate the lot record.
LotNumber String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

Lot number associated to the lot. The LotNumber, LotSource, LotLocation, and ProductDetailId are used to uniquely identify the lot number to be created or updated if the LotId is not provided.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
LotSource String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

The source system associated to the lot.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
LotLocation String Conditional: One of the following combinations is required to identify the lot when updating the SerialStatus to COMMISSIONED:
  • LotId

  • LotNumber, LotSource, LotLocation

The location associated to the lot. The location can be null if the source system does not associate a location reference to the lot information.
If LotId, LotNumber, LotSource and LotLocation are all provided, LotId will take precedence in identifying the lot.
This must be a valid location defined in OPSM.
LotLocationID String No The lot location Id associated to the lot location.
TransactionSourceName String Yes Identifies the source name for the transaction.
This must be a valid user defined value in the PAS_SOURCE_SYSTEM lookup.
CommissionSegment1 String No Identifies the 1st segment of the document (Document Organization) used as reference when commissioning the serials.
CommissionSegment2 String No Identifies the 2nd segment of the document (Document Number) used as reference when commissioning the serials.
CommissionSegment3 String No Identifies the 3rd segment of the document (Document Type) used as reference when commissioning the serials.
If CommissionSegment3 (Document Type) does not exist in the lookup PAS_DOCUMENT_TYPE then it will be added to this lookup and a message will be sent informing you about this.
CommissionSegment4 String No Identifies the 4th segment of the document (Document Line Number) used as a reference when commissioning serials.
CommissionSegment5 String No Identifies the 5th segment of the document used as a reference when commissioning serials.
CommissionSegment6 String No Identifies the 6th segment of the document used as a reference when commissioning serials.
CommissionSegment7 String No Identifies the 7th segment of the document used as a reference when commissioning serials.
CommissionSegment8 String No Identifies the 8th segment of the document used as a reference when commissioning serials.
CommissionSegment9 String No Identifies the 9th segment of the document used as a reference when commissioning serials.
CommissionSegment10 String No Identifies the 10th segment of the document used as a reference when commissioning serials.

SerialsListVO

Name Type Mandatory Description
ItemSerialNumber String Yes Identifies the serials that will be updated by the operation.

WSDL

oracle.apps.pas.serials.serialsService.applicationModule.common.serviceinterface.SerialsServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the SerialsServiceAMService wsdl for this web service.

TransactionsServiceAMService (Inbound)

The Transaction web service is an inbound asynchronous business service part of the interoperability solution of the OPSM system. This service enables external systems to record an import, shipment, or return transaction into the OPSM system. In addition, the system shall optionally enable:

Operation Description
createTransaction
createTransactionAsync
The createTransaction request will create a SHIPMENT, RETURN, or IMPORT transaction in OPSM. After the transaction is created, a business event is triggered to automatically process the newly created transaction.

createTransaction and createTransactionAsync Operations

These operations are used to create a shipment, return, or import transaction in OPSM.

Key Logic

Required Input

Exceptions

Restrictions

An alternate Label and LabelType cannot be used to identify the package.

transactionVO

Name Type Mandatory Description
TransactionSourceName String Yes Uniquely identifies the source system where the transaction originated.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
TransactionType String Yes Identifies the transaction type. Valid values are: SHIPMENT, RETURN, and IMPORT.
This must be a valid value in the PAS_TRANSACTION_TYPE lookup.
InternalTransactionFlag String Yes Indicates whether a change of ownership occurs as a result of the transaction. On a shipment or return transaction, if the transaction is flagged as internal the state of the serial will not be modified. Internal transactions can optionally be recorded in OPSM. This setting is configurable through the product definition and product location overrides.
Valid values:
  • 1 = Yes (internal)

  • 0 = No

TransDate dateTime (YYYY-MM-DDTHH:mm:ss:SSSS) Yes The date and time that the transaction occurred.
TransLocation String Yes The location where the transaction occurred.
This must be a valid location in OPSM.
TransactionQuantity Decimal Yes The quantity of the product that was transacted.
TransactionUnitofMeasure String Yes The UOM associated with the quantity.
ItemNumber String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item number in the transactional system that is cross referenced to a product within OPSM.
ItemSource String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the source system related to the item number. Item source is used to cross reference the item specific to a source system to identify the product in OPSM.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
ItemUOM String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item UOM in the transactional system that is cross referenced to the product packaging unit in OPSM.
ProductCode String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM.
ProductCodeType String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the type of product code used in identification of the product in OPSM.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the specific variation of the product code when a product code is reused for different products over time.
Default: NOVARIANT.
ProductUOM String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUOM or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product packaging unit where a specified product code is used for multiple packaging levels.
LotNumber String Yes Lot number associated to the lot. The LotNumber, LotSource, LotLocation, and Product information are used to uniquely identify the lot number to be created or updated.
LotSource String Yes The source system associated to the lot.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
LotLocation String No The location associated to the lot. The location can be null if the source system does not associate a location reference to the lot information.
This must be a valid location in OPSM.
ParentLot String No Identifies the parent lot number associated with the lot.
ImportSerialsFlag String Yes Not used.
EventCreatedBy String No The created by identity from the capturing application.
EventCreatedDate dateTime (YYYY-MM-DDTHH:mm:ss:SSSS) No The date and time at which the capturing application asserts the event occurred.
EventCreatedSourceName String No The source system identity of the capturing application.
EventUpdatedBy String No The updated by identity from the capturing application.
EventUpdatedDate dateTime (YYYY-MM-DDTHH:mm:ss:SSSS) No The date and time at which the capturing application asserts the event data was updated.
EventUpdatedSourceName String No The source system identity of the capturing application that updated the event.
AttributeCategory String No Structure definition of the user descriptive flexfields.
AttributeChar1 String No User defined character field.
AttributeChar2 String No User defined character field.
AttributeChar3 String No User defined character field.
AttributeChar4 String No User defined character field.
AttributeChar5 String No User defined character field.
AttributeChar6 String No User defined character field.
AttributeChar7 String No User defined character field.
AttributeChar8 String No User defined character field.
AttributeChar9 String No User defined character field.
AttributeChar10 String No User defined character field.
AttributeChar11 String No User defined character field.
AttributeChar12 String No User defined character field.
AttributeChar13 String No User defined character field.
AttributeChar14 String No User defined character field.
AttributeChar15 String No User defined character field.
AttributeNumber1 Decimal No User defined numeric field.
AttributeNumber2 Decimal No User defined numeric field.
AttributeNumber3 Decimal No User defined numeric field.
AttributeNumber4 Decimal No User defined numeric field.
AttributeNumber5 Decimal No User defined numeric field.
AttributeTimeStamp1 Decimal No User defined timestamp field.
AttributeTimeStamp2 Decimal No User defined timestamp field.
AttributeTimeStamp3 Decimal No User defined timestamp field.
AttributeTimeStamp4 Decimal No User defined timestamp field.
AttributeTimeStamp5 Decimal No User defined timestamp field.

TransactionProductVO

Name Type Mandatory Description
ProductCode String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product in OPSM. The product is uniquely identified using the ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM.
ProductCodeType String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the type of product code used in identification of the product in OPSM.
This must be a valid value in the PAS_PRODUCT_CODE_TYPE lookup.
ProductCodeVariant String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the specific variation of the product code when a product code is reused for different products over time.
Default: NOVARIANT.
ProductUOM String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the product packaging unit where a specified product code is used for multiple packaging levels.
ItemNumber String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item number in the transactional system that is cross referenced to a product within OPSM.
ItemSource String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the source system related to the item number. Item source is used to cross reference the item specific to a source system to identify the product in OPSM.
ItemUom String Conditional: One of the following combinations must be sent to identify the product detail:
  • ItemNumber, ItemSource, ItemUom or

  • ProductCode, ProductCodeType, ProductCodeVariant, and ProductUOM

Identifies the item UOM in the transactional system that is cross referenced to the product packaging unit in OPSM.
ItemIdentifier Long No Not used.
LotNumber String Yes Lot number associated to the lot. The LotNumber, LotSource, LotLocation, and Product information are used to uniquely identify the lot number to be created or updated.
LotSource String Yes The source system associated to the lot.
This must be a valid value in the PAS_SOURCE_SYSTEM lookup.
LotLocation String No The location associated to the lot. The location can be null if the source system does not associate a location reference to the lot information.
This must be a valid location in OPSM.
ParentLot String No Identifies the parent lot number associated with the lot.
Origination Date Date No The origination date of the lot. Origination date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
ExpirationDate Date No The expiration date of the lot. Expiration date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
BestByDate Date No The lot best by date. Best by date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
SellByDate Date No The lot sell by date. Sell by date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.
RetestDate Date No The lot retest date. Retest date is used to create the lot when OPSM is configured to allow creation of the lot when the transaction is processed and the lot does not already exist.

TransactionSerialAssocVO

Name Type Mandatory Description
ItemSerialNumber String Yes A unique identifier assigned for identification of a specific unit of a product.
SerialType String Yes Identifies the type of serial number.
This must be a valid value in the PAS_SERIAL_TYPE lookup.
SerialIdentification String No Unique identification of the TransactionSerialAssoc record. Used in conjunction with the ParentSerialIdentification to establish hierarchy.
ParentSerialIdentification String No Identifies the TransactionSerialAssoc instance that is the parent of the current TransactionSerialAssoc instance.
ShippedItemFlag String Yes Identifies the serial as the shipped or transacted serial for the transaction.
Valid values: 1 = Yes, 0 = No.
ManufacturedDate Date No Identifies the date the product was manufactured. This value is used to populate the Manufactured Date in the Serials table when the serial is added during processing of the shipment transaction.
SerialUsage String No Identifies the serial usage. This value is used to populate the Serial Usage in the Serials table when the serial is added during processing of the shipment transaction.
This must be a valid user defined value in the PAS_SERIAL_USAGE lookup.
SaleableUnitFlag String No Identifies the serial as a saleable unit. This value is used to populate the Saleable Unit Flag in the Serials table when the serial is added during processing of the shipment transaction.
Valid values: 1 = Yes, 0 = No.

TransactionLabelVO

Name Type Mandatory Description
Label String Yes The primary label used to identify the package.
LabelType String Yes The primary label type used to identify the package.
This must be a valid user defined value in the PAS_LABEL_TYPE lookup.
ParentLabel String No The primary ParentLabel and ParentLabelType are used to establish the packaging hierarchy where the Label and LabelType is packed into the ParentLabel and ParentLabelType.
ParentLabelType String No The primary ParentLabel and ParentLabelType are used to establish the packaging hierarchy where the Label and LabelType is packed into the ParentLabel and ParentLabelType.
This must be a valid value in the PAS_LABEL_TYPE lookup.
ShippedItemFlag String Yes Identifies the label as the shipped or transacted serial for the transaction.
Valid values: 1 = Yes, 0 = No.
ReusableFlag String No Identifies the pack as reusable. This value is used in the creation of a new pack during processing of the transaction.
Valid values: 1 = Yes, 0 = No.
PackageUnit String No Identifies the packaging unit associated with the package.
This must be a valid value in the PAS_PACKAGE_UNIT lookup.
LabelPrintFormat String No Identifies the label print format associated with the pack. This value is used for creation of new packs when processing the transaction.
This must be a valid value in the PAS_LABEL_PRINT_FORMAT lookup.

TransactionAddressesVO

Name Type Mandatory Description
AddressCode String Yes Identifies the address as a source or destination address.
This must be a valid value in the PAS_ADDRESS_CODE lookup.
AddressType String Yes Identifies the type of address.
This must be a valid value in the PAS_ADDRESS_TYPE lookup.
Name String Yes The business name associated with the address.
Street1 String No Used to hold a portion of the street address.
Street2 String No Used to hold a portion of the street address.
Street3 String No Used to hold a portion of the street address.
Street4 String No Used to hold a portion of the street address.
City String No The city of the transaction address.
StateOrRegion String No The state or region of the transaction address.
PostalCode String No The postal code of the transaction address.
Country String No The country of the transaction address.
GlobalLocationNumber String No The Global Location Number associated with the transaction address.
Contact Name String No The contact name for the transaction address.
ContactPhone String No The contact phone number for the transaction address.
ContactEmail String No The contact email for the transaction address.

TransactionDocumentVO

Name Type Mandatory Description
PrimaryFlag String Yes Set to indicate that this reference document is the primary reference document. Only one reference document per transaction can be flagged as the primary.
Segment1 String No The 1st segment (Document Organization) of the reference document.
Segment2 String No The 2nd segment (Document Number) of the reference document.
Segment3 String No The 3rd segment (Document Type) of the reference document.
OPSM will automatically add a new Document Type to the PAS_DOCUMENT_TYPE lookup when processing the transaction if it does not exist.
Segment4 String No The 4th segment (Document Line Number) of the reference document.
Segment5 String No The 5th segment of the reference document.
Segment6 String No The 6th segment of the reference document.
Segment7 String No The 7th segment of the reference document.
Segment8 String No The 8th segment of the reference document.
Segment9 String No The 9th segment of the reference document.
Segment10 String No The 10th segment of the reference document.
PedigreeDocumentType String No The code used to identify the document type on the pedigree.

WSDL

oracle.apps.pas.transactions.transactionsService.applicationModule.common.serviceinterface.TransactionsServiceAMService.wsdl

For detailed descriptions of all input and output parameters, please refer to the TransactionsServiceAMService wsdl for this web service.

QueryService (Inbound)

The Query web service is an inbound synchronous business service part of the interoperability solution of the OPSM system. This service enables an external system to fetch the events that are recorded in the OPSM system. In addition, the OPSM system can optionally use EPCIS policies to restrict a user on a particular EPC code.

Operation Description
getQueryNames This operation will return all the queries that the Query web service supports.
getVendorVersion This operation will return the version implemented by the vendor.
getStandardVersion This operation will return the EPCIS implemented version.
poll This operation will return the events based on the parameters provided and the access of the user.

getQueryNames Operation

This operation is used to fetch all of the Query Names that the EPCIS Query web service supports,

Key Logic

There are only two queries (SimpleEventQuery and SimpleMasterDataQuery) that are supported by the EPCIS Query web service.

Required Input

No input is required.

Exceptions

None

Restrictions

None

getVendorVersion Operation

This operation is used to fetch versions implemented by the vendor.

Key Logic

Return it as null. This value needs to be taken care of by the vendor.

Required Input

No input is required.

Exceptions

None

Restrictions

None

getStandardVersion Operation

This operation is used to fetch the EPCIS version implemented.

Key Logic

EPCIS 1.0 is implemented, so 1.0 is returned every time.

Required Input

No input is required.

Exceptions

None

Restrictions

None

poll Operation

This operation is used to fetch the events present in the EPCIS database based on various input parameters and access of the user.

Key Logic

EPCIS 1.0 is implemented, so 1.0 is returned every time.

Required Input

Exceptions

For more information, see Understanding the EPCIS Repository Setup Process.

Restrictions

None

Input Request for Poll

Name Type Mandatory Description
queryName String Yes It can be either SimpleEventQuery or SimpleMasterDataQuery.
name String No/Yes (see details that follow) Refer to the following tables for all combinations.
value String/Integer/Float/Date/List No/Yes (see details that follow) Refer to the following tables for all combinations.

When queryName = SimpleEventQuery:

<param> <value> DataType Can Specify Multiple Values Enclosed in <string> </string> Description
eventType String Yes Yes Identifies the type of event that needs to be fetched.
EQ_action String Yes Yes Identifies the action in the event to be fetched. It can be ADD, OBSERVE, or DELETE.
GE_eventTime
LT_eventTime
ISO 8601 Date Format YYYY-MM-DDTHH:MMZ.
Hours, minutes, and offset is mandatory.
No No Identifies the eventTime of the event (when the event occurred).
  • GE: Greater than or equal to

  • LT: Less Than

LT_recordTime
GE_recordTime
ISO 8601 Date Format YYYY-MM-DDTHH:MMZ.
Hours, minutes, and offset is mandatory.
No No Identifies the Time when the event was captured.
  • GE: Greater than or equal to

  • LT: Less Than

EQ_bizStep String Yes Yes Identifies the business step in the event.
EQ_disposition String Yes Yes Identifies the disposition step in the event.
EQ_readPoint String Yes Yes Identifies the readpoint in the event.
EQ_bizLocation String Yes Yes Identifies the business location in the event.
EQ_bizTransaction_type String Yes Yes Identifies the type in the business step of the event.
MATCH_epc
MATCH_parentID
MATCH_anyEPC
MATCH_epcClass
String, Range Yes Yes Identifies the epc codes in the event.
  • epc: Matches the epcList and childEpc

  • parentId: Matches the parent epc code

  • anyEpc: Matches the parent epc code, child epc, and epc list

  • epcClass: Matches the epc class code

EQ_quantity
LT_quantity
LE_quantity
GE_quantity
GT_quantity
Integer, Float No No Identifies the quantity in the event.
  • EQ: Equals

  • LT: Less than

  • LE: Less than or equal to

  • GE: Greater than or equal to

  • GT: Greater than

orderBy eventTime, recordTime, quantity, <http://namespace>#<customtag> No No Specifies the parameter to be used to arrange the returned events.
orderDirection ASC, DESC No No Specifies the arrangement order of the events. orderBy is mandatory with this parameter.
eventCountLimit Integer No No Count of events that should be picked up from the top after arranging them according to the specified order.
Cannot be entered with maxEventCount, but orderBy is mandatory with this parameter.
maxEventCount Integer No No Maximum number of events that should be returned.
Cannot be entered with eventCountLimit.
WD_bizLocation String Yes Yes Identifies the bizlocation parameter of the events with descendents referred from the master data table.
WD_readPoint String Yes Yes Identifies the read point parameter of the events with descendents referred from the master data table.
EQ_fieldname String, Integer, Float, Date, List Yes Yes (if String type is used) Identifies the custom tag.
  • EQ: Equal to

GT_fieldname Integer, Float, Date No No Identifies the custom tag.
  • GT: Greater than

LT_fieldname Integer, Float, Date No No Identifies the custom tag.
  • LT: Less than

LE_fieldname Integer, Float, Date No No Identifies the custom tag.
  • LE: Less than or equal to

GE_fieldname Integer, Float, Date No No Identifies the custom tag .
  • GE: Greater than or equal to

EXISTS_fieldname N/A N/A N/A Checks for the existence of the custom tag in the event.
HASATTR_fieldname String Yes Yes Checks for the vocabulary element Id (which has specified value) for the specified custom tag in the event.
EQATTR_fieldname_attrname String Yes Yes Checks for the value of the specified custom tag which is one of the vocabulary element ids which has the attribute name and value specified.

When queryName = SimpleMasterDataQuery:

<param> <value> DataType Can Specify Multiple Values Enclosed in <string> </string> Description
includeAttributes (required) Boolean (true/false) No No Determines whether the vocabulary elements are returned with attributes or not.
includeChildren (required) Boolean (true/false) No No Determines whether the vocabulary elements are returned with children or not.
vocabularyName String Yes Yes Identifies the vocabulary type.
attributeNames String Yes Yes Identifies the vocabulary elements which have the specified attributes.
EQ_name String Yes Yes Identifies the vocabulary element ID in the vocabulary element.
WD_name String Yes Yes Identifies the vocabulary element ID in the vocabulary element and includes them with the children.
HASATTR String Yes Yes Identifies the attribute ID in the vocabulary element and returns all of those vocabulary elements.
EQATTR_attrname N/A Yes Yes Identifies the vocabulary elements that have a non-null specified attribute.
maxElementCount Integer No No Identifies the maximum number of vocabulary elements that can be returned in one query.

WSDL

WSDL oracle.apps.pas.epc.service.query.EPCglobalEPCISService.wsdl

For detailed descriptions of all input and output parameters, please refer to the EPCglobalEPCISService wsdl for this web service.

Web Service Exceptions

Using the Web Service Exceptions page you can view the job instance messages created by the mergeLot, createTransaction, Serials Service (editSerialStatusAndUsageByPrimaryDocument, editSerialStatusAndUsageByLabel, editSerialStatusAndUsageByList), captureEpcisDoc, and Product Service web services. A web service can fail because the data that is being passed in the message is invalid or the data being passed is incorrect for the message. In addition, you can view the overall system problem errors or web services not running errors using the Web Service Exceptions page. If the web service processes successfully no message is recorded.

The Web Service Exceptions page is located under the Serials section and the Transactions section of the Task menu. The page is the same in both locations.

For more information on the Web Service Exceptions page, see Using the Job Instances Functionality.

Web Service E-Mail Notifications

Oracle Pedigree and Serialization Manager (OPSM) gives you the ability to send e-mail notifications for the following:

When processing transactions, serials, or products using the Transaction, Serials, and Product web services process errors can occur. For example, a process can be stuck in an "In Progress" status. When this happens no other transactions, serials , or products are allowed to process which halts all other subsequent jobs. Examples of where transactions get stuck "In Progress" are:

When shipment or return transactions fail while being processed by the Transaction web service an exception is logged and these exceptions are reported in the OPSM Dashboard under Transaction Exceptions component. These exceptions are also sent in the e-mail notifications.

Finally, when the counterfeit status is updated on a serial using the Serials web services, those status changes are reported in the OPSM Dashboard under the Counterfeit Serial Analysis component. These status changes are also sent in the e-mail notifications.

OPSM using Oracle Scheduler will send e-mail notifications of these errors, exceptions, or counterfeit status changes to the individuals responsible for this information in your organization. You can send e-mail notifications to both a system-level e-mail address and a location-specific e-mail address. These e-mail addresses can be a single e-mail address or a distribution list. Oracle Scheduler only sends notifications that pertain to errors, exceptions, or counterfeit status updates that occur between each run of the scheduler. A consolidated e-mail containing all of the errors found will be sent to each e-mail address you specify. For example, if there are 20 transactions that are in exception, the system-wide e-mail addresses will receive one e-mail with the 20 transactions listed along with their associated errors. If 10 of those transactions belong to one location (for example, Detroit) then the Location Contact e-mail address for Detroit will receive one e-mail with the 10 transactions and their associated errors.

The Oracle Scheduler is included with the Oracle database that OPSM uses. The Oracle Scheduler is configured to execute a PL/SQL script which OPSM provides. This script will query the database to look for records where the transaction is stuck in a "In Progress" status, the status is in exception, or when the counterfeit status is updated on a serial. Oracle Scheduler will use the information you define in the System Parameters page to determine if notifications are to be sent and the time interval when the scheduler will run. In addition, the Oracle Scheduler will also use the e-mail addresses you define on the System Parameters page and Location Contacts tab of the Location page to determine the individuals that will receive the e-mail notifications.

For more information, see:

Web Service E-mail Notifications Process Flow

These steps illustrate a simple web services e-mail notification process flow:

Web Service E-mail Notifications Process Flow

  1. Oracle Scheduler is installed and the PL/SQL script (procedure) is registered in the database.

    The system will register the procedure for you automatically upon install.

  2. Access control list (ACL) file is configured for the web service e-mail notifications.

    For information see, Configure an Access Control List File for Web Service E-mail Notifications section in the Oracle Pedigree and Serialization Manager Installation Guide.

  3. Administrator enables e-mail notification for the system and enters the e-mail notification setup information using the System Parameters page - Error Notification sub tab and the Create Location page - Location Contact sub tab.

  4. Web services (Transaction (TransactionsServiceAMService), Serials (SerialsServiceAMService), and Product (ProductServiceAMService)) are executed and errors, exceptions, or counterfeit status updates occur.

  5. Oracle Scheduler automatically queries the database per the time frame (Schedule Execution Interval (minutes) field) set on the System Parameters page.

    E-mail notifications are sent to the system-wide e-mail address or location-specific e-mail address listing the transactions where errors, exceptions, or counterfeit status updates have occurred along with the related information.

  6. Individuals review the e-mail sent to them by Oracle Scheduler and take the necessary steps to correct the issues listed in the e-mail.

  7. Web services (Transaction (TransactionsServiceAMService), Serials (SerialsServiceAMService), and Product (ProductServiceAMService)) that had issues are executed again.