7

I heard from the DX team that as of today (October 2017), this is not possible, as I suspected. However, I was told that it is possible via a new process called "shape orgs", which is currently in pilot.


5

Disclaimers: I am on the team at Salesforce.org responsible for building this free and open source toolchain, and I haven't worked on an FSL/CPQ project with it. Salesforce.org's CumulusCI (CCI) hits several of your important points here, albeit not all of them. It's a build automation and CI tool oriented towards creating identical, repeatable scratch org ...


5

Here is my theory. From Salesforce docs here: A service report is a PDF that summarizes a work order or service appointment and can be signed by customers and your team members. To control what shows up in your service reports, create service report templates. So basically insertion of ServiceReport creates a PDF. The way salesforce creates a ...


5

You need to explicitly reference the field service Location object as Schema.Location since just saying Location implicitly refers to the older System.Location class.


4

Field sets in managed packages require the developer to explicitly mark each one as eligible to be added to the field set. https://salesforce.stackexchange.com/a/63416/55332 There is an idea to be able to set this at the object level, since many managed package owners overlook this. https://success.salesforce.com/ideaView?id=08730000000aKz1AAE


4

After a quick research, I realized a few status transitions are auto-created by package but not all of them. When you are runnning test, you do not have access those, so you need to use following method to create status transition for your test class: FSL.GlobalAPIS.addStatusTransition(fromStatus, toStatus);


3

This is what we do: Talend: For moving CPQ data(Product Rules, Custom Script etc) between environments, I created a ETL job in Talend and made it an executable jar file. We have also a created ETL job in Talend to migrate some data(like Contacts, Accounts and etc..) from production and made it an executable jar file. These executable jar files are ...


3

ServiceAppointment object is available in API version 38.0 and later. So, use {!REQUIRESCRIPT("/soap/ajax/38.0/connection.js")} {!REQUIRESCRIPT("/soap/ajax/38.0/apex.js")}


2

There are two methods to access this Lightning App (https://myOrg.lightning.force.com/c/MyApp.app?recordId=ABCD) Create a Connected App(Under Manage Apps>New Connected App) and specify the Lightning App URL as the Start URL and Mobile Start URL. You can then add the App to the App Launcher and to Salesforce1 Navigation Menu, u so that you can launch the app ...


2

Below is a link through which you can install the Field Service Lightning Managed Package. There are also links to the documentation and a guide for migration to the new standard object model of FSL. https://fsl.secure.force.com/install/


2

To enable push notifications for the iOS or Android app: Ensure that the connected app (different from the app itself!) has been downloaded. Enable notifications in Setup. From Setup, enter Field Service Settings in the Quick Find box, then select Field Service Settings. Select Notify relevant users in Lightning Experience, the mobile app, and the Field ...


2

The work order and work order line item shares a master detail relationship. Work order is parent and Work order line item is child. Hence the permission will be derived through the Parent. If someone has read permission on a work order record he can also view work order line item associated with that. So, To give create permission to a profile for Work ...


2

Assuming you do not care what the previous status was. If testing an update trigger on ServiceAppointment where Status changed from A to B: In your test method update all statuses to null first and then update the ServiceAppointments again to the desired status. // All ServiceAppointment statuses are set to some '{Status A}' for(...


1

if you manually create a ServiceResource and then query it you will find that resourcetype is set as 'T' not as 'Technincian' hence you need to pass 'T'which is a valid value for this picklist. ServiceResource serviceResourceRecord = new ServiceResource(Name='ResourceName2' , ResourceType ='...


1

Snippets from the documentation on Read-Only Mode Overview: When your organization is in read-only mode, Salesforce Classic desktop and mobile browser users will see a banner at the top of their browser window. Users attempting to edit records during read-only mode in Lightning Experience will not see a banner, but will receive a “Review below errors”...


1

Apparantly it's just enough to create a record for Operating Hours. OperatingHours oh = new OperatingHours(); oh.Name = 'TestOH'; insert oh;


1

I'd recommend you add a custom field to ProductConsumed called IsDeleted__c that's a boolean checkbox and create an action or component that executes offline which causes IsDeleted__c to be set to true whenever the ProductConsumed is deleted from the Work Order (whether it be from the WorkOrderLineItem or elsewhere). Then, alter the query in your Get ...


1

Things you have mentioned Resource Territory, Earliest Start Permitted, Working Hour, Match Territory, Resource Availability - are called Work Rules under Scheduling Policies. The Work Rules differs based on the Scheduling Policy you choose to Schedule SA. For an example - a scheduling policy called "Soft Boundaries" - does not include "Match Territory" in ...


1

I dont think you can do this with configuration. Conditional required based on field values is not possible . You other options are Validation rule(which you have mentioned) Trigger code


1

I have experienced the same issue before. Here are some of the points you need to know about notifications: There will be no notifications if the test Service Resource you are using to test the notifications is assigned to yourself Notifications are only working if the Service Resource has "Followed" the Service Appointment and Work Order via chatter. More ...


1

This is now possible if you specify the feature and settings in your project-scratch-def.json file like so: { "features": ["FieldService"], "settings": { "fieldServiceSettings": { "fieldServiceOrgPref": true } } }


1

you need to install another package to enable push notifications to FSL App. https://help.salesforce.com/articleView?id=mfs_push_notifications.htm&type=5


1

While I am not sure how is your ServiceAppointment related to Task, I assume its using ParentId. Conidering that to be the case, this is how you will need to make the update on the status of all service appointments related to your completed tasks. List<Id> allCompleteTaskIds = new List<Id>(); // create a list of completed tasks for (Task T : ...


1

To clarify your question, what you want to open is an App that runs from within Salesforce Mobile using using an extension from the FSL App. What you're asking to do is supported on iOS. However, you cannot pass parameters of the type you are asking about via lightning App Extension. Per the documentation you referenced: The Salesforce app doesn’t support ...


1

Did you try with below checkbox Show all Salesforce object? sometimes it may help you to resolve your issue.


1

You can do this using FSL App Extensions, which are triggered using the Action Button (circular lightning bolt button), and can pass parameters from the current record similar to a URL: https://help.salesforce.com/articleView?id=mfs_extension.htm&type=5


1

Yes you need to ask Salesforce.I had the same issue with enabling field service in my client org.


1

If you have already purchased licenses, just go to your production org and in settings, company info, use the match licenses button. This will make the "enable field service lightning" button appear.


1

Yes you need to ask Salesforce. Please see the details here https://help.salesforce.com/apex/HTViewSolution?urlname=How-to-activate-install-Field-Service-Lightning&language=en_US


Only top voted, non community-wiki answers of a minimum length are eligible