昔の名残と技術的なことも
カウンター

プロフィール

りん

Author:りん


♡現在♡
社会人歴4年目
(社内ニート)

♡好き♡

最近の記事
最近のコメント
月別アーカイブ
カテゴリー
リンク
ブログ内検索

RSSフィード
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


お久しぶりです!


あまりにも会社で仕事がなく、暇なので

仕事で調べたことについて少し紹介。


前にかるーくノーツについて話したけど、

ノーツは社内業務ツールとして使われることが多く、

案件もBtoBが多く、あまり目にしたことがないんじゃないかな~


でもノーツでWebシステムも作ることができるのだ!

今ある保守のはどれもフォームとビューだけで、

簡単にWebシステムが出来上がっているんだけど、

フォームとビューだけのWebシステムでは限界を感じる出来事があったのである―


顧客の調査依頼の中に

「今あるチェックボックスでのユーザー選択画面を、カテゴリ表示したものに変えたい」

と、あったので楽勝じゃんとか思いながら、

チェックボックス付きのカテゴリ表示されたビューを

Webブラウザで表示し、動作を確認すると…


カテゴリの開閉が、クリックした箇所だけにならず

どこか1箇所クリックすると全体が開閉されてしまうという...

これは使えないな。


普通カテゴリの開閉は各々できるはずで、

全部閉じるか全部開くのどちらかというのは

ユーザビリティ的にありえない。


そこで思いついたのが、

ノーツにはWebシステム用にXpagesというものがあることだ。


私は部署配属後も暇が沢山あった為、独自でXpagesを学んでいた。

そのXpagesを使って、

チェックボックス付きのカテゴリビューを作ることにした。


まず、手始めに普通にビューをバインドして作ってみたところ、

カテゴリの開閉は依然変わらず、同様の動きとなった。


これはどうしたものか…と思っていたら、

繰り返しコントロールというものを見つけた。

以前、独自で学んでいたときには使用しなかった為、

(上手くいかなくて途中で投げ出した)

繰り返しコントロールを使ったビューの表示方法を調べるところから始まった。

早速、以下のサイトを発見。

繰り返しコントロールでビューを作るには


見よう見まねで作成すると…

データソースのビューがカテゴリ表示だとうまくいかなかった。

カテゴリ表示をはずして再チャレンジ。


おー、各項目が一覧となって表示された。

これをどうやってカテゴリにするかだな…


と試行錯誤した結果、

繰り返しコントロールを複数使うという暴挙にでる。

イメージ的には、

繰り返しコントロール①
▼セクション①
  繰り返しコントロール②
  ▼セクション②
    繰り返しコントロール③
    ▼セクション③
      繰り返しコントロール④
      □チェックボックス

といった形。


これだとカテゴリの数が決められてしまうが、それは致し方ない。

今後の打ち合わせで詰めていくしかないと思っている。←


これで、普通に作ると

ビューに表示されている文書の件数だけ繰り返されてしまう。

これはいかん。

そこで、それぞれの繰り返しコントロールのバインドデータを

@Uniqueで絞り込んでみた。


以下のビューを使用したとすると、

1列目  2列目   3列目      4列目  

A会社  A事業部  A1システム部  A子
A会社  A事業部  A2システム部  B男
B会社  A事業部  A1システム部  C美
B会社  B事業部  B1システム部  D郎
B会社  B事業部  B1システム部  E香
B会社  B事業部  B2システム部  F太


--
繰り返しコントロール①
バインドデータ:@Unique(ビュー1列目)

A会社
B会社


--
繰り返しコントロール②
バインドデータ:@Unique(ビュー1列目+";"+ビュー2列目)

A会社;A事業部
B会社;A事業部
B会社;B事業部


--
繰り返しコントロール③
バインドデータ:@Unique(ビュー1列目+";"+ビュー2列目+";"+ビュー3列目)

A会社;A事業部;A1システム部
A会社;A事業部;A2システム部
B会社;A事業部;A1システム部
B会社;B事業部;B1システム部
B会社;B事業部;B2システム部


--
繰り返しコントロール④
バインドデータ:@Unique(ビュー1列目+";"+ビュー2列目+";"+ビュー3列目+";"+ビュー4列目)

A会社;A事業部;A1システム部;A子
A会社;A事業部;A2システム部;B男
B会社;A事業部;A1システム部;C美
B会社;B事業部;B1システム部;D郎
B会社;B事業部;B1システム部;E香
B会社;B事業部;B2システム部;F太



とする。

まぁ、このままこのデータを使用するだけと、

以下の様なね、見るも無残な形となったよね。(最初よりはまだましだけど)


▼A会社
  ▼A事業部…
  ▼A事業部…
  ▼B事業部…
▼B会社
  ▼A事業部…
  (略)


じゃあ、どうしたかというと

セクション②以降のヘッダーの名前付けをいじってみた。


バインドデータは1行ずつデータを持っているから、

持っているデータが上位セクションのヘッダーと一致したときだけ名前をつける感じ。


何をいっているかうまく伝えられないので、

例をあげて言うと、


この以下のデータがあるとして、(セクション②の例)

A会社;A事業部 …1
B会社;A事業部 …2
B会社;B事業部 …3

セクション①が「A会社」のときのセクション②のヘッダーは、

1は「A事業部」と名前を付けて、2,3は名前をつけない。

セクション①が「B会社」のときのセクション②のヘッダーは、

1は名前をつけず、2は「A事業部」、3は「B事業部」と名前をつける。

つまり、

▼A会社
  ▼A事業部…

▼B会社

  ▼A事業部…
  ▼B事業部…

となるわけだ!

これをセクション③とチェックボックスも同様に行うのだ。

しかしながら、このままだと以下の様に謎の空白が生まれた。

▼A会社
  ▼A事業部
    ▼A1システム部
      □A子

    ▼A2システム部
      
      □B男


▼B会社

  ▼A事業部

    ▼A1システム部


      □C美


  ▼B事業部
    ▼B1システム部


      □D郎
      □E香


    ▼B2システム部
      


      □F太



名前を付けないだけだと、一応存在してるみたいで(?)

1行分とってしまうようだ。

じゃあ次に可視設定をいじってみよう。

ヘッダーがnull(名前が空白のところ)の時、非表示にしてみる。

おぉ、ヘッダー部分の謎の空白はなくなったぞ。


しかしながら、

チェックボックスの可視設定はうまくいっていないみたいだ。

チェックボックスのテキスト(表示名)が空白だったら~

という条件ではダメみたい。


そこで最終奥義!!!

チェックボックスの隣に、編集可能ボックスを置く(もちろん非表示)。

チェックボックスと同じ感じに、一致したときだけ値を設定する。

そしてチェックボックスの可視設定を、

編集可能ボックスがnull(値なし)の場合、非表示とする。


きたーーーーーーー!!!!

謎の空白行がなくなってすっきりした。



レイアウトはとりあえず、こんな感じで出来上がった。

次回は、どこにチェックがついているかを取得する方法について書くことにする。


またねー!


<< 301 // HOME // 299 >>
技術者ブログとして公開する気は無いのか?
【2015/10/01 Thu】 URL // とら #4TqNN4I2 [ 編集 ]

管理者にだけ表示を許可する
// HOME //
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。