Loading
Gestionar citas con Salesforce Scheduler
Ejemplo de cómo aislar datos entre socios

Ejemplo de cómo aislar datos entre socios

Este ejemplo muestra cómo configurar los socios para que no puedan acceder a los datos de los demás.

Ediciones necesarias

Disponible en: Lightning Experience.
Disponible en: Enterprise Edition y Unlimited Edition

Compañía de la industria del motor con sus partes interesadas

Dream Horse es una compañía de la industria del motor que utiliza Salesforce Scheduler para reservar citas de clientes, como, por ejemplo, la reserva de pruebas de conducción. Dream Horse ahora desea configurar Salesforce Scheduler para sus concesionarios (cuentas de socios): Chantilly Stables y Versailles Stables. Chantilly Stables tiene sucursales en Sacramento y San Francisco. Versailles Stables tiene sucursales en San Francisco y Boston. Echemos un vistazo a las partes interesadas relacionadas y sus requisitos.

Imagen que muestra Dream Horse, sus socios y las ubicaciones de los socios. También muestra todas las partes interesadas.

Lista de partes interesadas de Dream Horse y requisitos de las partes interesadas de Dream Horse
Función Responsabilidades Licencias necesarias
Administrador de Salesforce
  • Configurar flujos de Experience Cloud
  • Administrar territorios de servicio para la configuración inicial
  • Configurar políticas de acceso a datos para socios
Agente del servicio de atención al cliente
  • Gestionar habilidades para todos los contratistas
  • Crear cuentas, prospectos y oportunidades para todos los concesionarios
  • Reservar y gestionar citas de servicio, como, por ejemplo, la reserva de pruebas de conducción para todos los concesionarios
Salesforce Platform, Salesforce CRM o anteriores
Lista de partes interesadas de socios Dream Horse y requisitos de las partes interesadas de Dream Horse
Función Responsabilidades Licencias necesarias
Agente del servicio de atención al socio
  • Crear cuentas, prospectos y oportunidades para sus propios concesionarios
  • Gestionar las habilidades y la disponibilidad para sus concesionarios Reservar y gestionar citas de servicio para sus propios concesionarios
  • Crear vínculos de invitación de citas para contratistas o usuarios socios
Customer Community Plus, Partner Community o superior
Gerente de territorios de socios

Administrar una sucursal de socios (territorio de servicio):

  • Ver registros de citas para su territorio de servicio
  • Crear registros de miembros de territorios de servicio al modificar el registro de territorio de servicio y asignar recursos (asistentes a citas y activos) al registro
Customer Community Plus, Partner Community o superior
Contratistas o usuarios socios
  • Ver las cuentas, los prospectos y las oportunidades de su concesionario
  • Reservar y gestionar citas
  • Gestionar sus propias habilidades
  • Gestionar sus propios turnos y absentismos.
  • Crear vínculos de invitaciones de citas
  • Customer Community Plus, Partner Community o superior
  • Complemento Salesforce Scheduler
Tipos de clientes de Dream Horse, socios de Dream Horse y requisitos de socios de Dream Horse
Función Responsabilidades Licencias necesarias
Prospecto (usuario invitado)
  • Reservar una cita de servicio con cualquier socio desde el sitio de experiencia en la nube de Dream Horse.
  • Reservar una cita mediante un vínculo.
Invitado
Cliente (autenticado)
  • Reservar una cita de servicio con cualquier socio desde el sitio de Experience Cloud de Dream Horse.
  • Modificar los detalles de citas con cualquier socio desde el sitio de Experience Cloud de Dream Horse.
  • Reservar una cita mediante un vínculo
Customer Community Plus, Partner Community o superior

En este ejemplo, las partes interesadas de los socios tienen la licencia Partner Community.

Sitios de Experience Cloud

El administrador de Salesforce en Dream Horse crea estos sitios de Experience Cloud para las diferentes partes interesadas.

