Difference between revisions of "Common:Object Construction"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
m (Text replace - 'Cases Object' to 'Cases object')
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''Define an object:'''
'''Define an object:'''
# Click '''[Define Fields]'''
# Click '''[Define Fields]'''
#:
# Specify object labels:
#* '''Plural Label -''' The label used when the context is the object itself, or to the collection of records it contains
#* '''Singular Label -''' The label used when the context is a single record stored in the object
# For the [[Cases object]], specify the label to use for the built-in <tt>subject</tt> and <tt>description</tt> fields (or use the defaults).
#:
#:
# Define up to 10 fields, to get started. (You can add more later.) For each field, specify:
# Define up to 10 fields, to get started. (You can add more later.) For each field, specify:
#* '''Field Label -''' The label users will see  
#* '''Field Label -''' The label users will see.
#* '''Internal Field Name -''' The internal reference name. (Created for you. Modifiable, but generally best left alone.)
#* '''Internal Field Name -''' The internal reference name. (Created for you. Modifiable, but generally best left alone.)
#* '''Field Type -'''  Pick one of the many choices
#* '''Field Type -'''  Pick one of the many choices
Line 9: Line 14:
# When done defining fields, click '''[Save]'''
# When done defining fields, click '''[Save]'''


For more, click '''[Add additional Object]''' and repeat the process.
:For more, click '''[Add additional Object]''' and repeat the process.


'''Establish relationships between objects:'''
'''Establish relationships between objects:'''
Line 18: Line 23:
#* '''One to Many -''' One <tt>{baseObject}</tt> record can be related to many <tt>{relatedObject}</tt> records
#* '''One to Many -''' One <tt>{baseObject}</tt> record can be related to many <tt>{relatedObject}</tt> records
#*: For example: One ''Order'' can have many ''OrderItems''.
#*: For example: One ''Order'' can have many ''OrderItems''.
#*: This option adds a [[Lookup]] field to the <tt>{relatedObject}</tt> that targets the <tt>{baseObject}.</tt>
#*:  
#*:  
#*: '''Note:'''
#*: '''Notes:'''
#*: To make a '''One to One''' relationship, construct it as One to Many, and add a [[Unique Index]] to the target object to ensure that only one such record can ever exist.
#*::* To make a '''One to One''' relationship, construct it as One to Many, and add a [[Unique Index]] to the target object to ensure that only one such record can ever exist.
#*::* To make a [[Master-Detail relationship]], use the [[Cascade Rules]] to auto-delete detail records when a master record is deleted.
#* '''Many to Many -''' One <tt>{baseObject}</tt> record can be related to many <tt>{relatedObject}</tt> records, and each of the <tt>{relatedObject}</tt> records can be related to many <tt>{baseObject}</tt> records
#* '''Many to Many -''' One <tt>{baseObject}</tt> record can be related to many <tt>{relatedObject}</tt> records, and each of the <tt>{relatedObject}</tt> records can be related to many <tt>{baseObject}</tt> records
#*: For example: One ''Order'' can have many ''Tags'', and one ''Tag'' can be applied to many ''Orders''.
#*: For example: One ''Order'' can have many ''Tags'', and one ''Tag'' can be applied to many ''Orders''.

Latest revision as of 21:28, 8 July 2015

Define an object:

  1. Click [Define Fields]
  2. Specify object labels:
    • Plural Label - The label used when the context is the object itself, or to the collection of records it contains
    • Singular Label - The label used when the context is a single record stored in the object
  3. For the Cases object, specify the label to use for the built-in subject and description fields (or use the defaults).
  4. Define up to 10 fields, to get started. (You can add more later.) For each field, specify:
    • Field Label - The label users will see.
    • Internal Field Name - The internal reference name. (Created for you. Modifiable, but generally best left alone.)
    • Field Type - Pick one of the many choices
  5. Follow the prompts to add additional information, depending on the field type.
  6. When done defining fields, click [Save]
For more, click [Add additional Object] and repeat the process.

Establish relationships between objects:

  1. Click [Add a Relationship]
  2. Under Relationships select the objects to fill in the blanks:
    Between __{baseObject}__ and __{relatedObject}__
  3. Specify the Relationship Type:
    • One to Many - One {baseObject} record can be related to many {relatedObject} records
      For example: One Order can have many OrderItems.
      This option adds a Lookup field to the {relatedObject} that targets the {baseObject}.
      Notes:
      • To make a One to One relationship, construct it as One to Many, and add a Unique Index to the target object to ensure that only one such record can ever exist.
      • To make a Master-Detail relationship, use the Cascade Rules to auto-delete detail records when a master record is deleted.
    • Many to Many - One {baseObject} record can be related to many {relatedObject} records, and each of the {relatedObject} records can be related to many {baseObject} records
      For example: One Order can have many Tags, and one Tag can be applied to many Orders.
The relationships cause Lookup fields to be added to the objects, with names like "related_to_X". For example, the OrderItems object will have a field named related_to_Orders.