Get catalog entry components by part number

This service request, getCatalogEntryComponentsByPartNumber, returns the details of a catalog entry plus the components of this catalog entry. For example, if the catalog entry is a ProductBean, then the components will be the ItemBeans (SKUs) associated to the product. A list of CatalogEntry nouns returns if you pass in multiple catalog entry identifiers. In this service, use the part number to request the components of the catalog entry.

Request BOD GetCatalogEntry
Access profile WC_CatalogEntryComponentsProfile
Schema /Catalog-DataObjects/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/GetCatalogEntry.xsd
Service data object GetCatalogEntryType

 

Sample request BOD

<_cat:GetCatalogEntry
       
xmlns:_cat="http://www.ibm.com/xmlns/prod/commerce/9/catalog"
       
xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation"
        xmlns:oa="http://www.openapplications.org/oagis/9"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <oa:ApplicationArea
xsi:type="_wcf:ApplicationAreaType">
                <oa:CreationDateTime>
                        2007-01-25T17:01:50.333Z
                </oa:CreationDateTime>
               
<oa:BODID>a8562330-acbf-11db-a983-832d45b928ce</oa:BODID>
                <_wcf:BusinessContext>
                        <_wcf:ContextData
name="storeId">511</_wcf:ContextData>
                </_wcf:BusinessContext>
        </oa:ApplicationArea>
        <_cat:DataArea>
                <oa:Get>
                        <oa:Expression
expressionLanguage="wcf:XPath">
                               
{_wcf.ap=WC_CatalogEntryComponentsProfile}/CatalogEntry[CatalogEntryIdentifier[ExternalIdentifier[(PartNumber='SKU-51101098')]]]
                        </oa:Expression>
                </oa:Get>
        </_cat:DataArea>
</_cat:GetCatalogEntry>

 

Response

Response BOD ShowCatalogEntry
Schema /Catalog-DataObjects/xsd/OAGIS/9.0/Overlays/IBM/Commerce/BODs/ShowCatalogEntry.xsd
Service data object ShowCatalogEntryType

The response contains the following information if the catalog entry is of type ProductBean:

/CatalogEntry/@catalogEntryTypeCode/
/CatalogEntry/CatalogEntryIdentifier/UniqueID
/CatalogEntry/ CatalogEntryIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/ CatalogEntryIdentifier/ExternalIdentifier/PartNumber
/CatalogEntry/Description/@language
/CatalogEntry/Description/Name
/CatalogEntry/Description/ThumbNail
/CatalogEntry/Description/ShortDescription
/CatalogEntry/Description/FullImage
/CatalogEntry/Description/LongDescription
/CatalogEntry/ListPrice/Price(@currency)
/CatalogEntry/ListPrice/Quantity
/CatalogEntry/Price/StandardPrice/Price/Price/@currency
/CatalogEntry/Price/StandardPrice/Price/Quantity
/CatalogEntry/Price/ContractPrice/@minimumQuantity
/CatalogEntry/Price/ContractPrice/Price/Price/@currency/
/CatalogEntry/Price/ContractPrice/@minimumQuantity) /Price/Quantity
/CatalogEntry/Price/ContractPrice/Price/Quantity
/CatalogEntry/Price/ContractPrice/@minimumQuantity/
/CatalogEntry/Price/ContractPrice/ContractIdentifier/UniqueID
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@majorVersionNumber
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@minorVersionNumber
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@origin
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/Price/ContractPrice(@minimumQuantity)ContractIdentifier/ExternalIdentifier/Name
/CatalogEntry/CatalogEntryAttributes/@displaySequence
/CatalogEntry/CatalogEntryAttributes/@language
/CatalogEntry/CatalogEntryAttributes/@usage
/CatalogEntry/CatalogEntryAttributes/Name
/CatalogEntry/CatalogEntryAttributes/Description
/CatalogEntry/CatalogEntryAttributes/StringValue/Value
/CatalogEntry/CatalogEntryAttributes/IntegerValue/Value
/CatalogEntry/CatalogEntryAttributes/FloatValue/Value
/CatalogEntry/NavigationRelationship/@displaySequence
/CatalogEntry/NavigationRelationship/CatalogEntryReference/@catalogEntryTypeCode
/CatalogEntry/NavigationRelationship/CatalogEntryReference/CatalogEntryIdentifier
/CatalogEntry/NavigationRelationship/CatalogEntryReference/CatalogEntryIdentifier/UniqueID>
/CatalogEntry/NavigationRelationship/CatalogEntryReference/CatalogEntryIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/NavigationRelationship/CatalogEntryReference/CatalogEntryIdentifier/ExternalIdentifier/PartNumber
/CatalogEntry/NavigationRelationship/CatalogEntryReference/displayName

The response contains the following information if the catalog entry is of type PackageBean or BundleBean:

