CA Service Management

 View Only

CA SDM Data partition::. call_req cr 

Mar 07, 2016 02:54 PM

"Data partitions are subsets of the database with restricted access to data records. Restrict access by defining a set of constraints for each data partition. Assign these data partitions to access types. The data partition assignment determines the records that the contact can access." CA Wiki


Example Syntax, to use on default, view, create, pre-update, delete :

organization is nullAllowing only the viewing of tickets where the organization is null
type = 'I'Create an Incident
id = 1Prevent the deletion of any tickets
customer.last_name NOT LIKE '%name%'

Allowing ticket creation for contacts that don't have a certain string of characters in their last name

Warning: See comment jmayer

customer = @root.idAllowing only the creation of tickets where you are the End User
category = 'pcat:400001'Set a default Request/Incident/Problem Area <> 'ABC'Allowing only the viewing of tickets where the organization is different not like '%XYZ%'

Allowing only the viewing of tickets where the organization is like

Warning: See comment jmayer IN ( 'ORG1', 'ORG2' )

Allowing only the viewing of tickets where the organization in list

Improved by Giedrius

group = U'807AEA15E8A2CF4ABF9181CBFEA12899'Set a default Group
group.[group]group_list.member IN ( only the viewing of tickets where the own group





Data Partitions - CA Service Management - 14.1 - CA Technologies Documentation

Search "Data Partitions" Results  - CA Service Management - 14.1 - CA Technologies Documentation

Data Partition Constraints and Controlled Table - CA Service Management - 14.1 - CA Technologies Documentation

How to Set Up the Data Partition - CA Service Management - 14.1 - CA Technologies Documentation

TEC1960413 - Error while setting a default Data Partition “Data partition default "0" for attribute priority is incorrect value type string; expecting type integer”

TEC478763 - How do we use a "Defaults" data partition constraint to set a group?

TEC1982813 - "AHD05237:An internal error with surveys occurred" and "AHD03055:Data partition Create restriction on Survey" in multi-tenanted environment

0 Favorited
0 Files

Tags and Keywords


Feb 27, 2019 03:12 PM

Hola TMACUL espero estés bien, 


mi consulta es la siguiente:

Se podría hacer una restricción para que los roles: Analista de Nivel 2 y Gestor de Nivel 2 no utilicen el estado "Cerrado" en la gestión de problemas pero si se pueda utilizar en solicitudes e incidentes? Adicional tengo un rol de "Gestor de problemas" que si necesita usar el estado cerrado.


Agradezco tu ayuda. 


Dec 14, 2018 05:04 AM

Hola Jperezr ,


Lo necesita usar el campo active_flag.





Oct 23, 2018 08:18 AM

Hola Tiago

Cual sería el constraint para restringir que un ticket sea editado en estado inactivo?


Sep 01, 2016 09:48 AM

HI Johnny_2302 ,


01.   The only way to show CI's for Employees::. You need to update the access type for: Licensed


Determines whether this contact is a licensed access type. Contacts assigned to unlicensed access types can only view or update their own personal data."

Create an Access Type - CA Service Management - 14.1 - CA Technologies Documentation 



Sep 01, 2016 05:48 AM

Hi Tiago,


In the employee data partition, i want to display the CIs of the affected end user, so is it possible to change below code

resource_contact =


resource_contact =




Aug 12, 2016 09:05 AM

En efecto Tiago, Es ese el planteamiento.

Mostrar tickets de mi grupo y tickets que sean hijos.



Aug 11, 2016 05:27 PM

Hola julio.ramos,


Por favor podría describir exactamente la necesidad?


Por algun caso: Presentar solamente tickets de mi grupo y que son hijos?



Tiago Macul

Aug 11, 2016 10:39 AM

Hi Tiago and thanks for you time  to answere.


I used this code and the result is ok but i get all the tickets having a parent. From this result i just need the tickets having a parent owning to my group.


Looking the behavior for the references in data partitions it seems like this can´t be possible because i need to evaluate a list of tickets using something like

"parent is not null and parent´s group = my group"



Aug 07, 2016 07:28 AM

Hi julioRamos ,


I do known if i got your question, but however it's something like that


Type/Tipo: View/Exibir



view tickets where the own group

(group.[group]group_list.member IN (




parent is not null




Aug 05, 2016 06:28 PM

Hi Tiago,


I have a question.


If a need to view tickets where the own group and orther tickets where the first ones are parent but with different groups?

Mar 08, 2016 09:09 AM

HI jmayer and Gutis,


  I appreciate your comments collaborating with community.


  I Agree, this command degrades performance but some times is required, however we can apply alternatively the Giedrius procedure.


I already wrote about  Performance SQL – Tiago Macul.



Mar 08, 2016 09:02 AM

Thanks Tiago for the update!

Mar 08, 2016 02:36 AM

Yes agree


IN is more efficient as IN statement will walk trough the list for values match (comparable to = but on multiple value) when a LIKE statement is doing a pattern matching to find the correct values (character by character) and either if modern SQL engine are now well optimized for it this is still a significant difference in terms of resource consumption and time to return data.

Of course all this is mainly dependent of the indexing of your database. If the field you are looking for is well indexed in the database LIKE statement may be faster in certain case as IN statement is not index aware.


We are deviating from the initial subject but this is where DBA role come crucial (and many time underestimated) for the healthy of your application that rely strongly on SQL performance



Mar 07, 2016 05:46 PM

I fully agree with You. But even when it is absolutly necessary to use dot references I prefer IN instead of LIKE e.g. ( IN ( '%org%' ))

Mar 07, 2016 05:26 PM

agree with you Gutis but still want to discourage as much I can to use dotted etc when not absolutely necessary.

I have a case one time where my team upon client request was creating stored queries to add in scoreboard with like '%org1%' don't seems to be a problem and be really more easy to do until they created 200 queries like this and corresponding scoreboard for analyst containing 50 of them refreshing every 3mn.

I can tell you that when you have 2000 concurrent analysts connected and either if you have a big server this hurt!

Modifying those with the group.organization=U'xxxxxxxxxxxxxx' save us 30% resource .

CPU/RAM and HDD have unfortunately still a cost too so as much you can keep your app healty less you will be in the need for those

$ is $ but I prefer to spend on beer vs.HW

Mar 07, 2016 04:17 PM

You can always use IN statement, instead of joins IN does subqueries,

Mar 07, 2016 04:10 PM

Good articles but please permit some comments.

Ether if permitted I will not recommend like statement syntax  as shown above

statement like "name like '%XYZ%'" is highly consuming resource and must be avoided as much as possible.

also when possible and for same reason (either if less consuming) this is recommended to use the direct stored value vs. dotted reference.


constrains: not like '%XYZ%'

is more consuming that: !='xyz'

that itself more consuming than customer.organization =U'xyzxyxzxyzxyzxyzxyz'


you may not notice much but small rivers make oceans


just my 2 cents practice


Related Entries and Links

No Related Resource entered.