忍者ブログ

ド壺

脳内がNotes/Domino系からASP.NETに移行しつつあるIT系情報ブログなつもり。

   

[PR]

×

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

小ネタ:Formフィールドの値入替

あんまり知られてないっぽい?
というか勘違いしてる人がいるっぽい??ので、小ネタとして。

ノーツR5以降から?ぐらいか
(自分が覚えてる限りではR4.6ではフォームから作成された文書に
Formフィールドがなかった気がする。。)
各文書にFormフィールドがつくようになりました。

どうやらこれはデータと情報を分離するためなんでしょうねー。
文書はデータの集まり。RDBでいうところの1レコードに相当します。
で、フォームは文字通りデータを入力し文書を作成するためのフォームですが、
自分は、データを情報として表示するための修飾するための物。と思ってます。

まー、ある意味フォームは着せ替え人形の洋服みたいなもんです。
裸の人形がデータの集まり(文書)として考えてもらって
(ちょっと良からぬ想像をした人は1時間正座しるっ!)、
フォームはその上に着替えさせる洋服だと思ってください。
裸のまんまの人形だと見栄えが悪いので、ここで洋服に着替えさせる訳ですが
色んな洋服に着替えさせると、見た目がまったく違うようになりますよね?
これと一緒で、
フォームを変えることによりデータの見せ方を変える事が可能となります。

サンプルとして、重要度により文書の背景の色を変える方法

まず一つスクリプトライブラリcommonにChangeFormサブルーチンを作成します。
Sub ChangeForm(doc As NotesDocument)
If doc.level(0) = "高" Then
doc.Form = "main-red"
Elseif doc.level(0) = "中" Then
doc.Form = "main-yellow"
Else
doc.Form = "main"
End If

Call doc.save(True, True)
End Sub


次にmainフォームを作成します。
その上で、セーブ時に先に作ったChangeFormをCallします。
このとき(options)にUse "common"の宣言を忘れないこと。
Sub Postsave(Source As Notesuidocument)
Dim doc As NotesDocument
Set doc = Source.Document
Call ChangeForm(doc)
End Sub

フィールドとかはこんな感じ↓で。


mainフォームの背景は白に。
あとはmainフォームをコピーし、
そこからmain-redとmain-yellowの二つのフォームを作り、
main-redフォームの背景は薄いピンク。
main-yellowフォームの背景は薄い黄色に変更します。

これで、mainフォームから作られた文書の
levelフィールド(重要度)が変更され保存される度に、
フォームが切り替わり文書の背景色が変わったように見えるはずです。


今回のは背景しか色を変えてませんが、
リッチテキスト以外のフィールドなら設計上の色に見た目が変わるかも。
(この辺はちゃんとテストしてないので。。。)

あとは、非表示・表示の切替が複雑なフォームになる場合、
非表示したい行やフィールドを削除したフォームを別につくり、
ステータス(フラグ)によって、フォームを切り替えることにより
擬似的に非表示・表示の切替もできるようになります。

他にも応用として、
あるDB(A)から他のDB(B)に文書を作成する場合、
指定したフォームがAのDBになくても、
文書の作成先のBのDBにその指定したフォームがあれば、問題ありません。
特に、メール文書をAのDBから作成し、BのメールDBに送信するだけならば、
BのmemoフォームをAのDBにコピーさせる必要はありません。
(AのDB上でも作成したメール文書を保存し、AのDB上で参照したい場合は、
BのmemoフォームをAのDBにコピーする必要があります。)

つまり、参照するDB内にそのフォームがあれば文書は表示できちゃいます。
まぁフィールドが一致しないと各データ表示は無理ですけどね。
これを踏まえておくと、色々応用ができるようになりますよー。

拍手[1回]

PR

COMMENT

NAME
TITLE
MAIL(非公開)
URL
EMOJI
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
COMMENT
PASS(コメント編集に必須です)
SECRET
管理人のみ閲覧できます

TRACKBACK

Trackback URL:

カウンター

ブログ内検索

カレンダー

10 2024/11 12
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

プロフィール

HN:
nami
性別:
女性
自己紹介:
火星人+/ペガサス/ささ女
の完全変人タイプ。

仕事は1事業所のIT管理者。
ノーツDB開発を主に担当。
鯖管理とNetwork管理にも携わる。
ぶっちゃけIT便利屋。
基本は「広く浅く」。
口癖は「メンドクサ。。。」

ついったーやってます。
@namiphoをフォローしてネ


トラバについて
ここの記事のリンクがない記事については、トラバ許可はしませんのでご承知おきください。

最新コメント

No Title(返信済)
(04/25)
No Title(返信済)
(04/12)
No Title(返信済)
(03/01)
(10/07)
(09/29)

最新トラックバック

バーコード

アフェリエイト


デル株式会社
シマンテックダウンロードストア

お天気情報

アクセス解析

Copyright ©  -- ド壺 --  All Rights Reserved
Design by CriCri / Photo by Geralt / powered by NINJA TOOLS / 忍者ブログ / [PR]