發表文章

目前顯示的是有「workbench」標籤的文章

Workbench Error: Parent relationship queries are disabled in Workbench

圖片
Error 症狀  Parent relationship queries are disabled in Workbench: Case.foo__c Due to issues rendering query results, parent relationship queries are disabled by default. If you understand these limitations, parent relationship queries can be enabled under Settings. Alternatively, parent relationship queries can be run with REST Explorer under the Utilities menu without issue. 解法 Solution 從workbench上方的選單進Setting 捲到下方把這個勾起來:Allows SOQL Parent Relationship Queries

如何在 Visual Studio Code 或是 PowerShell下指令來 query data 並存成 CSV檔? How to query data by SOQL and save it as a csv by SFDX?

前言 最近 workbench 經常出現 Application Error,令人抓狂。 (參考文章: workbench 一直出現 Application error ) 有一個不算是完美的替代方案,就是使用 Visual Studio Code 的 SOQL Query Builder ( Visual Studio Code now includes a SOQL Builder . Try it today!  ) 其中一個不完美的點就是,export csv/json 的時候只能匯出2000筆…… 這實在是個硬傷。 在此提供另一個不使用 workbench 也不用 Query Builder,一樣可以匯出 csv 的方法。 做法 請打開 PowerShell (可以在 VS Code 裡的 terminal,也可以直接在 Windows 開 PowerShell。 並修改以下 sample code後執行: sfdx force:data:soql:query -q "SELECT Id FROM Contact  WHERE createddate = last_n_days:1" -r "csv" -u <Salesforce Username> | out-file -encoding utf8 "Latest Contact.csv" 即可。

快速查詢有哪些 Permission Set 有開啟了某 Apex Class/Visualforce Page 的權限

情境  假設我現有一個 Visualforce Page 叫做 MyVFPage,而有一個 user 打開這一頁會出現權限不足的錯誤頁面。所以我需要開權限給他。 而我已知曾經有某一個 Permission Set 有包含到這個 Visualforce Page Access,所以我理應不需要再重新 create 一個新的 Permission Set,只要找到舊的這個 Permission Set 並 assign 給該 user 即可。 但是我忘記這個既有的 Permission Set 叫什麼名字了…… 目前有數十個上百個 Permission Set,我總不能一個一個點開來檢查確認吧。 有沒有快速的查詢方法呢? 解法 1. 取得該 Visualforce Page的 Id SELECT Id, Name FROM ApexPage WHERE Name = 'MyVFPage' 2. 拿 Visualforce Page 的 Id 再去  SetupEntityAccess query SELECT Id, ParentId, SetupEntityId, SetupEntityType FROM SetupEntityAccess  WHERE SetupEntityId = '<MyVFPage Id>' 此時的 ParentId 即是答案,是包含了該 page access 權限的所有 Permission Set/Profile。 但 Id 不易閱讀理解,可以再做下一步驟取得 Name。 3. 拿 0PS 開頭的 Id 去 PermissionSet query,即可得到名稱。 SELECT Description, Id, Name Profile.name, Type FROM PermissionSet  WHERE  Id IN ('0PSXXXXXXXXXXXXXXX', ' 0PSXXXXXXXXXXXXXXX ', ' 0PSXXXXXXXXXXXXXXX ') 

workbench 一直出現 Application error

圖片
症狀  使用 workbench 時三不五時會出現這樣的 error:  Application error An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details . You can do this from the Heroku CLI with the command heroku logs --tail 原本只是偶爾出現,後來變得頻繁出現,嚴重影響工作。 可能的解法之一 有時候換個瀏覽器就好了。 可能的解法之二 也可以試試看清理 cookies,我常常一清見效。 但也常常無效、或是短暫有效,但很快又故態復萌就是了…… 以 FireFox 為例: 1. 進入設定 2. 隱私權與安全性 3. 管理資料 4. 搜尋 developerforce 5. 移除選擇項目