Salesforce spring'21 릴리스 - 개발 기능

Salesforce의 새로운 릴리스가 빠르게 다가오고 있습니다. 여러분 중 일부는 이미 새로운 기능을 경험할 기회를 가졌습니다.

몇 분만 시간을 내어 출시의 좋은 부분을 살펴보도록 하겠습니다.

📌 SOQL을 사용하여 모든 필드 선택 가능



이전 버전의 SOQL에서 필드 검색은 검색하려는 모든 필드의 모든 이름을 지정하는 것을 의미했습니다.

글쎄, 더 이상 🎉🎉

📣 이제 새로운 FIELDS() 함수를 사용하여 쿼리 문 내에 미리 정의된 필드 그룹을 포함할 수 있습니다.

SELECT FIELDS(ALL) FROM Account LIMIT 200
SELECT FIELDS(CUSTOM) FROM Account LIMIT 200
SELECT FIELDS(STANDARD) FROM Account


필드 목록의 다른 필드 이름과 FIELDS()를 혼합할 수도 있습니다. 예를 들어:

SELECT Name, Id, FIELDS(CUSTOM) FROM Account LIMIT 200
SELECT someCustomField__c, FIELDS(STANDARD) FROM Account




그러나 검색할 필드를 이미 알고 있는 경우 FIELDS()를 사용하고 필요한 것보다 더 많은 필드를 검색하는 대신 명시적으로 지정하여 더 나은 성능을 얻을 수 있습니다.

일부 사용자가 이미 알고 있듯이 SOQL은 SELECT 문이 검색 비용이 많이 드는 많은 양의 데이터를 반환하는 경우 결과를 자동으로 페이징합니다. 예를 들어 개체에 많은 필드가 포함되어 있거나 CLOB 또는 BLOB 필드가 포함된 경우 이러한 상황이 발생할 수 있습니다. FIELDS()가 많은 양의 데이터를 반환하는 경우에도 발생할 수 있습니다.

그리고 이 기능에 대해 알아야 할 마지막 사항은 결과 행을 200개 이하의 레코드로 제한해야 한다는 것입니다.

📌 정적 방법을 사용하여 사용자 지정 메타데이터 유형 레코드에 액세스



Apex getAll() , getInstance(recordId) , getInstance(qualifiedApiName)getInstance(developerName) 메서드를 사용하여 사용자 정의 메타데이터 유형 레코드에서 정보를 더 빠르게 검색합니다.

List<Games__mdt> mcs = Games__mdt.getall().values();
boolean textField = null;
if (mcs[0].GameType__c == 'PC') {
   textField = true;
}
system.assertEquals(textField, true);


📌 콜아웃을 만드는 호출 가능한 Apex 메서드 플래그 지정



나는 항상 호출 가능한 메서드 내에서 콜아웃을 만들기 위해 퓨처 메서드를 사용했는데, 오늘 이 기능을 여러분과 공유하게 되어 매우 기쁩니다.

@InvocableMethod(callout=true, label="My Action Label")


📌 마커 사용자 지정 및 맵 동작 제어



번개 맵 기본 구성 요소에서 마커를 정의하고 동작을 제어하여 원하는 방식으로 맵을 사용자 지정하고 설계된 대로 보이게 합니다.



<template>
   <lightning-map
       map-markers={mapMarkers}
       options={mapOptions}
   ></lightning-map>
</template>


mapOptions에서 확대/축소를 비활성화하고 지도 또는 위성 버튼을 제거하는 disableDefaultUI 속성을 설정합니다. 지도 패닝을 비활성화하려면 draggable 속성을 설정합니다.

import { LightningElement } from 'lwc';
export default class LightningExampleMapCustomMarker extends LightningElement {
   mapOptions = {
                   'disableDefaultUI': true // when true disables Map|Satellite, +|- zoom buttons
                   'draggable': false, // when false prevents panning by dragging on the map
   };
   mapMarkers = [
      {
         location: {
                      City: 'San Francisco',
                      Country: 'USA',
                      PostalCode: '94105',
                      State: 'CA',
                      Street: '425 Mission St',
                   },
          mapIcon : {
                      path: 'M 125,5 155,90 245,90 175,145 200,230 125,180 50,230 75,145 5,90 95,90 z',
                      fillColor: '#CF3476',
                      fillOpacity: .5,
                      strokeWeight: 1,
                      scale: .10,
                    }
      }
   ];
}


📌 ui 네임스페이스의 Aura 구성 요소가 더 이상 사용되지 않음



📣 Salesforce는 2021년 5월 1일부터 UI 네임스페이스를 지원하지 않습니다. 가능한 한 빨리 마이그레이션을 계획해야 합니다.

몇 가지 예:

대신에

ui:actionMenuItem


사용

 lightning:menuItem 


📌 Lightning 웹 구성 요소 작업 만들기(파일럿)



빠른 작업을 생성하려면 Aura 구성 요소를 사용해야 했습니다. 오늘날 Salesforce는 LWC를 사용하여 이를 가능하게 했습니다. 그러나 이것은 여전히 ​​파일럿이며 아직 프로덕션에서 사용할 수 없다는 점에 유의하십시오.



🚨🚨🚨 플랫폼 API 레거시 버전의 지원 중단 예정에 대한 사전 공지 🚨🚨🚨



Summer '21 릴리스에서는 Salesforce Platform API의 레거시 버전이 만료되고 Salesforce에서 더 이상 지원되지 않습니다.

SOAP API
7.0, 8.0, 9.0, 10.0, 11.0, 11.1, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0, 20.0

REST API
20.0

대량 API
16.0, 17.0, 18.0, 19.0, 20.0



더 알아보기



이 블로그에서 오늘 우리가 개발하는 방식에 큰 영향을 미칠 것으로 생각되는 기능을 강조했습니다. 더 많은 기능을 보려면 여기link를 따르십시오.

이것이 도움이 되기를 바랍니다. 트위터에서 저를 찾을 수 있습니다.

좋은 웹페이지 즐겨찾기