Skip to main content
추천 그룹

* Salesforce Field Service *

Welcome! This group is dedicated to your success with Salesforce Field Service. Join the conversation here to stay up to date on the product, learn best practices, and everything in between. Use this group to review resources, ask questions, help each other, and share experiences. --------------------------------------- This group is maintained and moderated by Salesforce employees. The content received in this group falls under the official Forward-Looking Statement: http://investor.salesforce.com/about-us/investor/forward-looking-statements/default.aspx

Hi, 

 

I have a Service Appointment in Greenville, SC. I have two techs one in Atlanta, GA and the other one is in Schenectady, NY. When I use "Candidates" option, using my custom Scheduling policy where Minimize Travel carry the high weightage compared to ASAP, first it showed the tech from Atlanta , GA which is the closest to the appointment. I switched the addresses of the techs, but this time still it showed the tech who had Atlanta GA earlier but now he has Schenectady as his address. Shouldn't it look at the resource which is closest? 

 

Thanks, 

Michel

답변 1개
0/9000

Hello everyone, good morning! 

 

I'm using the Overlapping Flow, but I've noticed that when the overlap is caused by an absence, the flow doesn't run. Does anyone know if this is expected behavior or if there is any configuration required for it to work with absences?

I've already handled the logic in the Flow. We have the Absence Type

variable available in the Flow, so if the overlap is caused by an absence, I would like the Flow to execute as well. However, it only runs when the overlap is caused by another appointment. 

 

Thanks in advance!  

 

@* Salesforce Field Service *

답변 5개
0/9000
답변 11개
  1. 어제 오후 4:09

    @Bruce Stewart

    KI for which part? We do block the availability on the gantt now. 

    The indication with the holiday details is not a bug but a feature that is coming soon.

0/9000

is there a documentation for all the custom attributes applicable to the field service apps in the Connected apps settings? 

It would be great to have such list with the related effect. 

 

Not looking for any specific function, I'd rather like to see what's available.   

Custom attributes for field service mobile apps

 

Thanks! 

Stefano

답변 1개
  1. 어제 오후 12:48

    Hi @Stefano Pescetelli , As far as I know, Salesforce doesn't publish a single, comprehensive list of all Field Service Mobile Connected App custom attributes and their effects. Some attributes are documented in Knowledge articles and product documentation, but many are only mentioned in feature-specific docs or release notes. The closest references are the Connected App Custom Attribute Values for Salesforce Mobile App knowledge article and the Field Service Mobile documentation, but there doesn't appear to be one central catalog covering every supported Field Service-specific attribute. 

0/9000

Hi everyone,

we are currently using Salesforce Field Service to manage preventive and corrective maintenance for a large number of photovoltaic plants across multiple regions.  After several months of adoption, we have realized that our current configuration — with very granular Contract Line Items (one for each maintenance activity) — does not fit well with our operational model.

We are now trying to redesign the process for ordinary (preventive) maintenance, with the following business goals:

  • Each plant should have two main maintenance appointments per year, where the majority of service contract items (including semi-annual ones) are grouped together.
  • During these aggregated interventions, the technician on the FSL Mobile App should:
    • see a checklist containing all the contract line items to be worked on;
    • easily check off completed items, add notes, and attach photos, while keeping full traceability for each activity.
  • The contract line items excluded from these aggregated visits — as well as any not completed during the intervention — should be automatically rescheduled or combined with:
    • other service appointments created from incidents or corrective tickets, or
    • planned extraordinary maintenance appointments when compatible.
  • The Dispatcher, when creating a new Work Order, should be able to:
    • instantly see all unscheduled or pending contract line items, and
    • receive automatic suggestions of items that can be scheduled together with new service appointments for the same site/asset.

Our current setup generates one work order per contract line item, which results in excessive volume and poor visibility for dispatchers.

👉 Question:  What would be the most effective way — using Salesforce Field Service best practices — to achieve this aggregated scheduling model?  Is it feasible to handle this through standard objects and Flows (e.g., using flags, maintenance plans, or grouped service appointments), or would this scenario require a more advanced custom implementation?

Any advice, examples, or Trailhead resources related to similar use cases (preventive maintenance aggregation or smart rescheduling) would be highly appreciated.

Thank you!

@* Salesforce Field Service * 

답변 3개
  1. Heiko Lindner (Privat) Forum Ambassador
    8월 3일 오후 3:43

    Hey @Andrea Donzelli Víctor Márquez (CYMAQ)  I mean there are standard option/ features within field service which can be used. 

0/9000

 

I'm trying to install the

Field Service Dashboards Salesforce Labs package, but the installation fails with the following error:

Our org originally had 5 dynamic dashboards. We reduced the count to 4, but the installation still fails with the same error.

Could anyone confirm how many dynamic dashboards this package creates during installation? Also, is there a version of the package that installs the dashboards as standard (run as a specific user) instead of dynamic dashboards?

