Tambahkan tindakan cepat LWC ke aplikasi seluler Salesforce Field Service – Beragampengetahuan
Apakah Anda ingin menyempurnakan aplikasi seluler Salesforce Field Service dengan fungsi khusus?
Dalam panduan ini, kami akan memandu Anda dalam menambahkan Tindakan Cepat Komponen Web Lightning (LWC). ke aplikasi seluler layanan lapangan.
Dengan menggunakan Tindakan Cepat Komponen Web Lightning, Anda dapat memperkenalkan fungsionalitas khusus di luar kemampuan standar aplikasi seluler Field Service, sehingga menghasilkan pengalaman pengguna yang lebih disesuaikan.
Jelajahi lebih banyak solusi dari beragampengetahuan.
Contents
Prasyarat: Aktifkan Lightning SDK di aplikasi seluler Field Service
Sebelum melanjutkan, pastikan Anda telah menyelesaikan hal berikut:
- Navigasi ke Izin sistem Kumpulan izin yang ditetapkan ke sumber daya layanan Anda.
- Aktifkan kotak centang “Aktifkan Lightning SDK untuk penggunaan online dan offline di aplikasi seluler Field Service.”
- CATATAN: Jika Pengaturan organisasi Lightning SDK untuk Field Service Mobile Jika diaktifkan, izin ini akan diabaikan.
Tanpa pengaturan kunci ini, Tindakan Cepat Komponen Web Lightning Tidak muncul di aplikasi seluler Field Service.
Mengapa menggunakan aplikasi seluler Salesforce Field Service?
Aplikasi seluler Field Service untuk Android dan iOS menyediakan alat komprehensif untuk tenaga kerja lapangan saat ini.
Itu dibangun dengan pendekatan offline-first sehingga Anda dapat bekerja dan menyimpan perubahan bahkan tanpa akses internet. Anda juga dapat menyesuaikan aplikasi untuk memenuhi kebutuhan spesifik bisnis Anda.
Apa itu Tindakan Cepat Komponen Web Lightning?
Tindakan Cepat Lightning Web Components (LWC) memungkinkan pengguna melakukan tugas dengan mudah di Salesforce dengan memanggil Komponen Web Lightning khusus langsung di halaman rekaman.
Dengan menyesuaikan tindakan cepat, Anda dapat menyederhanakan navigasi dan alur kerja, memberikan pengguna akses cepat ke informasi paling penting.
Tombol UI intuitif ini meningkatkan produktivitas dengan menyediakan alat dan data di ujung jari Anda.
Bagaimana cara menyiapkan komponen web Lightning untuk merekam tindakan cepat pada halaman?
Siapkan Lightning Web Components (LWC) sebagai tindakan cepat dengan menentukan metadata pada halaman rekaman <component>.js-meta.xml dokumen.
tentukan a lightning__RecordAction tujuan dan pengaturan isExposed tiba true Jadikan komponen dapat diakses dengan cepat.
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="
<apiVersion>62.0</apiVersion>
<isExposed>true</isExposed>
<targets>
<target>lightning__RecordAction</target>
</targets>
</LightningComponentBundle>
Ikuti langkah-langkah sederhana ini untuk membuatnya Tindakan Cepat Komponen Web Lightning (LWC). Di Salesforce dan tambahkan ini ke tata letak halaman:
- Navigasi ke mendirikan.
- Pergi ke manajer objek dan pilih objek tempat Anda ingin membuat tindakan cepat.
- Klik Tombol, tautan, dan tindakan lalu pilih tindakan baru.
- memilih tipe tindakan sebagai Komponen Jaringan Petir.
- Pilih komponen yang diperlukan, tentukan nama dan label, lalu klik menyimpan.
- Tambahkan tindakan cepat yang baru dibuat ke Tata letak halaman obyek.
Kasus Penggunaan: Tingkatkan Manajemen Perintah Kerja dengan Tindakan Cepat LWC
Bayangkan menggunakan a LWC Bertindak Cepat Hal ini memungkinkan Sumber daya layananUnggah dan lihat gambar yang terkait dengan perintah kerja dengan mudah.
Fitur ini menyederhanakan manajemen perintah kerja dan memungkinkan teknisi lapangan mencatat dan mengakses informasi visual langsung di lapangan Aplikasi Seluler Layanan Lapangan Salesforce.
Ambil tindakan cepat terhadap tiket
Tindakan cepat ditandai lampiran