Sitio de Experience Cloud para socios
Sitio para contratistas y agentes de atención al cliente de socios que utilizan el flujo Nueva cita entrante para reservar citas. En el flujo Nueva cita entrante, la variable de flujo isOutboundCommunity se establece como true y la variable de flujo IsInbound se establece como false. Todos los socios utilizan el sitio y los datos disponibles para los socios dependen de su acceso a los datos.
Sitio de Experience Cloud para clientes
Sitio para clientes autenticados que utilizan el flujo Nueva cita entrante para reservar citas. Los clientes pueden utilizar los servicios de todos los concesionarios y todas sus ubicaciones.
Sitio de Experience Cloud para usuarios invitados
Sitio para usuarios invitados que utilizan el flujo Nueva cita entrante para reservar citas. Los clientes pueden utilizar los servicios de todos los concesionarios y todas sus ubicaciones.

Permisos y jerarquías

El administrador de Salesforce de Dream Horse utiliza estos permisos y jerarquías para garantizar que todos los usuarios solo tengan el acceso necesario.

  • Jerarquía de función de portal: para crear una jerarquía para las partes interesadas de socios con la que los usuarios obtengan acceso a los datos propiedad de usuarios que estén por debajo de ellos en la jerarquía de funciones o que se compartan con ellos.
  • Jerarquía de cuenta externa: para asegurarse de que una cuenta de socio tenga acceso a datos desde todas sus cuentas de territorio de servicio.
  • Colaboración manual: para compartir registros que creó el administrador de Dream Horse con funciones de portal.
  • Colaboración de Apex: para proporcionar acceso a registros de turnos al recurso de servicio correspondiente.
  • Opción Uso compartido de citas de recursos: para compartir registros de citas con los recursos de servicio correspondientes.
  • Reglas de colaboración: para compartir registros con los agentes de atención al cliente de Dream Horse (agentes del servicio de atención al cliente), usuarios invitados y usuarios autenticados.

Configurar la jerarquía de funciones de portal

Utilice la jerarquía de funciones de portal para asegurarse de que los usuarios que se encuentran por encima de la jerarquía tengan acceso a datos propiedad de usuarios que se encuentran por debajo de ellos en la jerarquía o que se compartan con ellos. Asegúrese de que en la configuración de Experiencias digitales, el número de funciones de socio esté definido en 3. Si utiliza licencias Customer Community Plus, asegúrese de que el número de funciones de cliente es 3.

De forma predeterminada, Salesforce crea estas funciones:

  • Ejecutivo
  • Gestor
  • Usuario

Para asegurarse de que los usuarios socios, contratistas y asistentes solo puedan acceder a sus propios datos y a los datos que se comparten con ellos, agréguelos en el nivel más bajo de la jerarquía del portal. Para asegurarse de que los gestores de territorios pueden acceder solo a sus propios datos y a los datos de su equipo, agregue los gestores de territorios por encima de sus equipos en la jerarquía. Para asegurarse de que los agentes de atención a clientes socios puedan acceder a los datos de todos los empleados en el territorio de servicio, agréguelos por encima de los gestores de territorios en la jerarquía.

Imagen que muestra las partes interesadas de Dream Horse y sus socios, así como sus funciones de portal.
Configurar la jerarquía de cuentas externas

Utilice la jerarquía de cuentas externas para asegurarse de que una cuenta de socio tenga acceso a los datos desde todas sus cuentas de territorio de servicio.

Antes de configurar una jerarquía de cuentas externas, cree una cuenta para la compañía principal, Dream Horse.

Página de cuenta de Dream Horse.

A continuación, cree cuentas de socio para Chantilly Stables y Versailles Stables con Dream Horse como cuenta principal.

Página de cuenta de Chantilly Stables.

Cree también cuentas para cada sucursal (territorio de servicio) con su concesionario como su registro principal.

Página de cuenta de la sucursal de San Francisco de Chantilly Stables.

Para cada concesionario, cree una jerarquía de cuentas externas con el concesionario como registro principal y sus sucursales como registros secundarios. Por ejemplo, cree una jerarquía de cuentas externas con Chantilly Stables como registro principal y Chantilly Stables San Francisco y Chantilly Stables Sacramento como registros secundarios. Asegúrese también de que la jerarquía esté activa.

Jerarquía de cuentas de Chantilly Stables y sus sucursales.
Proporcionar acceso de entidad al cliente y los socios

Después de configurar la jerarquía de funciones de portal y la jerarquía de cuentas externas, se comparten los registros automáticamente en las jerarquías. Para partes interesadas que están por debajo en las jerarquías, comparta los registros manualmente, como, por ejemplo, las sucursales (territorios de servicio) y los temas de citas (tipos de trabajo).

A continuación se ofrece una tabla que muestra las entidades y el acceso requerido para las diferentes funciones. El acceso a objetos se proporciona a través de perfiles de usuario y el acceso a registros se proporciona a través de la colaboración. El acceso general depende del acceso a objetos y registros. Salesforce aplica el más restrictivo de estos dos accesos para determinar el acceso general.

EntidadAdminAgente del servicio de atención al clienteAgente del servicio de atención al socioGerente de territorios de sociosUsuarios, contratistas y asistentes socios
Territorio de servicio (acceso a objetos) Todos Leer/Modificar Leer Leer/Modificar Leer
Territorio de servicio (acceso a registros) Propietario Lectura/Escritura Lectura/Escritura Lectura/Escritura Lectura/Escritura
Territorio de servicio (acceso general) Propietario Lectura/Escritura Leer Lectura/Escritura Leer
Recurso de servicio (acceso a objetos) Todos Leer/Modificar Leer/Modificar Leer Leer/Modificar
Recurso de servicio (acceso a registros) Propietario Lectura/Escritura Lectura/Escritura Lectura/Escritura Propietario de su registro Recurso de servicio. Acceso de solo lectura a otros contratistas de su territorio.
Recurso de servicio (acceso general) Propietario Lectura/Escritura Lectura/Escritura Leer Propietario de su registro Recurso de servicio. Acceso de solo lectura a otros contratistas de su territorio.
Grupo de tipos de trabajo y Tipo de trabajo (acceso a objetos) Todos Leer Leer Leer Leer
Grupo de tipos de trabajo y Tipo de trabajo (acceso a registros) Propietario Leer Leer Leer Leer
Grupo de tipos de trabajo y Tipo de trabajo (acceso general) Propietario Leer Leer Leer Leer
Horarios laborales (acceso a objetos) Todos Leer Leer Leer/Modificar Leer
Horarios laborales (acceso general) Propietario Leer Leer Lectura/Escritura Leer
Cuenta/Prospecto/Oportunidad (acceso a objetos) Todos Leer/Crear/Modificar Leer/Crear/Modificar Sin acceso Leer
Cuenta/Prospecto/Oportunidad (acceso a registros) Propietario Propietario

Propietario

Lectura/Escritura

Leer Leer
Cuenta/Prospecto/Oportunidad (acceso general) Propietario Propietario Lectura/Escritura Sin acceso Leer
Cita de servicio (acceso a objetos) Todos Leer/Crear/Modificar/Eliminar Leer/Crear/Modificar/Eliminar Leer Leer/Crear/Modificar
Cita de servicio (acceso a registros) Lectura/Escritura Lectura o Lectura/Escritura Lectura o Lectura/Escritura Lectura o Lectura/Escritura Lectura o Lectura/Escritura
Cita de servicio (acceso general) Lectura/Escritura Lectura o Lectura/Escritura Lectura o Lectura/Escritura Leer Lectura o Lectura/Escritura
Turno (acceso a objetos) Todos Leer/Crear/Modificar/Eliminar Leer Leer/Crear/Modificar/Eliminar Leer/Crear/Modificar/Eliminar
Turno (acceso a registros) Lectura/Escritura Lectura/Escritura Lectura/Escritura Lectura/Escritura Propietario de su registro de turno.
Turno (acceso general) Lectura/Escritura Lectura/Escritura Leer Lectura/Escritura Propietario de su registro de turno.

A continuación se muestra cómo puede proporcionar el acceso de entidad requerido a las diferentes partes interesadas de clientes y socios:

  • Configurar la colaboración manual: comparta manualmente cada registro con funciones del portal (Ejecutivo de socios, Gestor de socios y Usuario de socios) y proporcione el acceso necesario.
  • Configurar la colaboración gestionada por Apex: utilice la colaboración gestionada por Apex para compartir registros de turnos con las partes interesadas de socios.
  • Configurar reglas de colaboración: configure reglas de colaboración para cada objeto para proporcionar acceso a los agentes de atención al cliente del cliente.
  • Activar la opción Uso compartido de citas de recursos: active esta opción para proporcionar automáticamente acceso a citas de servicio a los recursos de servicio para los que se creó la cita.