답변 1개
  1. 8월 3일 오전 11:51

    Hi @Kalaiarasi Rajendhran The installation is likely failing because the package creates additional dynamic dashboards, causing your org to exceed the allowed limit. Even after reducing your existing dashboards, the package may still require more dynamic dashboard slots than are available. Check your org's dynamic dashboard limit and the package documentation to confirm the number of dashboards it installs. If you need standard dashboards instead, see if the package provides an alternate version or contact the package owner, as the dashboard type cannot be changed during installation.

0/9000

While trying to login into FSL Mobile App (Android), the user is getting the message "Manifest was malformed" and is not able to proceed further.     We have tried cleaning the storage and cleaning the cache, also tried re-installing the app from Google Play Store, however the issue still remains.    Can someone advice how this issue can be resolved.  Appreciating the help.

 

@* Salesforce Field Service * 

답변 8개
  1. 7월 29일 오후 10:54

    I might be a bit late here, but I had faced the same issue.  SF Support helped me out. I had to change the ' Session Security Level Required at Login ' option under Profile from 'High Assurance' to None. This resolved it for me.

0/9000

Hello team,  I keep getting a toast message saying 'Manifest was malformed' when I try to login to the Field Service Mobile app for a user on our Dev Sandbox environments. I don't get the same error when using another QA Sandbox environment. I have attached a snippet of the error log (Copilot says the server is getting HTML response instead of javascript) but it doesn't give a stack trace from which I could figure out where exactly the failure lies.   Following are my troubleshooting steps so far:

  • Uninstall and re-install the app from Playstore for my Android device
  • Clear Cache and cookies, hard close, and re-open app and re-login
  • Deactivate and Re-activate the Service Resource, ensure it is linked to the correct User
  • Create a new Service Resource linked to a new user
  • Check the Field Service Mobile app builder config and compare it with the config on the QA Sandbox
  • Check the Field Service Mobile settings and compared it to the settings on QA Sandbox

Error log snippet:  2026-07-27T01:55:51.708Z W/BootstrapHostApp: Failed to downloadApp  com.salesforce.lightning.mobileruntime.download.DownloaderException$InvalidData: Manifest was malformed  at com.salesforce.lightning.mobileruntime.download.ManifestDownloader.fetchManifest(Unknown Source:128)  at com.salesforce.lightning.mobileruntime.download.ManifestDownloader$fetchManifest$1.invokeSuspend(Unknown Source:12)  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:10)  at kotlinx.coroutines.UndispatchedCoroutine.afterResume(Unknown Source:30)  at kotlinx.coroutines.AbstractCoroutine.resumeWith(Unknown Source:13)  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:46)  at kotlinx.coroutines.UndispatchedCoroutine.afterResume(Unknown Source:30)  at kotlinx.coroutines.AbstractCoroutine.resumeWith(Unknown Source:13)  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:46)  at kotlinx.coroutines.DispatchedTask.run(Unknown Source:128)  at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(Unknown Source:3)  at kotlinx.coroutines.scheduling.TaskImpl.run(Unknown Source:2)  at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(Unknown Source:0)  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(Unknown Source:33)  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(Unknown Source:28)  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(Unknown Source:0)  Caused by: kotlinx.serialization.json.internal.JsonDecodingException: Unexpected JSON token at offset 2: Expected start of the object '{', but had '<' instead at path: $  JSON input:   <!DOCTYPE HTML PUBLIC "-//W3C/.....  at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(SourceFile:3)  at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(SourceFile:10)  at kotlinx.serialization.json.internal.AbstractJsonLexer.fail(Unknown Source:51)  at kotlinx.serialization.json.internal.AbstractJsonLexer.fail$default(Unknown Source:14)  at kotlinx.serialization.json.internal.AbstractJsonLexer.unexpectedToken(Unknown Source:103)  at kotlinx.serialization.json.internal.StringJsonLexer.consumeNextToken(SourceFile:14)  at kotlinx.serialization.json.internal.StreamingJsonDecoder.beginStructure(Unknown Source:22)  at com.salesforce.lightning.mobileruntime.bootstrap.json.BootstrapManifest$$serializer.deserialize(SourceFile:1)  at com.salesforce.lightning.mobileruntime.bootstrap.json.BootstrapManifest$$serializer.deserialize(SourceFile:2)  at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(Unknown Source:314)  at kotlinx.serialization.json.Json.decodeFromString(SourceFile:3)  at com.salesforce.lightning.mobileruntime.bootstrap.json.BootstrapManifest$Companion.fromJson(Unknown Source:20)  at com.salesforce.lightning.mobileruntime.download.ManifestDownloader.fetchManifest(Unknown Source:104)  ... 15 more    2026-07-27T01:55:51.713Z E/LdsEnvironmentManagerImpl: LDS bootstrap failed  com.salesforce.lightning.mobileruntime.download.DownloaderException$InvalidData: Manifest was malformed  at com.salesforce.lightning.mobileruntime.download.ManifestDownloader.fetchManifest(Unknown Source:128)  at com.salesforce.lightning.mobileruntime.download.ManifestDownloader$fetchManifest$1.invokeSuspend(Unknown Source:12)  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:10)  at kotlinx.coroutines.UndispatchedCoroutine.afterResume(Unknown Source:30)  at kotlinx.coroutines.AbstractCoroutine.resumeWith(Unknown Source:13)  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:46)    Thanks in advance team, any help is greatly appreciated.    - Swapnil    @* Salesforce Field Service * 