Kelas Apex berikut akan digunakan sebagai pengontrol untuk tindakan cepat komponen web Lightning
public with sharing class FileClass {
/**
* @description Method to retrieve the related images
* @param linkedEntityId the Salesforce recordId
* @return `List<ContentVersion>` List of related images
*/
@AuraEnabled
public static List<ContentVersion> wkGetFiles(String linkedEntityId){
List<String> fileTypes=new List<String>{'JPEG','JPG','PNG'};
Set<Id> contentDocumentIds = new Set<Id>();
for (ContentDocumentLink link : [
SELECT ContentDocumentId
FROM ContentDocumentLink
WHERE LinkedEntityId =:linkedEntityId
]) {
contentDocumentIds.add(link.ContentDocumentId);
}
return [
SELECT Id, Title, ContentDocumentId, FileType, VersionData
FROM ContentVersion
WHERE ContentDocumentId IN :contentDocumentIds
AND IsLatest = true AND FileType IN:fileTypes ORDER BY CreatedDate Asc
];
}
/**
* @description Method to create ContentVersion records
* @param fileName Name of the file
* @param base64Data the image converted to base64
* @param parentId RecordId of the related record
* @return `String` record Id of the inserted
* @exception
*/
@AuraEnabled
public static String createContentVersion(String fileName, String base64Data, String parentId) {
try {
// Decode the base64 string
Blob fileBody = EncodingUtil.base64Decode(base64Data);
// Create the ContentVersion record
ContentVersion contentVersion = new ContentVersion();
contentVersion.Title = fileName;
contentVersion.PathOnClient = fileName;
contentVersion.VersionData = fileBody;
if (String.isNotBlank(parentId)) {
contentVersion.FirstPublishLocationId = parentId; // Link to a record (optional)
}
insert contentVersion;
// Return the Id of the created ContentDocument
return contentVersion.Id;
} catch (Exception e) {
throw new AuraHandledException('Error uploading file: ' + e.getMessage());
}
}
}
Komponen Web Lightning akan diimplementasikan seperti ini
berkas HTML
<template>
<template if:true={showSpinner}>
<lightning-spinner alternative-text="Uploading..." size="small"></lightning-spinner>
</template>
<div class="container">
<template lwc:if={showFile}>
<div class="slds-text-heading_medium">
Attachments
</div>
<div class="slds-grid slds-wrap">
<template for:each={files} for:item="file">
<div class="slds-col slds-m-around_small slds-align_absolute-center" key={file.Id}>
<img src={file.source} alt="" style="max-width: 140px;">
</div>
</template>
</div>
</template>
<template lwc:else>
<h1>No Attachments</h1>
</template>
<div class="slds-grid slds-grid_vertical">
<div class="slds-col slds-m-around_small slds-align_absolute-center">
<strong>{fileName}</strong>
<lightning-input type="file" accept=".png, .jpg, .jpeg," onchange={handleFileChange}></lightning-input>
</div>
<div class="slds-col slds-m-around_small slds-align_absolute-center">
<lightning-button label="Upload" onclick={uploadFile} variant="brand" class="s-margin-top" disabled={isUploadDisabled}></lightning-button>
<lightning-button label="Refresh View" onclick={refreshView} class="slds-m-left_small"></lightning-button>
</div>
</div>
</div>
</template>
file JavaScript
import { LightningElement,api,track } from 'lwc';
import wkGetFiles from "@salesforce/apex/FileClass.wkGetFiles";
import createContentVersion from "@salesforce/apex/FileClass.createContentVersion"
export default class wkWorkOrderAttachments extends LightningElement {
@api recordId;
@track files=[];
imgList=[];
showFile=false;
showSpinner=false;
fileName;
fileContent;
isUploadDisabled=true;
connectedCallback(){
this.getRelatedImages();
}
getRelatedImages(){
this.showSpinner=true;
wkGetFiles({linkedEntityId:this.recordId}).then(response=>{
if(response!=null){
this.imgList=response;
for(let i=0;i<this.imgList.length;i++){
let image = {
Id: this.imgList[i].Id,
Title: this.imgList[i].Title,
source:window.location.origin + "/sfc/servlet.shepherd/version/renditionDownload?rendition=THUMB720BY480&versionId=" +this.imgList[i].Id +"&operationContext=CHATTER&contentId=" +this.imgList[i].ContentDocumentId
};
this.files.push(image);
}
}
this.showFile=true;
this.showSpinner=false;
})
}
handleFileChange(event){
const file = event.target.files[0];
if (file) {
this.fileName = file.name;
const reader = new FileReader();
reader.onload = () => {
const base64 = reader.result.split(',')[1];
this.fileContent = base64;
this.isUploadDisabled = false;
};
reader.readAsDataURL(file);
}
}
async uploadFile() {
if (this.fileContent && this.fileName) {
this.showSpinner = true;
try {
const result = await createContentVersion({
fileName: this.fileName,
base64Data: this.fileContent,
parentId: this.recordId,
});
this.uploadedFileId = result;
this.showSpinner = false;
this.isUploadDisabled = true;
this.files=new Array();
this.fileContent=null;
this.fileName=null;
this.connectedCallback();
} catch (error) {
this.showSpinner = false;
}
}
}
refreshView(){
this.isUploadDisabled = true;
this.files=new Array();
this.fileContent=null;
this.fileName=null;
this.connectedCallback();
}
}
contoh
Kasus penggunaan
Sumber daya layanan dapat mengunggah gambar yang terkait dengan perintah kerja.
sebagai kesimpulan
ini Aplikasi Seluler Layanan Lapangan adalah alat canggih yang dirancang bagi teknisi lapangan untuk mengelola tugas seluler secara efisien.
Ini memberikan kemampuan yang dapat disesuaikan dan terintegrasi secara mulus dengan Salesforce Field Service, memungkinkan bisnis untuk menyederhanakan operasi dan meningkatkan kepuasan pelanggan.
Selain itu, tindakan cepat Lightning Web Component memungkinkan pengguna menambahkan fungsionalitas khusus untuk memperluas kemampuan aplikasi seluler Field Service.
Jika Anda memiliki pertanyaan tentang Field Service Lightning atau solusi yang dipersonalisasi, silakan hubungi konsultan ahli Salesforce kami: [email protected] Atau melalui obrolan langsung.
Tim kami tersedia sepanjang tahun untuk memberikan solusi khusus berdasarkan kebutuhan bisnis Anda.
rencana pengembangan website
metode pengembangan website
jelaskan beberapa rencana untuk pengembangan website, proses pengembangan website, kekuatan dan kelemahan bisnis pengembangan website
, jasa pengembangan website, tahap pengembangan website, biaya pengembangan website
#Tambahkan #tindakan #cepat #LWC #aplikasi #seluler #Salesforce #Field #Service