技術メモ(主に自分向け)

短期記憶の自分向けの技術メモです。

Apex

カスタム表示ラベルの値取得

カスタム表示ラベルの値を取得するための書き方は以下の通り。 System.label.API名

Apexテストクラスの書き方メモ

Apexのテストクラスを書く時の備忘録 テストのカバレッジは75%以上をキープする・テストクラスの作成方法 普段のApexクラス作成と同じ 開発者コンソール>File>New>Apex Class 作成したクラスの一番上に「@isTest」をつける。 ・テストレコード作成 テスト…

Assertの書き方

Apexテストクラス等でよく使用するAssertの書き方備忘録 System.assertEquals(期待, 実際); nullでないことの確認 System.assertNotEquals(null, 値); nullであることの確認 Assert.isNull(値);

API名で連番になっている項目に順番に値を設定する方法

以下のような項目が存在し、順番に値を入れたい場合、for文で順番に入れることが可能 ・test1__c ・test2__c ・test3__c 以下のように書く。 TestObject__c to = new TestObject((Id = 'xxx')); List<String> srtList = new List<String>['A', 'B', 'C']; for (Integer i = 0</string></string>…

ランダムでレコードを抽出する方法

ランダムでレコードを抽出する方法は以下の通り。 【やりたいこと/前提条件】 ・5レコード抽出 ・重複なし ・オブジェクト:testObject ・項目に一意の数字(Index__c)を保持 ・insertTestはWrapperクラス。Stirng型のNameとInsertIndexという変数を持ってい…

Apexのアクセス修飾子 備忘録

・with sharing:ユーザモードでの実行。共有ルールが適用される。 ・without sharing:システムモードで実行。共有ルールが適用されない。使い方は以下の通り public without sharing class クラス名{…}

非同期処理の書き方

非同期処理を行うメソッドには「@future」をメソッドの上につける。 Userのような設定オブジェクトでは、 適切なアクセスレベル権限で操作が実行されるため、 別のトランザクションで挿入/更新をする必要がある。エラー例:MIXED_DML_OPERATION, 非設定オブ…

選択リストのラベル名の取得

型が選択リストの項目をSOQLで取得する際、 選択リストのラベル名を取得する方法。 toLabel(項目API名)

ハッシュ値と暗号化の書き方

Apexクラスでハッシュ値の作成と暗号化の書き方をメモ。 (もしかしたら他に良い書き方があるかもですが、、、参考程度に) Integer intToken = 99; //tokenの文字列を100文字と設定 Integer position; String charList = 'abcdefghijklmnopqrstuvwxyzABCDEFGH…

コンポーネントにApexの処理を使用する方法

コンポーネントでApex処理を呼ぶ。(例) Apex側 public class SampleApexClass { public static String getSample() {…} }cmp側 <aura:component controller="SampleApexClass" implements="forceCommunity:availableForAllPageTypes"> <a href="javascript:void(0);" onclick="{!c.sampleJs}">クリック</a> </aura:component> js側 sampleJs : fun…

ListとSetの違い

ListとSetはどちらも配列。 違いは、 List:重複ありの配列 Set:重複なしの配列(例)「1,1,2,3」という配列がある場合、以下の状態で格納される。 List:1,1,2,3 Set:1,2,3

Listでの注意事項

Listの特定の箇所を抽出する場合に、以下の書き方は非推奨。(javascriptでは問題なし) (例)List名:testList 0番目を取得 testList[0]以下の書き方を推奨している。 testList.get(0)

日付関連

日付関連をずらっとまとめる。【当日】 Date.today()【本日から±○日、±○ヶ月、±○年】 ・1日後 Date.today().addDays(1); ・1ヶ月前 Date.today().addMonths(-1); ・2年後 Date.today().addYears(2);【yyyy-MM-ddをyyyy年MM月dd日に変えたい場合】 (例) オブ…

String型の文字列比較

String型の文字比較の際に、「==」を使うのはあまりよろしくない。(純粋に文字列を比較しているのではなく、参照先の~とかいろいろあるけどここでは省略) 書くとしたら、 変数名A.equals(変数名B) や '比較する文字列'.equals(変数名B) (例)String str1 = '…