• mkubomura
  • NEWBIE
  • 65 Points
  • Member since 2015

  • Chatter
    Feed
  • 2
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 0
    Questions
  • 7
    Replies
お世話になります。

ユーザとパスワードを管理するクライアントアプリを実装していますが、

Soap APIでユーザ作成・パスワード設定を実施し、
そのユーザで初回ログインを試みると、パスワード変更画面が表示されてしまいます。
その動作では、パスワードはアプリで管理することは出来ません。

パスワード設定はPartnerConnection#setPassword() を使用しています。
パスワード変更画面を非表示にする方法はありますでしょうか?
もし事前に設定できる場合、Salesforce管理者画面で手動でも構いません。

どなたかご教授願えますでしょうか?
よろしくお願いします。
 
登録されたレコードの内容を外部APIに送り、その結果を元のレコードに登録する、という機能を作っています。
この機能単体は動いているのですが、複数ユーザーが同時に実行すると、排他処理がかからずに、同じレコードに対して外部APIが複数回呼び出されてしまいます。

下にサンプルコードを載せておきます。想定では、1人目のSELECT文で排他処理がかかるため、2人目以降はSELECTが待ちとなり、排他ロックが外れた時点では既に完了ステータスになっているので、同じレコードに対して外部APIが複数回呼ばれることは無い、というつもりでした。
外部API呼び出し部分を削って、レコードを更新するだけの機能にして動かすと、排他制御が効いているように見えます。

外部APIを呼び出す場合は排他処理が効かないのでしょうか?
ドキュメントを見てもそれらしい記述が見つからず、何かご存知の方がいましたら教えてください。
 
public List<MyObject__c> execute(List<String> ids) {
	List<MyObject__c> objList = [select Id, Name, Status__c, Result__c from MyObject__c where Id in :ids for update];

	// ステータスが「処理待ち」の場合は外部APIを実行する
	for (MyObject__c obj : objList) {
		if (obj.Status__c == '処理待ち') {
			HttpRequest req = new HttpRequest();
			req.Body__c = obj.Name;
			// 詳細は省略

			Http http = new Http();
			HTTPResponse res = http.send(req);

			obj.Status__c = '完了';
			obj.Result__c = res.getBody();
		}
	}
	update objList;
	
	return objList;
}
http://coenraets.org/blog/2016/01/slack-salesforce-integration/
こちらのコードなのですが、プロセスビルダーから特定の条件が発生した時にApexを呼び出してSlackに通知をPostするClassとなっております。
このような場合にテストはどのように書けばよいのでしょうか。
お世話になっております。
表題の件、ご教示頂きたくお願い致します。

MicrosoftのExcelを使用して、SFDCにログインし、レコードを更新したいと思っています。
ログインやレコードの取得はできましたが、レコードの更新ができません。
参考になるサイトも少なく、どのような形式で更新して良いのかご教示頂けるとありがたいです。

EXCELからSalesforce上のレコードを更新する場合に、どの手法であれば可能でしょうか?
現在思いついたのが以下の方法ですが、それぞれサンプルのあるURLなどありましたら、ご教示いただければ幸いです。
①<XML>形式にする
②CSVファイルを作成
③その他(思いつきません)

何卒よろしくお願い致します。

 
オブジェクト数の制限が10個ということですが
20個オブジェクトを作成しても制限がかからず参照編集権限がある状態です。
環境はSandBox環境です。
お世話になります。

ユーザとパスワードを管理するクライアントアプリを実装していますが、

Soap APIでユーザ作成・パスワード設定を実施し、
そのユーザで初回ログインを試みると、パスワード変更画面が表示されてしまいます。
その動作では、パスワードはアプリで管理することは出来ません。

パスワード設定はPartnerConnection#setPassword() を使用しています。
パスワード変更画面を非表示にする方法はありますでしょうか?
もし事前に設定できる場合、Salesforce管理者画面で手動でも構いません。

どなたかご教授願えますでしょうか?
よろしくお願いします。
 
お世話になっております。

取引先登録で、親取引先を登録すると、[階層の表示]で、
取引先の階層を表示できますが、この階層表示画面に、項目追加や差し替え、項目の並び替えをすることはできないでしょうか。

標準で、種別、業種、市区郡(請求先)、都道府県(請求先)などが表示されますが、最低限、並び替えはしたいと思いますが、
変更方法がありましたら教えて頂きたく、よろしくお願いします。
 
登録されたレコードの内容を外部APIに送り、その結果を元のレコードに登録する、という機能を作っています。
この機能単体は動いているのですが、複数ユーザーが同時に実行すると、排他処理がかからずに、同じレコードに対して外部APIが複数回呼び出されてしまいます。

下にサンプルコードを載せておきます。想定では、1人目のSELECT文で排他処理がかかるため、2人目以降はSELECTが待ちとなり、排他ロックが外れた時点では既に完了ステータスになっているので、同じレコードに対して外部APIが複数回呼ばれることは無い、というつもりでした。
外部API呼び出し部分を削って、レコードを更新するだけの機能にして動かすと、排他制御が効いているように見えます。

外部APIを呼び出す場合は排他処理が効かないのでしょうか?
ドキュメントを見てもそれらしい記述が見つからず、何かご存知の方がいましたら教えてください。
 
public List<MyObject__c> execute(List<String> ids) {
	List<MyObject__c> objList = [select Id, Name, Status__c, Result__c from MyObject__c where Id in :ids for update];

	// ステータスが「処理待ち」の場合は外部APIを実行する
	for (MyObject__c obj : objList) {
		if (obj.Status__c == '処理待ち') {
			HttpRequest req = new HttpRequest();
			req.Body__c = obj.Name;
			// 詳細は省略

			Http http = new Http();
			HTTPResponse res = http.send(req);

			obj.Status__c = '完了';
			obj.Result__c = res.getBody();
		}
	}
	update objList;
	
	return objList;
}
お世話になっております。

Salesforceのグローバル検索について質問です。
商談画面内の金額やカスタムオブジェクト内に通貨型で作成した項目などを
グローバル検索で検索を行いたいのですが、ヒットしません。

ヒットするように設定することは可能でしょうか?

検索可能な項目として通貨型が入っていたので、検索できるとは思うのですが、
どこで設定したらよいかわかりません。。。