忍者ブログ

つれづれ報春【出張版】

仕事で学んだことをつらつら。。。 お勉強したこともつらつら。。。 いわゆる備忘録。

entry_top_w.png
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

entry_bottom_w.png
entry_top_w.png
すっっっっっごい久々の更新。

その上、小ネタすぎる自分の備忘録。


久々に、特定のレポートをタブ化したいとのご依頼。
久々すぎて記憶の彼方すぎる位置にいて、超うろ覚え。
自分のナレッジにも落としてないし、地味に苦労したので備忘録。

Webタブの作成→URL&レポートのSIDと「?isdtp=nv」を追加。

とりあえずWebタブだろうな→レポートのSID入れて、と…→……あ、ヘッダとサイドバーが残りおる…→なんかパラメータあるやろ、たぶん…
で、たどり着いたのが「isdtp=nv」。

よし、これで忘れてもだいじょーぶ!

拍手

PR
entry_bottom_w.png
entry_top_w.png
ちょっと驚き。


Visualforceで画面作って、ApexCode書いてレコード保存するときのお話。

System権限(システム管理者)として登録されるんだねー
てっきりログインユーザの権限で登録されるもんだとばかり思ってたんだけど、、、
参照権限しかないユーザなのに、作ったページからはレコードが登録できる不思議。

そりゃもちろん、
StandardControllerのSaveは使えないし、
InputFieldにしてたら入力ボックス表示されないし、
おかげで選択リストなんかClassで取ってこなきゃいけないけど。。。

そっかー
登録出来るのかー

拍手

entry_bottom_w.png
entry_top_w.png
要するに、トリガってすげぇ!てお話。



商談フェーズの変更に際して、ちょいと制御したかったのです。
あるファイルが添付されているか確認して、あれば保存するってやつ。

Triggerって、イベントに「before」「after」があるんです。
で、変更したとしても条件が満たされてなければ保存したくない、って時には「before」イベントを使用する。

ほんでもって
SObject.FieldName.addError('エラーメッセージを入力');

これで入力規則もどきが出来る、と。


私がやったケースだと、Attachmentオブジェクトからレコードを取得しなきゃいけないもんで、
(つまりはSOQLが必須)
普通の入力規則じゃダメなんだって。残念ながら。
ちなみに、AttachmentオブジェクトのParentId項目が添付されてるレコードID。
子オブジェクトなんだねー。

しかし、テストせにゃならんのがめんどくs...(ごにょごにょ)

拍手

entry_bottom_w.png
entry_top_w.png
要するに、トリガってすげぇ!てお話。



商談フェーズの変更に際して、ちょいと制御したかったのです。
あるファイルが添付されているか確認して、あれば保存するってやつ。

Triggerって、イベントに「before」「after」があるんです。
で、変更したとしても条件が満たされてなければ保存したくない、って時には「before」イベントを使用する。

ほんでもって
SObject.FieldName.addError('エラーメッセージを入力');

これで入力規則もどきが出来る、と。


私がやったケースだと、Attachmentオブジェクトからレコードを取得しなきゃいけないもんで、
(つまりはSOQLが必須)
普通の入力規則じゃダメなんだって。残念ながら。
ちなみに、AttachmentオブジェクトのParentId項目が添付されてるレコードID。
子オブジェクトなんだねー。

しかし、テストせにゃならんのがめんどくs...(ごにょごにょ)

拍手

entry_bottom_w.png
entry_top_w.png
もともと通貨型の値をVFで出したかったんです。¥マークつけて。

で、フォーマット決めて表示させるには「outputtext」でくくってやればいいってのは今までの経験から分かってたんですけど……
<apex:outputText value="{0,number, ¥##,###,###}">
<apex:param value="{!Opportunity.Amount1__c}"/>
</apex:outputText>


不必要な¥0の部分、消したかったんです。

value値にIF文入れられたんだけど、
({!IF(Opportunity.Amount1__c!=0,'{!Opportunity.Amount1__c}','')})

の値属性の形式が無効です。正数であり、データ型が数値、日付、時刻、または選択である必要があります。」

ってエラーが出て実行時エラー。値は数値なのにぃぃぃっ!!
ちょん(’)つけててもダメだし、付けてなくても怒られるしぃぃぃ……

で、まあ、よくよく考えてみたらさ、「IF文て、文字列として出してるんじゃね…?」ってことに行きついたのです。
その後数値に矯正してやればいいんじゃね?とか残念なこと考えて矯正したけどエラーでたりしてたことはヒミツ。
自分阿呆すぎる。。。文字列を数値にって……



でー、いろいろ英単語でググってたらはっけーん!
「outputtextのrendered使えばどーよ?」

……これって「True」か「False」しか入らんのじゃねーの?
と思いながらも補完機能ガン無視(2回目)して値を入れてみたのです!
  rendered=”{!IF(Opportunity.Amount1__c!=0,'','')}”
うん。
やっぱだめだね。

で、よーく見てみると、
「……あれ、みなさん…IF…使ってない……?」

結局こうなりましたとさ。
<apex:outputText value="{0,number, ¥##,###,###}" rendered="{!Opportunity.Amount1__c != 0}">
<apex:param value="{!Opportunity.Amount1__c}"/>
</apex:outputText>


renderedって意外と使える子なのね。
まだまだ学習せねば。。。

拍手

entry_bottom_w.png
plugin_top_w.png
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
plugin_bottom_w.png
plugin_top_w.png
フリーエリア
plugin_bottom_w.png
plugin_top_w.png
最新CM
[03/21 DaveCusa]
[03/21 braCusaj]
plugin_bottom_w.png
plugin_top_w.png
最新TB
plugin_bottom_w.png
plugin_top_w.png
プロフィール
HN:
杜乃
性別:
女性
自己紹介:
趣味は写真撮影(家猫)と、猫に遊んでもらうこと。
されど猫アレルギー歴早10年。。。

つれづれ出張版では、基本的には仕事で学んだことを忘れないためにつらつら書き綴ります。
つれづれ本店よりは、真面目度アップ?
plugin_bottom_w.png
plugin_top_w.png
バーコード
plugin_bottom_w.png
plugin_top_w.png
ブログ内検索
plugin_bottom_w.png
plugin_top_w.png
最古記事
plugin_bottom_w.png
plugin_top_w.png
アクセス解析
plugin_bottom_w.png
Copyright つれづれ報春【出張版】 by 杜乃 All Rights Reserved.
Template by テンプレート@忍者ブログ
忍者ブログ [PR]