Pleasanter(プリザンター) プルダウンリストにおけるJSON形式のススメ データの引っ越しの話し サイトID絡みのスクリプトはなるべく避けれるなら避けたほうがよいかもの件

なんで、こんなことを言っているかと言うと、私、物理的に6月からPleasanter(プリザンター)を触り始めまして、

1台目、6月に、会社の要らないPCにUbuntuでセットアップ、

2台目、7月に、自宅の要らないPCに同じくUbuntuでセットアップ、

3台目、8月に、SynologyのDS1621+のVMMにてUbuntuServerにてセットアップとしてきました。

なぜか、ひと月違うとバージョンは全部違うという、、

常日頃、どれだけバージョンアップをしているかが分かるといえばわかる。

半面、それに付き合うのも、また、面倒ですね。www

なんで、ジプシー的なことしているかというと、

最初は自分の会社で運用できるかどうかのテスト、

二回目はLocalではなくGlobalでの運用はどうなるかな?という感じ、

三回目は、じゃ、実際、ハードの選定はどうしようかな?という感じでしょうか。

サイトIDが全部変わる。

で、データも引っ越す訳(サイトパッケージのインポート、エクスポートにて)ですが、引っ越すとサイトIDが全部変わるんですよね。

どういうことかというと、今まで作成したが、削除したデータやサイトなどの情報が、累積しますよね。

仮に削除された情報も含めて、トータルで1000レコードまで使ったけど、削除した情報は500だったとすると、実質500のデータです。

でも、途中を削除しているので、データ的には歯抜けになってますよね。

Excelで適当に書いてみました。www ホント、書くとデフラグだぁ。。

で、最初に作ったものは、そのまま運用する場合は気にならないと思いますが、引っ越しすると、削除された情報は待って行かないので、集約されるんですよね。

賢いといえば賢いですね。

(なんか、デフラグみたいな感じかなぁ。とか思います古いなぁ。)

なので、サイトIDが変わるんですよね。

(うまく説明できてるかな、すいません。)

すると、スクリプトに埋め込んであるサイトIDをすべて変更しないとならないのですよね。

これが引っ越しでの手間ですね。ホント、面倒です。

JSON形式だと引っ越し時に勝手に変換

だが、しかし、JSON形式で書かれたものは勝手にサイトIDを変換してくれるんですよ。

ここで言っているJSON形式とは 

「担当者項目、管理者項目、分類項目の中の選択肢一覧をJSON形式で記述すること」

です。

公式サイトでは以下のリンクのこと。

最近、気が付きました。

なんてこったい。。。。

始めから知っていれば、、、どれだけ楽だったか。。

というか、最近になってJSON形式で記入する。っていうのに気が付きました。

これ、覚えるとかなり楽になりますよね。

Json形式とScriptの比較

どれだけかというと、自分、かなりスクリプトで書いてました。

拙いですが、こんな感じのスクリプト

(function () {
    console.log("ClaasK フィルタリングスクリプト開始");  //ClassKは変更要素

    var $select = $("#Issues_ClassK");  // Issues_ClassKは変更要素
    if ($select.length === 0) {
        console.warn("ClaasK セレクトボックスが見つかりません");
        return;
    }

    console.log("ClaasK セレクトボックス取得成功");

    $select.find("option").each(function () {
        var $option = $(this);
        var text = $option.text().trim();

        // 先頭3文字を抽出
        var first3 = text.slice(0, 3);

        // 数値として解釈
        var classH = parseInt(first3, 10);

        if (!isNaN(classH)) {   // ClassHは固定
            console.log("ClassH(先頭3文字):", classH, "テキスト:", text);

            if (classH >= 900) {
                console.log("除外対象(ClassH >= 900):", text);
                $option.remove();
            }
        } else {
            console.log("ClassH 抽出失敗(数値でない):", text);
        }
    });

    console.log("ClaasK フィルタリング完了");
})();

内容は「状況」が900以下だったら、表示してそれ以外は表示しない。という感じです。

とはいえ、みんな、Copilot君に書いて貰うんですけど。。。wwww

今更、JavaScriptを本気で覚えようなんてサラサラないわけでして。。

AI、最高。。っていう感じの人間です。。www

[
  {
    "SiteId": 40,
    "View": {
      "ColumnFilterHash": {
        "Status": "[\"100\",\"150\",\"200\",\"300\"]"
      }
    }
  }
]

で、同じことをJSON形式で書くと、これだけ。。。。。。

Orz。。。。

(古い、、、、、、が、、、あまりにもショックだったので。。。。。)

そして、サイトIDは勝手に変更されるという。。。

あまりにも、運用上のメリットの差が大きい。。。。

そんなのどこにも書いてないじゃん。。。。

早く言ってよ。。。的な。。。。

とまぁ、、、Pleasanterあるあるって感じなのでしょうか。。。

と、データの引っ越しに関する話とJSON便利って話でした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください