Translate

2011年5月6日金曜日

匿名ブロックへ書くコードサンプル

匿名ブロックは、

Force.com IDE上に用意されている

コマンドライン実行領域。
#Apexコード上の匿名クラスとかではない
#私も最初勘違いしそうになったけど..


匿名ブロックを使えば

Apexコードをわざわざ書かなくても

プログラムを書くことができる。



以下、Force.com開発コースにある演習サンプルコードである。



// Apex Code 演習2-1 匿名ブロックを利用した簡単なApexコーディング
//
// 匿名ブロック:Force.com IDEパースペクティブ下部のAnonymous Blockを選択すると
// 以下のようなコードがダイレクトに書ける
// DOSプロンプトやshellコマンドのようなものと考えてよい
//
// Hello Worldと表示する
System.debug('Hello World!');
// 変数を定期する
Map<Integer, String> numbers = new Map<Integer, String>();
// for文で先のnumbersへ100個データを作成
for (Integer i=0; i<100; i++){
  numbers.put(i, String.valueof(i));
}
// キーが35の値がnumbersに存在する場合はデバッグログへ書き込む
if (numbers.containskey(35)){
   System.debug('The answer is: ' + numbers.get(35));
}
// リストを作成
List<Account> accts = new List<Account>();
// 20件のAccountレコードを作成
for (Integer i=0; i<20; i++){
  Account a = new Account(name='Account Name' + i);
  accts.add(a);
}
// for文でデバッグログに中身を書き出す
for(Account acct:accts){
    system.debug('The account name is: ' + acct.name);
}
// セットを作成
Set<Date> myDates = new Set<Date>();
// 100件データを作成
// 1件ごとに1日づつ後の日を登録していく
for(integer i = 0; i < 100; i++){
  myDates.add(Date.today().addDays(i));
}
// 日本語環境の場合はYYYY/MM/DD形式でDateを作成できる
Date birthday = Date.parse('2010/12/31');
// 先のmyDatesに上記の誕生日が含まれているかを調べる
if (myDates.contains(birthday)){
  System.debug('yes');
} else {
  System.debug('no');
}

ここではDB操作が書かれていないが、

当然処理可能。

ただし組織に反映されるので

ロールバックする場合は手動で行わないといけない。

ただ、SavePointはこの上でも使えるようだ

0 件のコメント:

bolt.new をローカルPC(Windows10)で動かす

生成AIによるコード生成ツールはだいぶ進化しており、 ユーザ要件を入力するとJavaScript/TypeScriptコードにしてくれる サービスが登場し始めた。 特に、 bolt.new はOSS(MITライセンス)があり ローカルPCで動作するとのこと。 ただ生成AIモデルは...