Salesforce Apex 非同期SOQLの使い方のサンプル

環境
Salesforce Apex

概要
1つは、Big Objectのデータをカスタムオブジェクトに抽出して、
それをレポート、ダッシュボードなどで加工する方法です。
例えば、全てのセッション情報を無造作に取得してBig Objectに登録している場合に使用できます。

使用例
targetObjectがクエリ結果を挿入するオブジェクトで、
targetFieldMapが項目間のマッピングを指定しています。

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
{
"query": "SELECT End_Location_Lat__c, End_Location_Lon__c, End_Time__c,
Start_Location_Lat__c, Start_Location_Lon__c, Start_Time__c,
Car_Type__c, Rider__r.FirstName, Rider__r.LastName,
Rider__r.Email
FROM Rider_Record__b WHERE Star_Rating__c = '5'",
"targetObject": "Rider_Reduced__b",
"targetFieldMap": {"End_Location_Lat__c":"End_Lat__c",
"End_Location_Lon__c":"End_Long__c",
"Start_Location_Lat__c": "Start_Lat__c",
"Start_Location_Lon__c": "Start_Long__c",
"End_Time__c": "End_Time__c",
"Start_Time__c": "Start_Time__c",
"Car_Type__c": "Car_Type__c",
"Rider__r.FirstName": "First_Name__c",
"Rider__r.LastName": "Last_Name__c",
"Rider__r.Email": "Rider_Email__c"
}
}
{ "query": "SELECT End_Location_Lat__c, End_Location_Lon__c, End_Time__c, Start_Location_Lat__c, Start_Location_Lon__c, Start_Time__c, Car_Type__c, Rider__r.FirstName, Rider__r.LastName, Rider__r.Email FROM Rider_Record__b WHERE Star_Rating__c = '5'", "targetObject": "Rider_Reduced__b", "targetFieldMap": {"End_Location_Lat__c":"End_Lat__c", "End_Location_Lon__c":"End_Long__c", "Start_Location_Lat__c": "Start_Lat__c", "Start_Location_Lon__c": "Start_Long__c", "End_Time__c": "End_Time__c", "Start_Time__c": "Start_Time__c", "Car_Type__c": "Car_Type__c", "Rider__r.FirstName": "First_Name__c", "Rider__r.LastName": "Last_Name__c", "Rider__r.Email": "Rider_Email__c" } }
{
   "query": "SELECT End_Location_Lat__c, End_Location_Lon__c, End_Time__c,
                    Start_Location_Lat__c, Start_Location_Lon__c, Start_Time__c,
                    Car_Type__c, Rider__r.FirstName, Rider__r.LastName, 
                    Rider__r.Email
             FROM Rider_Record__b WHERE Star_Rating__c = '5'",
                       
   "targetObject": "Rider_Reduced__b",    
        
   "targetFieldMap": {"End_Location_Lat__c":"End_Lat__c", 
                      "End_Location_Lon__c":"End_Long__c",        
                      "Start_Location_Lat__c": "Start_Lat__c", 
                      "Start_Location_Lon__c": "Start_Long__c", 
                      "End_Time__c": "End_Time__c", 
                      "Start_Time__c": "Start_Time__c",       
                      "Car_Type__c": "Car_Type__c",        
                      "Rider__r.FirstName": "First_Name__c",        
                      "Rider__r.LastName": "Last_Name__c",        
                      "Rider__r.Email": "Rider_Email__c"   
                     }                         
}

 

Apex

Posted by arkgame