Product accessories
The product accessories object contains information held against product accessory records.
Accessories are a way of saying that a particular product is rented or sold with other products. The classic example that we use because it's easily understandable is a MacBook Pro that's sold with a mouse and some headphones.
In this example:
The MacBook Pro is the parent product.
The mouse and headphones are accessory products.
Accessories are products in Current RMS. They may be rented or sold on their own, depending on how they're set up.
When you set up a product as an accessory against another product, it creates a product accessory record. The product accessory object lets you access information about this record, such as when the product is included.
Terminology
Some of the terminology can be a little confusing at first, so it's worth creating or editing an accessory in the web interface to understand.
In the example above, we can see:
When you rent an Apple MacBook Pro, this [Apple Wireless Mouse] will be rented as a default accessory.
Thinking in terms of objects, we can break this down like this:
When you (parent transaction type) the (parent product), the (product) will be (item transaction type) as a (inclusion type) (mode).
Objects that return product accessories
product_accessories
is an object of the product object, so you may access it anywhere you may access the product object.
It's generally only useful for documents and discussion templates created against the product module.
For example, while you may access product accessories on an opportunity document using opportunity items, there's little reason to do this. Consider:
This will return items in a list, with product accessories as a sub-list. However, it will return product accessories as they are against a product in Resources > Products. It won't return an opportunity item's accessories, which may be different. It also won't tell you anything about the quantities or prices of those opportunity item accessories.
In this case, you'd be better using the is_accessory?
object against opportunity items to determine whether or not they're accessories. You may also access an opportunity item's mode, inclusion type, and other information.
Document layouts
The product_accessories
object can be accessed in document layouts created against the following modules:
Product
Discussion templates
The product_accessories
object can be accessed in discussion templates created against the following modules:
Product
for_parent_rental?
Returns true
if an accessory's parent product is rented; false
otherwise.
Input
Output
for_parent_sale?
Returns true
if an accessory's parent product is sold; false
otherwise.
Input
Output
id
Returns the ID for a product accessory.
The ID is an internal reference for a record. It's not exposed in our web interface.
Input
Output
is_default?
Returns true
if an accessory's inclusion type is default; false
otherwise.
Input
Output
is_mandatory?
Returns true
if an accessory's inclusion type is mandatory; false
otherwise.
Input
Output
is_optional?
Returns true
if an accessory's inclusion type is optional; false
otherwise.
Input
Output
item_transaction_type_is_rental?
Returns true
if an accessory's transaction type is rental; false
otherwise.
Input
Output
item_transaction_type_is_sale?
Returns true
if an accessory's transaction type is sale; false
otherwise.
Input
Output
item_transaction_type_name
Returns the accessory transaction type name for an accessory.
Rental
Sale
Input
Output
mode
Returns the accessory mode code for an accessory.
Input
Output
mode_is_accessory?
Returns true
if an accessory's mode is accessory; false
otherwise.
Input
Output
mode_is_component?
Returns true
if an accessory's mode is component; false
otherwise.
Input
Output
mode_is_safety?
Returns true
if an accessory's mode is safety; false
otherwise.
Input
Output
mode_name
Returns an accessory's mode name.
Accessory
Safety Item
Component
Input
Output
parent_transaction_type
Returns the parent product's accessory transaction type code.
Input
Output
parent_transaction_type_is_both?
Returns true
if an accessory is included when the parent is both rented and sold; false
otherwise.
Input
Output
parent_transaction_type_is_rental?
Returns true
if an accessory is included when the parent is rented; false
otherwise.
Input
Output
parent_transaction_type_is_sale?
Returns true
if an accessory is included when the parent is sold; false
otherwise.
Input
Output
parent_transaction_type_name
Returns the parent product's accessory transaction type code.
Both
Rental
Sale
Input
Output
product
Returns product objects for a product accessory.
Input
Output
quantity
Returns an accessory product's quantity.
Input
Output
sort_order
Returns an accessory product's sort order. This is the order that they're in the list of accessories against a product page.
The sort order determines the initial order in which an accessory is listed under a parent product when added to an opportunity.
Input
Output
zero_priced?
Returns true
if an accessory product is included at zero price; false
otherwise.
Input
Output
Last updated