開発メモ

開発用のメモです。

Salesforce

Salesforce List を 結合する (JOIN)

String.join(',', columns);

Salesforce リストの初期化

List<String> columns = new List<String>{ prefix + 'Id', prefix + 'Name', prefix + 'Site', prefix + 'BillingPostalCode', prefix + 'BillingState', prefix + 'BillingCity', prefix + 'BillingStreet' };</string></string>

Salesforce Standard Object であるはずのカラムが無いといわれたら

Apex Class > Version Settings > Salesforce API のバージョンが古いために発生する

Salesforce 取引先責任者と取引先

取引先から SELECT Id, Name, (SELECT Id, Name From Contacts) FROM Account WHERE Id = :id account = [ SELECT Id, Name, (SELECT Id, Name From Contacts) FROM Account WHERE Id = :id ]; for (Account accunt : accounts) { contacts = account.getSOb…

Salesforce エラーメッセージによる対処

Apex Class only aggregate expressions use field aliasing カンマの有無を確かめましょう 誤 Select Id Name FROM Account 正 Select Id,Name FROM Account VisualForce Page SObject row was retrieved via SOQL without querying the requested field : …

Salesforce apex クラスで 添付ファイルを保存する。

public class ExcelController { public String xmlVersion { get { return ''; } set { return; } } public String xmlExcel { get { return ''; } set { return; } } public Account account { public get; private set; } public Boolean pdf { get; set;…

Salesforce Test 制約

実行するテストクラスを選択すると、選択したクラスは、実行時に Apex ジョブキューに配置されます。実行用に選択できるテストクラスの最大数は、24 時間あたり、500 または (10 × 組織のテストクラス数) の大きい方です つまり テストクラス数 テスト実行可…

Salesforce で JQuery をつかう

<apex:page> <apex:includeScript value="{!$Resource.jQuery}" /> <script type="text/javascript"> jQuery.noConflict(); </script> </apex:page> jQuery.noConflict() を実行する必要がある $(selector) ではなく jQuery(selector) で処理

Salesforce apex クラスでredirectを実行する。

public PageReference clear() { PageReference ref = new PageReference('/apex/visualForcePageUrl'); ref.setRedirect(true); return ref; }

Salesforceで 日付項目の [YYYY/MM/DD] のリンクを消す

JQuery <script type="text/javascript> jQuery(".dateFormat").hide(); </script> Standard <script type="text/javascript> var x = document.querySelectorAll(".dateFormat"); for (var i in x) { x[i].style.display = 'none'; } </script>

Salesforce Visualforce で Jquery.ajax による更新

<script type="text/javascript"> jQuery(".ajax_id:checked").each(function(i,o){ var title = jQuery(o).attr("title"); console.log(title + ": start"); jQuery.ajax({ "url" : "/apex/pageName", "data" : { "id" : title }, "async" : false, // 非同期通信の場合 自動#はエラーにな…

Salesforce Visalforce で JSON レスポンス用 APEX ページ

<apex:page controller="jsonController" action="{!init}" contentType="application/x-JavaScript; charset=utf-8" showHeader="false" standardStylesheets="false" sidebar="false"> {!jsonString} </apex:page>

Salesforce で JQuery を読み込む

<apex:includeScript value='{!$Resource.jquery}'/></apex:includescript>

SOQL で IN 句

List<String> names = new ArrayList<String>(); names.add("USER_A"); names.add("USER_B"); List<Users> users; users = [ SELECT Id, Name FROM Users WHERE Name IN :names ];</users></string></string>

SOQL 集計関数

SUM : 合計 SELECT Sum(qty) FROM OrderProducts; Max : 最大 SELECT Max(qty) MAX_QTY FROM OrderProducts; Min : 最小 SELECT Min(qty) MIN_QTY FROM OrderProducts; Count 件数 SELECT Count(qty) COUNT_QTY FROM OrderProducts; Average 平均 SELECT Avg…

Salesforce 日本語対応 PDF出力

<apex:page renderAs="pdf" controller="PdfController" showHeader="false" sidebar="false" action="{!init}" applyBodyTag="false" applyHtmlTag="false"> <html> <head> <style> @page { size: 8.27in 11.69in; margin: 10px; } body { font-family: 'Arial Unicode MS'; } </style> </head> <body> </body> </html> </apex:page>

Salesforce SELECT 実行

基本 List<Account> accounts1 = [ SELECT Id, Name From Account ]; プログラム中で組み立てる場合等 List<Account> accounts2 = Database.query('SELECT Id, Name From Account');</account></account>

Salesforce オブジェクトのnew

基本 Account a = new Account(); 初期設定済み Account a = new Account( Name = 'アカウント名' );

Salesforce 月初 月末の計算

月初 DATE( YEAR(FIELD_DATE), MONTH(FIELD_DATE), 1 ) -- 日付を1日にする 月末(翌月初日-1) DATE( YEAR(FIELD_DATE)+IF(MONTH(FIELD_DATE)==12,1,0), IF(MONTH(FIELD_DATE)==12,1,MONTH(FIELD_DATE)), 1 )-1 -- 日付を翌月1日にし前日にする -- 12月の場…

Salesforce ToDo オブジェクトのカスタム項目

ToDoオブジェクトのみのカスタム項目は追加できない。 追加する場合は 活動のカスタム項目

Salesforce 複数の参照元

Salesforce 14 の時点で 参照元(A,B) のような複合リレーショナルは作成できない模様

Salesforce apex:tab

属性 タイプ サンプル 必須 備考 style String style属性値 styleClass String class属性値 label String タブ表示名 labelWidth String 200px タブ表示サイズ

Salesforce apex:tabPanel

属性 タイプ サンプル 必須 備考 style String style属性値 styleClass String class属性値(標準) activeTabClass String class属性値(現在) disabledTabClass String class属性値(無効) inactiveTabClass String class属性値(現在以外)

Salesforce apex:inputHidden

属性 タイプ サンプル 必須 備考 value String <input type="hidden" value>

Salesforce apex:selectCheckboxes

属性 タイプ サンプル 必須 備考 style String <input type="checkbox" style> styleClass String <input type="checkbox" class> onblur String <input type="checkbox" onblur> onfocus String <input type="checkbox" onfocus> onchange String <input type="checkbox" onchange> onclick String <input type="checkbox" onclick> ond…

Salesforce apex:selectRadio

属性 タイプ サンプル 必須 備考 style String <input type="radio" style> styleClass String <input type="radio" class> onblur String <input type="radio" onblur> onfocus String <input type="radio" onfocus> onchange String <input type="radio" onchange> onclick String <input type="radio" onclick> ondblclick String

Salesforce apex:selectOptions

属性 タイプ サンプル 必須 備考 value List ラベル List

Salesforce apex:selectOption

属性 タイプ サンプル 必須 備考 itemLabel String ラベル <option value="値" >ラベル</option> itemValue String ラベル <option value="値" >ラベル</option>

Salesforce apex:selectList

属性 タイプ サンプル 必須 備考 style String <select style> styleClass String <select class> onblur String <select onblur> onfocus String <select onfocus> onchange String <select onchange> onclick String <select onclick> ondblclick String <select ondblclick> onkeyup String <select onkeyup> onkeypress String </select></select></select></select></select></select></select></select>

Salesforce apex:inputTextarea

属性 タイプ サンプル 必須 備考 style String <textarea style> styleClass String <textarea class> onblur String <textarea onblur> onfocus String <textarea onfocus> onchange String <textarea onchange> onclick String <textarea onclick> ondblclick String <text</textarea>…

Salesforce apex:inputText

属性 タイプ サンプル 必須 備考 style String <input type="text" style> styleClass String <input type="text" class> onblur String <input type="text" onblur> onfocus String <input type="text" onfocus> onchange String <input type="text" onchange> onclick String <input type="text" onclick> ondblclick String

Salesforce apex:inputSecret / password

属性 タイプ サンプル 必須 備考 style String <input type="password" style> styleClass String <input type="password" class> onblur String <input type="password" onblur> onfocus String <input type="password" onfocus> onchange String <input type="password" onchange> onclick String <input type="password" onclick> ond…

Salesforce apex:inputFile

属性 タイプ サンプル 必須 備考 style String <input type="file" style> styleClass String <input type="file" class> onblur String <input type="file" onblur> onfocus String <input type="file" onfocus> onchange String <input type="file" onchange> onclick String <input type="file" onclick> ondblclick String

Salesforce apex:inputCheckbox

属性 タイプ サンプル 必須 備考 style String <input type="checkbox" style> styleClass String <input type="checkbox" class> onblur String <input type="checkbox" onblur> onfocus String <input type="checkbox" onfocus> onchange String <input type="checkbox" onchange> onclick String <input type="checkbox" onclick> ond…

Salesforce apex:input

属性 タイプ サンプル 必須 備考 type String <input type> style String <input style> styleClass String <input class> onblur String <input onblur> onfocus String <input onfocus> onchange String <input onchange> onclick String <input onclick> ondblclick String <input ondblclick> onkeyup String <input onkeyup> onkeyp…

Salesforce apex:form

属性 タイプ サンプル 必須 備考 enctype String <form enctype> onreset String <form onreset> onsubmit String <form onsubmit> style String <form style> styleClass String <form class></form></form></form></form></form>

Salesforce apex:page

属性 タイプ サンプル 必須 備考 controller Class ListCtrl 処理実行クラス action Method {!init} 処理実行メソッド applyBodyTag Boolean false <body>タグを含めるか applyHtmlTag Boolean false <html>タグを含めるか cache Boolean false キャッシュの利用 expires</html></body>…

Salesforce データリスト

<apex:page > <apex:tabPanel> <apex:tab label="ListViews"> <apex:ListViews type="Account" /> </apex:tab> <apex:tab label="enhancedList"> <apex:enhancedList height="1200" type="Account" /> </apex:tab> </apex:tabPanel> </apex:page>

Salesforce タブ

<apex:tabPanel> <apex:tab label="Tab1">Tab 1 Body</apex:tab> <apex:tab label="Tab2">Tab 2 Body</apex:tab> <apex:tab label="Tab3">Tab 3 Body</apex:tab> </apex:tabPanel>

Salesforce 価格表を用いるテスト / STANDARD_PRICE_NOT_DEFINED

@isTest アノテーションに seeAllData = true を設定する。 @isTest( seeAllData = true)

salesfors 簡単なテーブルのある画面

ページ <apex:page action="{!init}" controller="ExampleList001Controler"> <h1>ExampleList001</h1> <apex:dataTable var="r" value="{!intList}" border="1" cellpadding="1" cellspacing="1"> <apex:column > <apex:facet name="header">数値</apex:facet> </apex:column></apex:datatable></apex:page>

Twitter: @asahina_alice