Configurar la colaboración manual

Utilice la colaboración manual para compartir estos registros con funciones de portal:

  • Territorios de servicio
  • Recursos de servicio (usuarios y activos)
  • Grupos de tipos de trabajo
  • Tipos de trabajo
  • Cuentas, prospectos y oportunidades
Nota
Nota Proporcionamos acceso a horarios laborales a través del perfil, lo que elimina la necesidad de compartir manualmente los horarios laborales.

En vez de compartir manualmente registros individuales, puede compartir manualmente registros de forma masiva mediante el Cargador de datos. Para obtener más información, consulte Crear reglas de colaboración manuales con Knowledge del Cargador de datos.

Nota
Nota Si un usuario transfiere la propiedad de un registro, Salesforce elimina cualquier colaboración manual creada por el propietario del registro original, lo que puede hacer que los usuarios pierdan acceso. Cuando se transfiere la propiedad de la cuenta, las colaboraciones manuales creadas por el propietario de la cuenta original en registros secundarios, como oportunidades y casos, también se eliminan. Para obtener más información, consulte Colaboración manual.

Veamos algunos ejemplos.

Para compartir el territorio de San Francisco (CS), agregue una colaboración manual para Ejecutivos de socios de Chantilly Stables San Francisco con el tipo Subordinadas de función, portal e internas y acceso de lectura/escritura.

Imagen que muestra cómo compartir el territorio de San Francisco (CS).

Para compartir un recurso de servicio que pertenece a San Francisco (CS), agregue una colaboración manual para Gestores de socios de Chantilly Stables con el tipo Subordinadas de función, portal e internas y acceso de solo lectura.

Imagen que muestra cómo compartir un recurso de servicio que pertenece al territorio de San Francisco (CS).
Configurar la colaboración gestionada por Apex

Si utiliza turnos, cuando los gestores de territorios crean turnos para recursos de servicio, debe proporcionar a los recursos de servicio correspondientes acceso a registros de turnos. Para proporcionar acceso, utilice la colaboración gestionada por Apex para definir reglas de colaboración de forma programática.

A continuación se proporciona código de Apex de muestra que permite compartir automáticamente registros de turnos con el recurso de servicio correspondiente.

trigger Shift_share_with_Contractor on Shift (after insert, after update) {
if (trigger.isinsert) {
for (Shift shift: trigger.new) {
String srId = shift.ServiceResourceId;
// if shift has no ServiceResource, then no need to share shift
if (srId == null) {
continue;
}
ServiceResource sr = [Select Id, RelatedRecordId from ServiceResource Where Id=:srId];
String userId = sr.RelatedRecordId;
// if the user is owner, no need to create share row
if (userId == shift.OwnerId) {
continue;
}
// create a ShiftShare row
ShiftShare shiftShare = new ShiftShare (
ParentId=shift.Id, // Shift Id
AccessLevel='Edit', // AccessLevel - Read/Edit/All
RowCause='Manual', // RowCause - Manual
UserOrGroupId=userId // Id of the user/group
);
insert shiftShare;
}
}
else if (trigger.isupdate) {
for(Shift shift: trigger.new) {
Shift oldShift = trigger.oldMap.get(shift.Id);
String prevSrId = oldShift.ServiceResourceId;
String newSrId = shift.ServiceResourceId;
// if service resource is changed
if (prevSrId != newSrId) {
// if previous Service Resource was present, remove the share row for that
if (prevSrId != null) {
ServiceResource prevSr = [Select Id, RelatedRecordId from ServiceResource Where Id=:prevSrId];
String prevUserId = prevSr.RelatedRecordId;
// delete ShiftShare
List<ShiftShare> shiftShare = [Select Id from ShiftShare Where ParentId=:shift.Id and UserOrGroupId=:prevUserId];
if (shiftShare.size() > 0)
delete shiftShare;
}
// if Service Resource is updated, then create a share row
if(newSrId != null) {
ServiceResource newSr = [Select Id, RelatedRecordId from ServiceResource Where Id=:newSrId];
String userId = newSr.RelatedRecordId;
// if the user is owner, no need to create share row
if (userId == shift.OwnerId) {
continue;
}
// create a ShiftShare row
ShiftShare shiftShare = new ShiftShare (
ParentId=shift.Id, // Shift Id
AccessLevel='Edit', // AccessLevel - Read/Edit/All
RowCause='Manual', // RowCause - Manual
UserOrGroupId=userId // Id of the user/group
);
insert shiftShare;
}
}
}
}
}