답변 1개
  1. 7월 29일 오후 10:52

    Hello team, I got help from Salesforce Support regarding this.  I had to change the 'Session Security Level Required at Login' option under Profile from 'High Assurance' to None. The Desktop login worked fine for the user, just the app login kept failing. 

0/9000

Heads up: Upcoming Update to Appointment Assistant – Self-Service Scheduling

 

We're rolling out an important update to the 

Book New Appointment

 flow in Appointment Assistant's self-service scheduling. We want to give you a heads-up ahead of time so you can prepare. 

 

What's changing?

 

This update includes a security improvement to the flow. If your org has customized the 

Book New Appointment

 flow — particularly around the authentication step — you may want to review your configuration before the update reaches your environment to ensure everything continues to work as expected. 

 

What you should do:

 

If you're using self-service scheduling and would like to be included in coordinated testing:

  • Send me your sandbox org ID via DM
  • Drop a comment in this thread letting me know you've sent it so I don't miss it!

What coordinated testing looks like:

  • We deploy the update to your sandbox first, so you can validate the flow end-to-end
  • If everything runs smoothly, we move forward with production deployment
  • If you encounter any issues, our team will work closely with you to resolve them

 

We're committed to making this transition as smooth as possible, and your feedback is genuinely valuable to us. 

 

For more details, refer to the 

https://help.salesforce.com/s/issue?id=a02g70000063NkbAAE

 

Questions or want to be included in coordinated testing?

 DM me your sandbox org ID and comment here so I know to look out for it! 

댓글 3개
0/9000

Hi everyone, 

 

I'm trying to implement a custom emergency dispatch process in Salesforce Field Service using Apex, and I'm looking for guidance on whether it's possible to replicate the behaviour of the Emergency Scheduling Wizard. 

 

For an emergency Service Appointment, I need to:

  • Find the nearest Field Service Technician (Service Resource).
  • Assign the Service Appointment to that technician even if they already have an existing appointment (allow overlapping appointments).
  • Pin the Service Appointment.
  • Automatically dispatch the appointment.

Current Behaviour: 

 

I'm currently using an Emergency Scheduling Policy to retrieve available slots. However, it only returns technicians who have available capacity or free time slots. 

 

If the nearest technician already has an appointment, they isn't returned by the scheduling APIs, even though our business requirement is to assign the emergency appointment to that technician by allowing an overlap. 

 

Reference:

 

I'm referring to the Salesforce documentation for Emergency Scheduling: 

https://help.salesforce.com/s/articleView?id=service.pfs_emergency.htm&type=5

 

 

Questions:

  1. How does the Emergency Scheduling Wizard determine the nearest technician?
  2. Does it use internal logic that isn't exposed through the standard Field Service scheduling APIs?
  3. Is there a supported Apex or Field Service API that can return the nearest Service Resource regardless of existing appointments?
  4. Has anyone successfully implemented this scenario in Apex?
  5. What is the Salesforce-recommended approach for reproducing the Emergency Scheduling Wizard behaviour programmatically?

Ultimately, we're trying to build a custom Apex solution that behaves the same as the Emergency Scheduling Wizard, but we're unable to retrieve the nearest technician when they already have scheduled work. 

 

Any guidance, recommended approach, or experience with this scenario would be greatly appreciated. 

 

Thanks in advance!

답변 3개
  1. 7월 26일 오후 10:47

    Yash, if you want to find nearest true location of the technician to the Service Appointment based on their current pinged location from their SFS mobile app - you can use the following fields:  

     

    LastKnownLatitude | TypedoublePropertiesCreate, Filter, Nillable, Sort, UpdateDescriptionThe latitude of the last known location. 

     

    LastKnownLongitude | TypedoublePropertiesCreate, Filter, Nillable, Sort, UpdateDescriptionThe longitude of the last known location. 

     

    The last known location is based on the frequency that you set in the Field Service Mobile settings in which they ping their location breadcrumb..  

     

    What I would do is a 2 step process - 1st - fetch the filtered list of resources through the other apex methods to make sure I get resources based on the minimum Scheduling policy work rules requirement - example - match territory, match skills.. based on the filtered list - you can - on a subset of resources use the last known location to find the nearest resources, there are distance functions in apex where you can find the nearest tech through the "As the crow flies" model and not SLR.  The more resources you query the distance the more overhead you would have in calculating this distance.. Once you find the nearest tech, manually create the assignment by creating an AssignedResource record manually - since there is no automated scheduling method which will allow you to create overlaps.

0/9000