/CatalogEntry/@catalogEntryTypeCode/
/CatalogEntry/CatalogEntryIdentifier/UniqueID
/CatalogEntry/ CatalogEntryIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/ CatalogEntryIdentifier/ExternalIdentifier/PartNumber
/CatalogEntry/Description/@language
/CatalogEntry/Description/Name
/CatalogEntry/Description/ThumbNail
/CatalogEntry/Description/ShortDescription
/CatalogEntry/Description/FullImage
/CatalogEntry/Description/LongDescription
/CatalogEntry/ListPrice/Price(@currency)
/CatalogEntry/ListPrice/Quantity
/CatalogEntry/Price/StandardPrice/Price/Price/@currency
/CatalogEntry/Price/StandardPrice/Price/Quantity
/CatalogEntry/Price/ContractPrice/@minimumQuantity
/CatalogEntry/Price/ContractPrice/Price/Price/@currency/
/CatalogEntry/Price/ContractPrice/@minimumQuantity) /Price/Quantity
/CatalogEntry/Price/ContractPrice/Price/Quantity
/CatalogEntry/Price/ContractPrice/@minimumQuantity/
/CatalogEntry/Price/ContractPrice/ContractIdentifier/UniqueID
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@majorVersionNumber
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@minorVersionNumber
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@origin
/CatalogEntry/Price/ContractPrice/ContractIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/Price/ContractPrice(@minimumQuantity)ContractIdentifier/ExternalIdentifier/Name
/CatalogEntry/CatalogEntryAttributes/@displaySequence
/CatalogEntry/CatalogEntryAttributes/@language
/CatalogEntry/CatalogEntryAttributes/@usage
/CatalogEntry/CatalogEntryAttributes/Name
/CatalogEntry/CatalogEntryAttributes/Description
/CatalogEntry/CatalogEntryAttributes/StringValue/Value
/CatalogEntry/CatalogEntryAttributes/IntegerValue/Value
/CatalogEntry/CatalogEntryAttributes/FloatValue/Value
/CatalogEntry/KitComponent/@KitComponentCodeType
/CatalogEntry/KitComponent/@quantity
/CatalogEntry/KitComponent/@sequence
/CatalogEntry/KitComponent/CatalogEntryReference/@catalogEntryTypeCode
/CatalogEntry/KitComponent/CatalogEntryReference/CatalogEntryIdentifier
/CatalogEntry/KitComponent/CatalogEntryReference/CatalogEntryIdentifier/UniqueID>
/CatalogEntry/KitComponent/CatalogEntryReference/CatalogEntryIdentifier/ExternalIdentifier/@ownerID
/CatalogEntry/KitComponent/CatalogEntryReference/CatalogEntryIdentifier/ExternalIdentifier/PartNumber
/CatalogEntry/KitComponent/CatalogEntryReference/displayName

 

Sample response BOD

<_cat:ShowCatalogEntry
        xmlns:Oagis9="http://www.openapplications.org/oagis/9"
       
xmlns:_cat="http://www.ibm.com/xmlns/prod/commerce/9/catalog"
       
xmlns:_wcf="http://www.ibm.com/xmlns/prod/commerce/9/foundation"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        <Oagis9:ApplicationArea
xsi:type="_wcf:ApplicationAreaType">
                <Oagis9:CreationDateTime>
                        2007-01-25T17:18:48.344Z
                </Oagis9:CreationDateTime>
                <Oagis9:BODID>
                        07259ce0-acc2-11db-986f-827045b7cf58
                </Oagis9:BODID>
        </Oagis9:ApplicationArea>
        <_cat:DataArea>
                <Oagis9:Show />
                <_cat:CatalogEntry
catalogEntryTypeCode="ProductBean">
                        <_cat:CatalogEntryIdentifier>
                               
<_wcf:UniqueID>51101098000</_wcf:UniqueID>
                                <_wcf:ExternalIdentifier
                                       
ownerID="7000000000000000002">
                                       
<_wcf:PartNumber>SKU-51101098</_wcf:PartNumber>
                                </_wcf:ExternalIdentifier>
                        </_cat:CatalogEntryIdentifier>
                        <_cat:Description language="-1">
                                <_cat:Name>V-Neck
Sweater</_cat:Name>
                               
<_cat:Thumbnail>images/vneck.gif</_cat:Thumbnail>
                               
<_cat:FullImage>images/vneck.gif</_cat:FullImage>
                                <_cat:ShortDescription>
                                        V-Neck Sweater
                                </_cat:ShortDescription>
                                <_cat:LongDescription>
                                        A contemporary look with
ribbed neckline. 100% wool.
                                        Machine wash. Available in
(Small, Blue), (Medium,
                                        Black), (Large, Brown)
                                </_cat:LongDescription>
                        </_cat:Description>
                        <_cat:CatalogEntryAttributes>
                                <_cat:Attributes
displaySequence="1.0" language="-1"
                                        usage="1">
                                       
<_cat:Name>Size</_cat:Name>
                                </_cat:Attributes>
                                <_cat:Attributes
displaySequence="2.0" language="-1"
                                        usage="1">
                                       