Activar la opción Uso compartido de citas de recursos

Para asegurarse de que los recursos de servicio pueden acceder a sus citas, active Uso compartido de citas de recursos en la configuración de Salesforce Scheduler.

Nota
Nota Los usuarios que se encuentren por encima de los recursos de servicio asignados en la jerarquía obtendrán automáticamente acceso a citas de servicio de usuarios que se encuentren por debajo de ellos en la jerarquía.
Opción Uso compartido de citas de recursos activada.

Si se crean citas antes de activar el parámetro, comparta esas citas manualmente con los recursos de servicio correspondientes.

Configurar reglas de colaboración

Para compartir registros con agentes de atención al cliente, cree una función en Salesforce para agentes de atención al cliente. A continuación, cree una colaboración basada en criterios para cada objeto con el fin de compartir todos los registros con la función interna.

Veamos ejemplos de cómo compartir turnos y grupos de tipos de trabajo con todos los agentes de atención al cliente. Antes de crear reglas de colaboración, cree una función denominada Dream Horse CCA y asigne esta función a todos los agentes de atención al cliente del cliente.

Cree reglas de colaboración para compartir todos los grupos de tipos de trabajo activos con la función Dream Horse CCA.

Regla de tipo de trabajo para compartir todos los grupos de tipos de trabajo activos con la función Dream Horse CCA.

Del mismo modo, cree reglas de colaboración para compartir todos los registros de turnos con la función Dream Horse CCA.

Regla de colaboración para compartir todos los registros de turnos con la función Dream Horse CCA.
Proporcionar acceso de entidad a usuarios invitados y autenticados mediante reglas de colaboración

Para reservar citas, proporcione a los usuarios invitados y autenticados acceso a todos los registros de territorios de servicio, tipos de trabajo, grupos de tipos de trabajo, recursos de servicio y turnos.

Para proporcionar acceso a usuarios invitados, cree reglas de colaboración del tipo Acceso de usuario invitado basadas en criterios para compartir registros con el usuario invitado del sitio de Experience Cloud. Para proporcionar acceso a usuarios autenticados, cree un grupo público que incluya a todos los clientes autenticados. A continuación, cree reglas de colaboración del tipo basadas en criterios para compartir registros con el grupo público que contiene todos los clientes.

Importante
Importante Agregue los nuevos usuarios autenticados al grupo.

Echemos un vistazo a algunos ejemplos.

Cree reglas de colaboración para compartir todos los grupos de tipos de trabajo activos con los usuarios invitados.

Regla de colaboración de grupos de tipos de trabajo para compartir todos los grupos de tipos de trabajo activos con los usuarios invitados.

Del mismo modo, cree reglas de colaboración para compartir todos los registros de turnos con los usuarios invitados.

Regla de colaboración de turnos para compartir todos los registros de turnos con los usuarios invitados.

Cree reglas de colaboración para compartir todos los grupos de tipos de trabajo activos con el grupo público que contiene todos los clientes.

Regla de colaboración de grupos de tipos de trabajo para compartir todos los grupos de tipos de trabajo activos con el grupo público que contiene todos los clientes.

Del mismo modo, cree reglas de colaboración para compartir todos los registros de turnos con el grupo público que contiene todos los clientes.

Colaboración de turnos para compartir todos los registros de turnos con el grupo público que contiene todos los clientes.

Tras completar la configuración, Dream Horse y sus partes interesadas tienen el acceso necesario. Por su parte, los concesionarios de Dream Horse no pueden acceder a los datos de los demás.

 
Cargando
Salesforce Help | Article