新規記事の投稿を行うことで、非表示にすることが可能です。
2017年12月18日
アプリケーションビルダー移行試験関連(パッケージ)
salesforce.com (略称sfdc)のパッケージとは、開発するアプリケーションや機能の要素であるコンポーネントをまとめたものです。パッケージは通常、コンポーネントを自社以外の企業に配布する目的で作成します。
そして、パッケージには
未管理パッケージと管理パッケージがあります。
未管理パッケージは、テンプレートのように 1 度のみ配布を行う場合に使用し、アプリケーションのコンポーネントやコードサンプルを共有する場合に最適です。インストールされるのは、コンポーネントからは独立したコピーです。
ここから重要です。
未管理パッケージについて試験に出る傾向まとめ(個人観点)
・開発者がコードを拡張できる
・作成者は、ユーザがインストールしたパッケージをコントロールすることはできません
・未管理パッケージでは名前空間は使用しません。
・アンインストールできる
・パッケージ内のタブやオブジェクトは組織の制限値に入る
・Sandbox から本番環境へ移行する場合には、未管理パッケージは絶対に使用しません。
代わりに、Force.com IDE または Force.com 移行ツールを使用します。
(試験には本番組織へのリリース時にユニットテストは動作しないとか問題としてでる)
未管理パッケージを作成およびアップロードする
UI を使用して未管理パッケージをアップロードする手順は、次のとおりです。(Tooling API を使用してパッケージをアップロードすることもできます。サンプルコードと詳細は、『Tooling API Developer Guide』の PackageUploadRequest オブジェクトに関する説明を参照してください)。
1:パッケージの作成
2:必要なコンポーネントをアプリケーションに追加します。
3:[アップロード] をクリックします。
パッケージが正常にアップロードされると、インストールリンクが含まれたメールが送信されます。
一方、管理パッケージでは知的財産保護が施されているほか (未管理パッケージとは異なり、多くのコンポーネントのソースコードが非公開)、パッケージの作成者がパッケージのアップグレードを提供する手段も用意されています。管理パッケージは商用アプリケーションの配布に適しており、ライセンスの取得を要求する機能もサポートしています。
あとは普通のパッケージと同じく、ダウロードして使うイメージ。基本は編集できない。
そして、パッケージには
未管理パッケージと管理パッケージがあります。
目次
- パッケージ種類
- 未管理パッケージ
- 管理パッケージ
未管理パッケージ
未管理パッケージは、テンプレートのように 1 度のみ配布を行う場合に使用し、アプリケーションのコンポーネントやコードサンプルを共有する場合に最適です。インストールされるのは、コンポーネントからは独立したコピーです。
特徴:コードにアクセス、編集できる
ここから重要です。
未管理パッケージについて試験に出る傾向まとめ(個人観点)
・開発者がコードを拡張できる
・作成者は、ユーザがインストールしたパッケージをコントロールすることはできません
・未管理パッケージでは名前空間は使用しません。
・アンインストールできる
・パッケージ内のタブやオブジェクトは組織の制限値に入る
・Sandbox から本番環境へ移行する場合には、未管理パッケージは絶対に使用しません。
代わりに、Force.com IDE または Force.com 移行ツールを使用します。
(試験には本番組織へのリリース時にユニットテストは動作しないとか問題としてでる)
未管理パッケージを作成およびアップロードする
UI を使用して未管理パッケージをアップロードする手順は、次のとおりです。(Tooling API を使用してパッケージをアップロードすることもできます。サンプルコードと詳細は、『Tooling API Developer Guide』の PackageUploadRequest オブジェクトに関する説明を参照してください)。
1:パッケージの作成
- [設定] から、[クイック検索] ボックスに「パッケージ」と入力し、[パッケージ] を選択します。
- [新規] をクリックします。
- パッケージの詳細を入力します。
- [保存] をクリックします。
2:必要なコンポーネントをアプリケーションに追加します。
- [コンポーネントを追加] をクリックします。
- ドロップダウンリストから、コンポーネントの種別を選択します。
- 追加するコンポーネントを選択します。
- [パッケージに追加] をクリックします。
- パッケージにすべてのコンポーネントが追加されるまで、この手順を繰り返します。
3:[アップロード] をクリックします。
パッケージが正常にアップロードされると、インストールリンクが含まれたメールが送信されます。
管理パッケージ
一方、管理パッケージでは知的財産保護が施されているほか (未管理パッケージとは異なり、多くのコンポーネントのソースコードが非公開)、パッケージの作成者がパッケージのアップグレードを提供する手段も用意されています。管理パッケージは商用アプリケーションの配布に適しており、ライセンスの取得を要求する機能もサポートしています。
特徴:コードにアクセスできない、編集できない、パッケージ所有者の知的財産権が保護されます。
あとは普通のパッケージと同じく、ダウロードして使うイメージ。基本は編集できない。
【このカテゴリーの最新記事】
-
no image
-
no image
2017年11月08日
文字列 To 数値、テストクラスだめ、クラスオケの書き方
2017年11月06日
2017年10月23日
thisって何ものなのか
プログラミング初心者やthisの無い言語を触ってきた人なら尚更だと思うので
javaではthisがどのようなものかさくっと説明します
普段、javaのコードを書く上で使うのがthis参照と言われるものです
オブジェクト指向を勉強した人であればカプセル化なんかで使うことが多いかと思います。
カプセル化なんかで使うことがあるので気がつくかもしれませんが
thisは…
そのクラスのオブジェクトを参照する参照型オブジェクト
なんです。
例えば
sample.java
public class sample{
private String str = "Hello";
public static void main(String... args){
sample s = new sample();
s.show(",world");
}
public void show(String str){
System.out.println(this.str + str);
}
}
こんなクラスとメソッドがあったとします
この時の出力結果は…
です。
showメソッドの引数、パラメータのString型のstrと
フィールド変数のstr名前がかぶっていますがthisをつけることで
名前がかぶっていたとしてもフィールド変数への参照となり区別することができます
ちなみにさっきのコードでthisをつけないとパラメータ変数の情報だけ出力されます
これは、同じ名前のフィールド変数とローカル変数があった場合
javaでは「フィールド変数が隠される」ためです
さらに言うとクラス内の変数はjavaの場合
フィールド変数よりもローカル変数やパラメータが優先されます
thisはそれらをガン無視して、フィールド変数を参照してくれます
ちなみに、メソッドにstaticが付いている場合はthisを使った参照は行えません
以下のようなクラスがあったとします
sample2.java
class sample2{
private String str,str2,str3;
//コンストラクタその1
sample2(String s1,String s2){
this(s1,s2,"!");
}
//コンストラクタその2
sample2(String s1,String s2,String s3){
this.str = s1;
this.str2 = s2;
this.str3 = s3;
}
}
こんな使い方もできます
ざっくり言えば、this呼び出しってやつです
実はthisを使ってコンストラクタ内から別のコンストラクタを呼ぶことができます
javaではthisがどのようなものかさくっと説明します
this参照
普段、javaのコードを書く上で使うのがthis参照と言われるものです
オブジェクト指向を勉強した人であればカプセル化なんかで使うことが多いかと思います。
カプセル化なんかで使うことがあるので気がつくかもしれませんが
thisは…
そのクラスのオブジェクトを参照する参照型オブジェクト
なんです。
例えば
sample.java
public class sample{
private String str = "Hello";
public static void main(String... args){
sample s = new sample();
s.show(",world");
}
public void show(String str){
System.out.println(this.str + str);
}
}
こんなクラスとメソッドがあったとします
この時の出力結果は…
Hello,World
です。
showメソッドの引数、パラメータのString型のstrと
フィールド変数のstr名前がかぶっていますがthisをつけることで
名前がかぶっていたとしてもフィールド変数への参照となり区別することができます
ちなみにさっきのコードでthisをつけないとパラメータ変数の情報だけ出力されます
,world,world
これは、同じ名前のフィールド変数とローカル変数があった場合
javaでは「フィールド変数が隠される」ためです
さらに言うとクラス内の変数はjavaの場合
フィールド変数よりもローカル変数やパラメータが優先されます
thisはそれらをガン無視して、フィールド変数を参照してくれます
ちなみに、メソッドにstaticが付いている場合はthisを使った参照は行えません
thisでこんな使い方も
以下のようなクラスがあったとします
sample2.java
class sample2{
private String str,str2,str3;
//コンストラクタその1
sample2(String s1,String s2){
this(s1,s2,"!");
}
//コンストラクタその2
sample2(String s1,String s2,String s3){
this.str = s1;
this.str2 = s2;
this.str3 = s3;
}
}
こんな使い方もできます
ざっくり言えば、this呼び出しってやつです
実はthisを使ってコンストラクタ内から別のコンストラクタを呼ぶことができます
2017年08月04日
2017年06月02日
SFDC とNetsuiteの使用感想
自分も記事を読むですが、長い文書が嫌だなと思った。
だから、本当に短い文書を作ろうと思っています。
それでは、感想に入ります。
NetSuite処理時間長さ > SFDC
Netsuiteは新規標準オブジェクトデータを作成するには2秒最低
SFDCは測っていないが、使ったところでは、2秒必要がないに間違いない
データ一覧表示のところでは
SFCDはせめて、1,000件ごとのページをページングすればなんとかなる
Netsuiteは同じ1,000件 ページングしても時間制限もあるの。5分以上だめとかのスクリプト種類がある
Netsuiteが優れている。
Netsuiteが保存検索を作成し、CSVや、エクセルやPDFなどにワンクリックで標準機能対応可能。
そして、Oracleのクエリ構文など、使えます。
SFDCがレポートとダッシューボードくらいかな。
よし、これについて、Netsuiteの勝ち。
だから、本当に短い文書を作ろうと思っています。
それでは、感想に入ります。
処理速度比較
NetSuite処理時間長さ > SFDC
Netsuiteは新規標準オブジェクトデータを作成するには2秒最低
SFDCは測っていないが、使ったところでは、2秒必要がないに間違いない
制限
データ一覧表示のところでは
SFCDはせめて、1,000件ごとのページをページングすればなんとかなる
Netsuiteは同じ1,000件 ページングしても時間制限もあるの。5分以上だめとかのスクリプト種類がある
出力
Netsuiteが優れている。
Netsuiteが保存検索を作成し、CSVや、エクセルやPDFなどにワンクリックで標準機能対応可能。
そして、Oracleのクエリ構文など、使えます。
SFDCがレポートとダッシューボードくらいかな。
よし、これについて、Netsuiteの勝ち。
2016年11月09日
文字列処理
プログラムを書く時に文字列は絶対出るもの
最近よく見るから、すごい気になってて、
書く量の少ない方法ごあるのに
わざわざ下記のように書く人がいる
実は
sfdcの標準メソッドがあるんやで
はっきり書いてある。
以上です。
最近よく見るから、すごい気になってて、
書く量の少ない方法ごあるのに
わざわざ下記のように書く人がいる
String testStr = 'this is test';
if(testStr != null && testStr !=''){
/*処理*/
}
if(testStr != null && testStr !=''){
/*処理*/
}
実は
sfdcの標準メソッドがあるんやで
isNotEmpty(inputString)
Returns true if the specified String is not empty ('') and not null; otherwise, returns false.
Returns true if the specified String is not empty ('') and not null; otherwise, returns false.
はっきり書いてある。
!=null && !=''はisNotEmpty()と同じだよー。
以上です。
タグ:String
sfdcのperformance について
今回のPOSTはApex classでのクエリ使用について話しますლ(╹◡╹ლ)
人によって、クエリの使い方がそれぞれの癖があるということが現実
わたしなら、結構動的クエリが好き
メンテナンスもしやすい
なぜなら、行ごとにしてるから、その行の目的が1つだけ、誰でもわかるやろ
ただし、書く行は増える。
実はもともとのわたしが、メソッドを使って、対象のオブジェクトの全て項目を取得していた。
小さいオブジェクトなら、いいけど
項目数が100に近く、全部取ると処理時間が長い
それで、使う項目のみ動的クエリにより、1つ1つ取得するにした。
わたしならいつもこんな感じ
あとはqueryResultを使って
データを処理する、それはニーズによって結構変わってくる
以上です。
人によって、クエリの使い方がそれぞれの癖があるということが現実
わたしなら、結構動的クエリが好き
メンテナンスもしやすい
なぜなら、行ごとにしてるから、その行の目的が1つだけ、誰でもわかるやろ
ただし、書く行は増える。
実はもともとのわたしが、メソッドを使って、対象のオブジェクトの全て項目を取得していた。
小さいオブジェクトなら、いいけど
項目数が100に近く、全部取ると処理時間が長い
それで、使う項目のみ動的クエリにより、1つ1つ取得するにした。
動的クエリ
わたしならいつもこんな感じ
String query = 'SELECT Id, ';
query += 'Name ';;
query += 'FROM sObject__c ';;
query += 'WHERE Id = varId ';(varIdは変数);
List queryResult = Database.query(query);;
query += 'Name ';;
query += 'FROM sObject__c ';;
query += 'WHERE Id = varId ';(varIdは変数);
List
あとはqueryResultを使って
データを処理する、それはニーズによって結構変わってくる
以上です。
タグ:DB捜査
2016年11月08日
ネットスイートの保存検索mainline true and falseの違い(もう一度説明)
1:保存検索(save searchs)
前の説明が悪かったかも。
今回写真付きで説明させていただきます。
まず保存検索の結果一覧は下記のように
写メのように「Edit this search」をクリックしたら、保存検索の編集画面に行く。
保存検索の作成は下記のようにリストタブから新規作成可能。
※できるだけ保存検索である程度データを絞って、保存検索IDをロジック内で呼び出してデータの表示をカスタマイズすることが個人的に好き〜。
話を少し戻ります。トランザクションの保存検索を作成する際に
下記のようにメインラインをtrueにするか、falseにするか、ここがポイントです。
結果が親トランザクション単位の一覧になる
結果がアイテムトランザクション単位の一覧になる
Invoice(請求書)とItem(アイテム)
請求書トランザクションとアイテムトランザクションは親子のような感覚。
ここで、トランザクションタイプの保存検索を前提とする。
下記を例え、保存検索の結果一覧とする。4レコードの一覧。
上記の請求書1に3アイテムとする、その他は1アイテムとする。
上記のアイテム金額1+2+3=請求書金額
このようなイメージでmainlineをtrueにするか、falseにするかの違いです。
わかりにくいかもしれないが、なんとかでよろしいです。
余談です、たまに開発楽しいと思い、たまにつまらないとも思い、そんな時に人生を変えてみようと思っていたことがある。それで下記に行ってみました。
前の説明が悪かったかも。
今回写真付きで説明させていただきます。
まず保存検索の結果一覧は下記のように
写メのように「Edit this search」をクリックしたら、保存検索の編集画面に行く。
保存検索の作成は下記のようにリストタブから新規作成可能。
※できるだけ保存検索である程度データを絞って、保存検索IDをロジック内で呼び出してデータの表示をカスタマイズすることが個人的に好き〜。
話を少し戻ります。トランザクションの保存検索を作成する際に
下記のようにメインラインをtrueにするか、falseにするか、ここがポイントです。
MainLine = True
結果が親トランザクション単位の一覧になる
MainLine = false
結果がアイテムトランザクション単位の一覧になる
Invoice(請求書)とItem(アイテム)
請求書トランザクションとアイテムトランザクションは親子のような感覚。
ここで、トランザクションタイプの保存検索を前提とする。
mainline = true
の場合、金額が請求書レコードに紐づいているアイテムの金額の和になる下記を例え、保存検索の結果一覧とする。4レコードの一覧。
請求書1 請求書1金額(この金額は請求書1に紐づいている各アイテム金額の和。他は同様)
請求書2 請求書2金額
請求書3 請求書3金額
請求書4 請求書4金額
請求書2 請求書2金額
請求書3 請求書3金額
請求書4 請求書4金額
mainline= false
の場合、結果一覧もアイテム単位の一覧になる。上記の請求書1に3アイテムとする、その他は1アイテムとする。
請求書1 アイテム金額1
請求書1 アイテム金額2
請求書1 アイテム金額3
請求書2 (アイテム金額=)請求書2金額
請求書3 (アイテム金額=)請求書3金額
請求書4 (アイテム金額=)請求書4金額
請求書1 アイテム金額2
請求書1 アイテム金額3
請求書2 (アイテム金額=)請求書2金額
請求書3 (アイテム金額=)請求書3金額
請求書4 (アイテム金額=)請求書4金額
上記のアイテム金額1+2+3=請求書金額
このようなイメージでmainlineをtrueにするか、falseにするかの違いです。
わかりにくいかもしれないが、なんとかでよろしいです。
余談です、たまに開発楽しいと思い、たまにつまらないとも思い、そんな時に人生を変えてみようと思っていたことがある。それで下記に行ってみました。
タグ:save searchs