Salesforce:データ型の見分け方
そうそうないと思うけど、項目名からデータ型の判断をしなくてはならなくなった場合の見分け方。
とてもピンポイント!!
そんなに使い道はなさそう。
大抵データ型の場合は書き込み可能か、不可かで確認できる。
すでにメソッド何使うのか忘れてる(…)恐怖。
Schema.DescribeFieldResult isCreateable
この辺り。あとはぐぐってなんとかする。
これがfalseだと書込不可な気がする。たぶん。
これで数式、積み上げ集計か書き込みできるテキストとか数値とかなのかはわかる。
困るのはREFERENCE、TEXTAREA。
全部書き込み可能なのです。
REFERENCEは以下3種類を見分ける必要がある。
・参照関係
・主従関係
・外部参照
まずは名前から、外部参照は「getReferenceTo()」で取得できるオブジェクト名が
「__c」で終わらなかったので、それが外部参照項目って判断になる。
なんだったかはもう忘れた(…)
参照関係と主従関係は「isCascadeDelete()」で判断できます。
確かTrueだと主従関係(だったはず)
TEXTAREAは以下3種類。
・テキストエリア
・リッチテキストエリア
・ロングテキストエリア
リッチテキストエリアは「isHtmlFormatted()」で判断できます。
これがTrueだとリッチテキスト。
テキストエリアは255までで、ロングテキストエリアは255より大きくないとダメなので、
桁数で判断できるはず。
これもしにそうになりながら検索して探した気がするよ(…)
平和に生きたいものです。