<_cat:Name>Color</_cat:Name>
                                </_cat:Attributes>
                        </_cat:CatalogEntryAttributes>
                        <_cat:ListPrice>
                                <_wcf:Price
currency="USD">80.00</_wcf:Price>
                        </_cat:ListPrice>
                        <_cat:Price>
                                <_wcf:StandardPrice>
                                        <_wcf:Price>
                                                <_wcf:Price
currency="USD">80.00</_wcf:Price>
                                        </_wcf:Price>
                                </_wcf:StandardPrice>
                                <_wcf:ContractPrice
minimumQuantity="1.0">
                                        <_wcf:Price>
                                                <_wcf:Price
currency="USD">80.00</_wcf:Price>
                                        </_wcf:Price>
                                       
<_wcf:ContractIdentifier>
                                               
<_wcf:UniqueID>51100000001</_wcf:UniqueID>
                                               
<_wcf:ExternalIdentifier majorVersionNumber="1"
                                                       
minorVersionNumber="0" origin="0"
                                                       
ownerID="7000000000000000002">
                                                       
<_wcf:Name>
                                                               
ConsumerDirectATP Default Contract
                                                       
</_wcf:Name>
                                               
</_wcf:ExternalIdentifier>
                                       
</_wcf:ContractIdentifier>
                                </_wcf:ContractPrice>
                        </_cat:Price>
                        <_cat:NavigationRelationship
displaySequence="0.0">
                                <_cat:CatalogEntryReference
                                       
catalogEntryTypeCode="ItemBean">
                                       
<_cat:CatalogEntryIdentifier>
                                               
<_wcf:UniqueID>51101098100</_wcf:UniqueID>
                                               
<_wcf:ExternalIdentifier
                                                       
ownerID="7000000000000000002">
                                                       
<_wcf:PartNumber>
                                                               
SKU-51101098-1
                                                       
</_wcf:PartNumber>
                                               
</_wcf:ExternalIdentifier>
                                       
</_cat:CatalogEntryIdentifier>
                                       
<_cat:displayName>V-Neck Sweater</_cat:displayName>
                                </_cat:CatalogEntryReference>
                        </_cat:NavigationRelationship>
                        <_cat:NavigationRelationship
displaySequence="1.0">
                                <_cat:CatalogEntryReference
                                       
catalogEntryTypeCode="ItemBean">
                                       
<_cat:CatalogEntryIdentifier>
                                               
<_wcf:UniqueID>51101098200</_wcf:UniqueID>
                                               
<_wcf:ExternalIdentifier
                                                       
ownerID="7000000000000000002">
                                                       
<_wcf:PartNumber>
                                                               
SKU-51101098-2
                                                       
</_wcf:PartNumber>
                                               
</_wcf:ExternalIdentifier>
                                       
</_cat:CatalogEntryIdentifier>
                                       
<_cat:displayName>V-Neck Sweater</_cat:displayName>
                                </_cat:CatalogEntryReference>
                        </_cat:NavigationRelationship>
                        <_cat:NavigationRelationship
displaySequence="2.0">
                                <_cat:CatalogEntryReference
                                       
catalogEntryTypeCode="ItemBean">
                                       
<_cat:CatalogEntryIdentifier>
                                               
<_wcf:UniqueID>51101098300</_wcf:UniqueID>
                                               
<_wcf:ExternalIdentifier
                                                       
ownerID="7000000000000000002">
                                                       
<_wcf:PartNumber>
                                                               
SKU-51101098-3
                                                       
</_wcf:PartNumber>
                                               
</_wcf:ExternalIdentifier>
                                       
</_cat:CatalogEntryIdentifier>
                                       
<_cat:displayName>V-Neck Sweater</_cat:displayName>
                                </_cat:CatalogEntryReference>
                        </_cat:NavigationRelationship>
                </_cat:CatalogEntry>
        </_cat:DataArea>
</_cat:ShowCatalogEntry>

 

Usage

To use this service request on a JSP page use the expression-builder, getCatalogEntryComponentsByPartNumber, and pass the partNumber parameter.

The expression-builder maps to the following XPath expression:

{_wcf.ap=$accessProfile$}/CatalogEntry[CatalogEntryIdentifier[ExternalIdentifier[(PartNumber='$partNumber$')]]

The default is: accessProfile=WC_CatalogEntryComponentsProfile. This service request uses the
CatalogEntryDataBean data bean.

By default, the expression builder in the get-data-config.xml file associated to this service only accept one id or partnumber. By using the pattern from getCatalogEntrySummaryByIDs or getCatalogEntryDetailsByIDs, you can create your own expression builder that will accept multiple IDs or part numbers.

Exceptions

If there is an error the error is reported in the Response message. You can see the error details in the trace log, SystemOut.log.

 

Customization

The following extensions are supported:

Related concepts

../../com.ibm.commerce.business_process.doc/concepts/processFind_product_(ConsumerDirect).htm
Design pattern for Get service implementation


Related Reference


WebSphere Commerce foundation tag library