글
1. Install Package
https://login.salesforce.com/packaging/installPackage.apexp?p0=04t4P000002EMv0
https://login.salesforce.com/packaging/installPackage.apexp?p0=04t4P000002EMv0
login.salesforce.com
2. batch 수정(BatchLeadConvert.cls)
public with sharing class BatchLeadConvert implements Database.Batchable<SObject>, Database.RaisesPlatformEvents {
3. trigger 생성(Developer Console)
trigger BatchApexErrorTrigger on BatchApexErrorEvent (after insert) {
list bcrList = new List();
for(BatchApexErrorEvent bcr: trigger.new){
BatchLeadConvertErrors__c evrterror= new BatchLeadConvertErrors__c ();
evrterror.AsyncApexJobId__c = bcr.AsyncApexJobId;
evrterror.Records__c = bcr.JobScope;
evrterror.StackTrace__c = bcr.StackTrace;
bcrList.add(evrterror);
}
insert bcrList;
}
'Certification' 카테고리의 다른 글
Platform Developer I Certification Maintenance(Winter '19) (0) | 2019.01.02 |
---|
글
UtilityClass.cls
public inherited sharing class UtilityClass {
public static List<sObject> queryObjects(String theObject, List<String> theFields, String theFilter, String sortField, String sortOrder) {
String theQuery = 'SELECT ' + string.join(theFields, ',');
theQuery += ' FROM ' + theObject;
if(!String.isEmpty(theFilter)) {
theQuery += ' WHERE ' + theFilter;
}
if(!String.isEmpty(sortField)) {
theQuery += ' ORDER BY ' + sortField;
if(!String.isEmpty(sortOrder)) {
theQuery += ' ' + sortOrder;
}
}
return database.query(theQuery);
}
}
TowerMapController.cls
public with sharing class TowerMapController {
@AuraEnabled
public static List<Tower__c> getAllTowers() {
String theObject = 'Tower__c';
List<String> theFields = new List<String>{'Id', 'Name', 'State__r.Name', 'Tower_Location__Latitude__s', 'Tower_Location__Longitude__s'};
String theFilter = '';
String sortField = 'Name';
String sortOrder = 'ASC';
List<Tower__c> allTowers = UtilityClass.queryObjects(theObject, theFields, theFilter, sortField, sortOrder);
return allTowers;
}
}
Towermap.cmp
<aura:component access="global" controller="TowerMapControllerClass" implements="force:appHostable,flexipage:availableForAllPageTypes">
<aura:attribute name="mapMarkers" type="Object" access="PRIVATE" />
<aura:attribute name="markersTitle" type="String" access="PRIVATE" />
<aura:handler name="init" value="{!this}" action="{!c.handleInit}"/>
<aura:if isTrue="{!!empty(v.mapMarkers)}" >
<lightning:map mapMarkers="{! v.mapMarkers }" markersTitle="{!v.markersTitle}" zoomLevel="5" />
</aura:if>
</aura:component>
TowermapController.js
({
handleInit: function (component, event, helper) {
helper.initHelper(component, event, helper);
}
})
TowermapHelper.js
({
initHelper : function(component, event, helper) {
helper.utilSetMarkers(component, event, helper);
},
utilSetMarkers : function(component, event, helper) {
let action = component.get("c.getAllTowers");
action.setCallback(this, function(response) {
const data = response.getReturnValue();
const dataSize = data.length;
let markers = [];
for(let i=0; i < dataSize; i += 1) {
const Tower = data[i];
markers.push({
'location': {
'Latitude' : Tower.Tower_Location__Latitude__s,
'Longitude' : Tower.Tower_Location__Longitude__s
},
'icon': 'utility:Tower',
'title' : Tower.Name,
'description' : Tower.Name + ' Tower Location at ' + Tower.State__r.Name
});
}
component.set('v.markersTitle', 'Out and About Communications Tower Locations');
component.set('v.mapMarkers', markers);
});
$A.enqueueAction(action);
}
})
Lightning App Builder
'Certification' 카테고리의 다른 글
Platform Developer I Certification Maintenance(Summer '19) (0) | 2019.10.14 |
---|
RECENT COMMENT