User Properties
Parent Read Only Field
Parent Object Business Component
Type
Description Specifies a TRUE/FALSE test business component/field
combination in the parent chain (parent, grandparent, and so on)
that, when TRUE, causes the target business component to
become read-only.
Functional Data Driven Access
Area
This user property is used to make the child BC records read only based on a Boolean
field value in Parent BC.
Scenario: If The Account Type is ‘Competitor’ then No addresses records should
be added to that record.
Solution Design:
I. In Account BC find the Field Name of Display Name of ‘Competitor’, which
is ‘Competitor’.
II Now come to Business Address BC Select Bus Comp User Prop RCNR
Add the following Values
Name Value
Parent Read Only Field Account.Competitor
Compile the project, which the Business Address BC is pointing to.
Result: In Siebel Application, Go to Accounts Screen and Add a new record in
Account List Applet give values to the fields, and in the form applet check the
Competitor column to ‘Y’ and now try to add records to address Mvg , it should
de activate ‘New’ , ‘Delete’ buttons. If ‘Competitor’ not checked, then it should
allow addition of addresses in address Mvg.
Field Read Only Field: [fieldname]
Parent Object Business Component
Type
Sets specific fields in a business component to be read-only.
Description
The Value property contains a field that is Boolean. When TRUE, the
field specified by [fieldname] in the current record is read-only.
Functional Data Driven Access
Area
This User Property is used to make a field Read only based on a value in another field in
the same BC.
Scenario: In contact BC, if Employee flag field Value is ‘Y’ then PF Number
should be entered other wise it should be read only.
Solution Design:
1. First Find out in the Contact BC whether there are any
fields which corresponds to Employee flag and PF Number .
2. Go to Table OT Query for S_CONTACT_X
3. Select Columns OT Select
Name Alias Physical Type Length Comments
ATTRIB_8 ATTRIB_8 Boolean (dtype_bool) 1 Empolyee Flag
ATTRIB_34 ATTRIB_34 Var Char 30 PF Number
Apply , Activate is not necessary here bcoz we have not created a column
but just used the existing column and set comments to help other
configurators, saying don’t use this ATTRIB for other purpose , as this is
reserved.
4. Now Go To Contact BC Field RCNR
Name Join Field Name
Employee Flag S_CONTACT_X ATTRIB_8
PF Number S_CONTACT_X ATTRIB_34
5. Staying the Field only RCNR and Add a Calculated
Field
Name Calculated Calculated Expression
PF Flag IIF([Employee Flag]=’Y’ , ‘N’ ,’Y’)
The meaning of this calc expression is if Employee Flag is Checked ie.,
stores ‘Y’ then store ‘N’ in PF Flag otherwise store ‘Y” in PF Flag.
6. Go to Contact BC User Properties RCNR
Name Value
Field Read Only Field:PF Number PF Flag
7. Add the Both BC fields in Contact List applet and do Edit
Web layout.
8. Compile the relevant projects and run the application
BC Read Only Field:
Parent Object Business Component
Type
Specifies a TRUE/FALSE field in the record that, when TRUE,
Description causes the current record to become read-only.
Setting the Admin Mode Flag property to TRUE circumvents a
Read Only field defined at the business component object type
user property.
Functional Data-Driven Access Control (Time Sheet)
Area
This User Property is used to make the entire record read only based on the value of a
Boolean field , if the value of the given field is ‘Y’ then entire record will become read only
else record will be editable.
Solution design:
1. Decide which Boolean field you want to give against BC Read Only Field.
2. eg: there is a Boolean field In active
3. In Account BC Bus Comp User Prop RCNR
Name Value
BC Read Only Field In Active
Compile and Run to see the results.
How Can You Grant Read-Only Access to Select Users of Siebel Applications?
There are several techniques which may be used to grant read-only access to particular
users of the Siebel application.
1. A new feature in Siebel applications version 7.7 is the Read Only View flag. This
flag can be set in the Administration - Application > Responsibilities view, in the
Views applet, to specify that the selected view will be read-only for the
responsibility selected in the top applet. When this flag is set to TRUE, users with
the selected responsibility will be able to see data in the view, but will not be able
to create or modify the data in that view. NOTE: If a user has access to the same
view through multiple responsibilities, and any one of those responsibilities has
full access to the view, the view will not be read-only for this user, regardless of
how the Read Only View flag is set for any other responsibility.
For more information on the Read Only View flag, responsibilities, and access
control, refer to Siebel Bookshelf version 7.7 > Security Guide for Siebel
eBusiness Applications > Configuring Access Control > Planning for Access
Control > Planning for Responsibilities.
2. You can create read-only versions of views in the Siebel application and grant
access to those views to the select users. The basic steps to accomplish this
configuration are as follows:
1. In Siebel Tools:
1. Copy the applets used in the view for which you want to make a
read-only version.
2. On the new applets, set the No Insert, No Update and No Delete
properties to TRUE.
3. Copy the view for which you want to make a read-only version.
Associate the read-only applets to the new view.
4. Associate the new view to the appropriate screen.
5. Compile a new .srf file and apply it in your test environment.
2. Log into the Siebel Web Client or Siebel Dedicated Web Client as an
administrator, connected to the server:
1. Navigate to Application Administration > Views. Add the new
view to the application.
2. Navigate to Application Administration > Responsibilities. Assign
the view to the appropriate responsibility and add users to the
responsibility if necessary.
3. Test the new views in your test environment to ensure the new views are
read-only.
3. Dynamically convert the current record to read-only by using the Business
Component User Property BC Read Only Field to evaluate the current user's
Login Name or another user attribute. This approach will avoid the creation of
new read-only applets and views. The user property will have to be implemented
on each business component whose data is intended to be made available in read-
only mode.
NOTE: Using the BC Read Only Field user property will prevent the specified
users from deleting and updating existing records. However, these users will still
be able insert new records. Change Request 12-I5CXXS has been logged to
address this product enhancement request.
1. If you are running Siebel applications version 7.0.4, there is an issue with the BC
Read Only Field in list applets. For more information, refer to FAQ 1866,
available on SupportWeb. This issue is resolved in version 7.0.4.300.
The following sample configuration dynamically converts the data in the My
Accounts view to read-only when the logged in user is Hector Alacon.
1. In Siebel Tools, navigate to the Business Component object and query for
the Account business component.
2. Create a new calculated field with the following attributes:
Name ReadOnly
Calculated TRUE
Calculated Value IIf([LoginName] = "HALACON", "Y", "N")
Type DTYPE_BOOL
3. Create a new Business Component User Property with the following
attributes:
Name BC Read Only Field
Value ReadOnly
4. Compile a new .srf file and apply it to your test environment to ensure you
are seeing the expected behavior. Hector Alacon should not be able to
update existing records or delete existing records in the views based on
Account business component. However, Hector Alacon will be able to
insert new records in the Accounts views. All other users will be able to
insert, update and delete records in the Accounts views.
For more information on the BC Read Only Field user property, refer to Siebel
Bookshelf version 7.7 > Configuring Siebel eBusiness Applications >
Configuring Business Components > Configuring Data-Driven Read-Only
Behavior.
2. Use Siebel VB or Siebel eScript to limit the user's ability to insert, update and
delete records by evaluating the current user's Login Name or another user
attribute. Scripting can be placed on the PreDeleteRecord, PreNewRecord,
PreSetFieldValue or PreWriteRecord business component events that would
check for a particular user attribute and return CancelOperation if the user is not
authorized to make inserts, deletes, or updates. For more information on scripting
in these events, refer to Siebel Bookshelf version 7.7 > Siebel Object Interfaces
Reference > Interfaces Reference > Business Component Events.
NOTE: This approach may have an adverse performance impact and be difficult
to maintain. However, it can be used as a last resort if the declarative
configuration techniques described above do not provide adequate flexibility to
meet your business requirements. For more guidelines on scripting best practices,
Siebel Systems highly recommends that you review Technical Note 514, which is
available on SupportWeb.
On Field Update Set
The On Field Update Set user property allows you to set the value of a field in the
business component when another field is updated. The parent object type is business
component.
Syntax
The value for On Field Update Set consists of three quoted parameters separated by a
comma and a space, as follows:
"[FieldToCheck]", "[FieldToSet]", "[Value]"
[FieldToSet] is set to [Value] when [FieldToCheck] is updated. If the Value parameter is
not defined, [FieldToSet] is set to the value of [FieldToCheck].
An expression can optionally be used for the Value parameter. In the following example,
the Done field is set using the expression when the Done Flag field is updated:
"Done Flag", "Done", "IIF ([Done Flag] = ""Y"", Today (), """")"
Additionally, if you use an expression, you can include a fourth parameter that defines a
condition.
NOTE: If you use an expression, it must evaluate to the data type of the targeted field. In
the following example, the ToChar function is used to convert the date to a string before
concatenating with another string and setting value of the field.
"Agreement Start Date","Name", "ToChar([Agreement Start Date]) +
[Agreement Type]"
Comment:
For the benefit of others, you can use 'On Field Update Set for updating a field B when
Field A is update provided Field A has List of Value (LOVs) and Field B is a Boolean
field. For example, if you look in tools Service Request business component has a user
property with the following properties :
Name : On Field Update Set
Value : "Status", "Assignment User Exclude Flag", "IIF ([Status]
=LookupValue(""SR_STATUS"",""Closed""), ""Y"", ""N"")"
Expose Assignment User Exclude Flag on FINS Service Request Detail (L) Applet, when
you select "Closed" for Status field, Assignment User Exclude Flag gets update with a
"check mark" indicating "Y", if you select any other value for the Status field, this field
does not get updated.
Its not possible through configuration to update a normal text field when another text
field gets updated. I have logged change request # 12-BXC7FY requesting that
functionality to be able to configure through tools to update a text field when another text
field is updated in a product enhancement request.
Important Points To Note
Some specific special classes may not support On Field Update Set user property
because this user property only works with classes based on CSSBCBase.
The On Field Update Set user property may not work as expected in some
business components (not after record commit) unless the Immediate Post
Changes flag is set to TRUE on the involved fields. Setting this flag enables more
dynamic triggering of the user property. If this flag is set for a field, field changes
on that field are immediately sent to the server.
If fields are referenced in a user property and they are not displayed on the user
interface, the Force Active property must be set to TRUE.
Always Enable Child [BusComp name]
Parent Business Component
Object Type
Description Used in freezing Service Requests. Closing a service request does not
prevent updates to the Customer Satisfaction business component, so you
can survey your customers even if a service request has been resolved. The
user property for the Service Request business component, named Always
Enable Child: Customer Survey, allows you to enable and disable this
behavior. You can disable the freeze behavior for other business
components by adding user properties to the Service Request business
component and substituting the business component name for the
appropriate component. Unfreezing Service Requests - To unfreeze a closed
service request and make the service request and its child business
components accessible for additions and edits, change the status to Open.
Functional SSE Service Request business component
Area
How can child records be added to a closed service request?
The standard Siebel application functionality dictates that once the status of a service
request is changed to 'Closed', the service request and the related child records become
read-only. The read-only behavior forbids the addition, modification and deletion of child
records.
Read and write functionality on the child business components can be provided with the
use of the 'Always Enable Child' business component user property.
The 'Always Enable Child' business component user property is implemented on the
parent business component as follows:
Name: Always Enable Child: <Business Component name>
Value: TRUE
For example, use the following syntax on the Service Request business component to be
able to add child 'Activity' records to a closed service request.
Name: Always Enable Child: Action
Value: TRUE
Note that in order to enable writing on several child business components for a closed
service request, the user property will have to be added for each child business
component that requires the read and write functionality.
For example, in order to add both Activities and Attachments to a closed service request,
the user property is implemented as follows on the Service Request business component.
Name: Always Enable Child: Action
Value: TRUE
Name: Always Enable Child: Service Request Attachment
Value: TRUE
Change Request 12-4LCXR3 has been logged requesting for the documentation of the
'Always Enable Child' business component user property in the Siebel Tools Guide.
Bookshelf documentation has been updated. Review Siebel 7.0 Bookshelf > Siebel Tools
Reference Volume 2 of 2 > PART 7. Additional Topics: Appendices > User Properties >
Supported User Properties > Always Enable Child [BusComp name] for details on this
user property
Service Parameters
Parent Business Component
Object Type
Optional. Names a text string of parameters parsed typically by the
Description Pre_Invoke method and used by the Virtual business component.
For example, DLLName=VirtualBusCompODBC.dll.
Makes additional business components accessible to the State Model
business component Multi-Value Group applet.
1. In Tools, go to the business component you want to add and
navigate to the business component user properties object. Add a
record called State Model with a value of Y.
2. Recompile the .srf file.
3. Open the Siebel application and navigate to Workflow
Administration > State Models. Add a record to the State Model
list applet. All of the business components you added in Tools
appear in the business component Name Multi-Value Group.
4. When you select the appropriate one and move to Field Name, the
MVG applet that pops up will include all of the fields for the
previously selected business component.
The State Name values are pulled into State Model depending on what
values are listed in the List Of Values in the Application Administration
List of Values Screen. Administration of the List of Values is completely
separate from the State Model, however.
NOTE: Only values that appear in the LOV can be used in the State
Name field. For Account, all the LOV names are ACCOUNT_STATUS
with different display values associated with each.
After adding a business component, you should be able to create the State
Model rules that Workflow will enforce.
Functional Siebel Business Process Designer
Area
Service Name
Parent Object Type Business Component
Description Name of business service that is used by a Virtual business
component.
Functional Area
Primary Position Modification
Parent Object Business Component
Type
Specifies whether or not Sales Method for an Opportunity can only be
Description modified by the primary position.
Values:
Y Sales Method can only be modified by primary position.
N Sales Method can be modified everyone.
Usage You can inactivate and modify the values for this user property.
However, you cannot create new instances of this user property.
Functional Opportunity
Area
Field User Properties
Required:
This user property allows you to make the parent field a required field under certain
conditions. You specify the condition by defining a calculated expression for the value of
the user property.
Syntax Expression
Usage When the expression evaluates to Y, the parent field is required.
Parent Object Field
Type
Functional This user property is valid when used for business components based on
Area or inherited from the class CSSBCBase; it is not valid for business
components based on CSSBusComp.
A requirement of the Service Request Business Component is for the 'Resolution' field to
become required if the issue is closed. We are curious as to whether Field-Level user
properties could be configured - similar to dynamic read-only - to implement dynamic
required functionality. As we understand it, the syntax would be comparable to the
following:
1) Open the field user property object for the 'Resolution' field.
2) Define the following:
Name: Required
Value: The condition under which the field should be required, for example: IIF
([Status]='Closed'),"Y","N")
This functionality is preferable over implementing VB, but we would like to
(1)Confirm the syntax and
(2) Confirm support from Expert Services.
Required
Contact BC ---- “CSSBCContactSIS” and it is inherit from CSSBCBase
Calculated Field [CheckLang] : IIF (Language() = ‘ENU”, ‘Y’, ‘N’)
Multivalue Field : Country
User property : Name: Required Value: [CheckLang]
Text Length Override
Parent Object Field
Type
Description Use the field's Text Length property to define the maximum field length
instead of the database column size. Use only for Text type fields.
Replaces Field Length property in older versions of Siebel applications.
How Can Users Restrict the Entry of Characters in a List Column or Control?
The length of the fields can be restricted on the application UI level with the help of the
Field User Property called Text Length Override. Below is the syntax for configuring this
Field User Prop:
Name: Text Length Override
Value: <length>
For example, if the requirement is to restrict the 'Description' field in the 'My
Opportunities View' to 10 characters, then perform the following steps:
1. Log into Siebel Tools.
2. Query for the Opportunity business component, expand to its child object Field,
and then query for field "Description".
3. Expand to this field child's object Field User Prop and add a new record.
4. Specify the properties Name as Text Length Override (Case is Important) and
value as 10. This user property is restricted for Text type fields. This cannot be
used for Number type fields