タグ: Notes/Domino

  • [Domino]ノーツドミノとは

    [Domino]ノーツドミノとは

    ノーツドミノとは

     ノーツドミノとはコンテンツマネジメントシステム(CMS)のひとつです。
     文字コードが異なる複数の国の文字をひとつの文書に表示するためにロータスマルチバイト文字セット (LMBCS) というノーツ固有のユニコードが使われ、文書を保存・検索するためにつくられた付属のデータベースに保存されます。
     機密文書を扱えるように表示・編集などのセキュリティは非常に細かく、やろうとおもえば段落ごとに設定することができます。

     ノーツドミノに付属するデータベースは分散型で、国・企業や言語が異なるサーバにも情報を複製して配置でき、ひとつのサーバが止まってもクライアントがサーバを切り替えて業務を継続できます。

     厳密には『ドミノ(Domino)』がサーバーソフトウエアで、『ノーツ(Notes)』がクライアントソフトウエアになります。クライアントソフトウエアには、ブラウザーやスマートフォンからサーバーにアクセスする『ノマド(Nomad)』があります。

     また、ノーツドミノはアプリケーションを開発・実行するアプリケーションプラットホームでもあります。開発環境は専用ソフトをパソコンにインストールして使います。オブジェクト指向言語によるプロコード開発だけでなく、マウスで選択していくノーコード開発や、関数を使ったローコード開発もできます。
     統合開発環境(IDE)は Eclipse をベースにしたデザイナー(Domino Designer)や、ブラウザーアプリを簡単に開発するためのリープ(Domino Leap)があります。

     ドミノはメールの送受信や中継をするメールサーバでもあります。コンテンツマネジメントシステム(CMS)としてメールをデータベースに蓄積することや、アプリケーション開発プラットホームとしてメールを受信や中継するタイミングで動くアプリケーションを開発することができます。

     ノーツドミノに付属または作ったアプリケーションが、グループウエアとして皆で協力して業務を進めるツールになります。グループウエアといえばノーツと言われた時期があります。

    用途

     ノーツドミノは次の用途で企業や企業グループ向けに使われます。

    • 有用な社内文書を蓄積・分類・共有・検索ができます
    • 少ないコストで業務アプリをつくれます
    • 電子申請(ペーパーレス)ができます
    • 社内外のメールの送受信と蓄積・分類・共有・検索ができます
    • メールのように、文書に添付ファイルを添えて保存できます

    終わったか?

     近ごろもノーツドミノ話題として、『ノーツドミノが終わった』『ノーツドミノのサポートが終わった』というお話を聞くことがあります。これは10年前に発売された古いバージョンのサポートが終わったという意味です。新しいバージョンは出続けていますし、当然にサポートがあります。

    高いか?

     他にも『ノーツドミノのライセンスが高い』というお話しを聞きます。ノーツドミノはIDあたり月950円です。(HCL Dominoの価格(料金・費用) – ITreview
     実際にノーツドミノからシェアポイントやセールスフォースへ移行したお客様のお話しでは『ノーツドミノのライセンスは安かった』と聞いています。ノーツドミノは開発環境やデータベースまで含んだオールインワンのソフトウエアで、追加のライセンスなしで使えます。後付けされたリープやセームタイム(Sametime)には別途ライセンスが必要だったとおもいますが、これが無ければ使えないものではありません。
     ノーツドミノ以外の良く比較されるソフトウエアは単機能であることが多いため複数の製品を組み合わせて使います。(SharePoint Online のオプションの比較 – Microsoft) それぞれにライセンス料がかかるため『トータルではノーツドミノが安い』となります。
     開発や維持管理までお話しを拡げると、ノーツドミノはノーツドミノを知れば使いこなせます。 複数のソフトウエアを組み合わせると、それぞれの製品を知ることはもちろんですが、組み合わせによってできる/できないというところまでわからないと使いこなせないため必要なエンジニアの数が激増します。 エンジニアの人件費合計も『ノーツドミノは安い』となります。

    実際のところノーツはいくらするの?

     ノーツドミノを導入するといくらかかるかコストを試算してみましょう。

    ライセンス料金

     ライセンスは月950円ですから、年11,400円になります。

    サーバー料金

     サーバーはIntel(AMD不可)の2コアCPUと8GBメモリーと3GBの空きディスク容量があればOKです。(システム要件 – HCL Domino

    VPS

     プロバイダのVPSを使えばインターネット経由でアクセスできます。
     例えば、さくらのVPS W8Gプラン(メモリ8GB、SSD400GB)なら要件を満たし、年107,690円になります。(さくらのVPS for Windows Server

    ミニPC

     ミニPCなら10万円で買えるものがありますし、ディスクが少ないモデルでは3万円でも買えそうです。
     社内にミニPCを置くことになるとおもいますが、インターネットからアクセスするばあいは固定IPアドレスが必要になります。

    クラウド

     Amazon・Google・Microsoftなどのクラウドでもノーツドミノは動きますが、金額の試算が難しいためここでは言及しません。

    エンジニアの料金

     最初の導入や、プロコードを使った複雑な業務アプリケーションをつくるのはエンジニアにやってもらったほうがいいと考えます。

     最初の導入でやってもらう内容をギュッと厳選すれば、過去には2日でおこなった実績があります。

     業務アプリケーションの開発では、内容によって幅が広いですが、ひとつ5日くらいでしょうか。

     エンジニアが月120万円くらいなので、1日なら6万円くらいです。週1日でお願いすると年300万円くらいになります。
     アシスタントエンジニアなら半額くらいになるとおもいますが、高度なことができなかったり、エンジニアよりも時間がかかって割高になるため注意しましょう。
     経験では、エンジニアとアシスタントエンジニアを組み合わせると割安になります。

    ノーツの合計金額

     それではノーツドミノを使うといくらかかるか総コストを出してみましょう。

    自力で構築・運用するばあい

     さくらのVPS W8Gプランのばあいでは、ひとりで使うなら年119,090円5人で使うなら年164,690円(ひとりあたり年32,938円)、10人で使うなら年221,690円(ひとりあたり年22,169円)、100人で使うなら年1,247,690円(ひとりあたり年12,477円)になります。

     10万円のミニPC(電気代含まない)を3年間使ったばあいでは、ひとりで使うなら年44,733円5人で使うなら年90,333円(ひとりあたり年18,067円)、10人で使うなら年147,333円(ひとりあたり年14,733円)、100人で使うなら年1,173,333円(ひとりあたり年11,733円)になります。

     これでライセンスとサーバーが用意できましたので、ノーコードやローコードなどを使って一般ユーザーが頑張れば業務アプリケーションをつくることができます。文章の共有は十分できます。
     外部のエンジニアに頼らずに開発と管理をする企業がありますので、十分に現実的です。

    少しだけエンジニアに頼るばあい

     次のように最初の導入と技術支援をエンジニアに依頼したばあいはいくらになるでしょうか。

    • 導入で、エンジニアとアシスタントエンジニアが2日で18万円、5年償却
    • 維持管理と業務アプリケーション開発支援で、エンジニアとアシスタントエンジニアが月1日で月9万円

     さくらのVPS W8Gプランのばあいでは、ひとりで使うなら年1,235,090円5人で使うなら年1,280,690円(ひとりあたり年256,138円)、10人で使うなら年1,337,690円(ひとりあたり年133,769円)、100人で使うなら年2,363,690円(ひとりあたり年23,637円)になります。

     10万円のミニPC(電気代含まない)を3年間使ったばあいでは、ひとりで使うなら年1,160,733円5人で使うなら年1,206,333円(ひとりあたり年241,267円)、10人で使うなら年1,263,333円(ひとりあたり年126,333円)、100人で使うなら年2,289,333円(ひとりあたり年22,893円)になります。

    表にまとめてみました

     これらを次の表にまとめました。

    サーバーエンジニア1人5人10人100人
    さくらのVPS W8Gプラン頼まない年119,090円年164,690円(ひとりあたり年32,938円)年221,690円(ひとりあたり年22,169円)年1,247,690円(ひとりあたり年12,477円)
    さくらのVPS W8Gプラン導入と支援年1,235,090円年1,280,690円(ひとりあたり年256,138円)年1,337,690円(ひとりあたり年133,769円)年2,363,690円(ひとりあたり年23,637円)
    10万円のミニPC 3年償却頼まない年44,733円年90,333円(ひとりあたり年18,067円)年147,333円(ひとりあたり年14,733円)年1,173,333円(ひとりあたり年11,733円)
    10万円のミニPC 3年償却導入と支援年1,160,733円年1,206,333円(ひとりあたり年241,267円)年1,263,333円(ひとりあたり年126,333円)年2,289,333円(ひとりあたり年22,893円)

    関連

    関連する記事はnoteにもあります。

    ノーツのサポートが終わるというけれど。。。

  • [Domino]ノーツドミノでつかう言語

    [Domino]ノーツドミノでつかう言語

     ノーツ/ドミノ(Notes/ Domino)で使われるおもな言語にはロータススクリプト(Lotus Script)とロータス式言語(Lotus 式言語やアットマーク関数と呼ばれます)があります。サーバーサイドではJavaも使えます。ロータススクリプトもロータス式言語もコードを保存するときに自動でコンパイルされますので、普段はコンパイルを意識することはありません。
     ロータススクリプトは VBScript に似たところがある言語ですが、後発だけあってエラー処理や変数の型などはかなり改善されて使いやすくなっています。Visual Basic にそっくりです。

     ノーツ/ドミノをウェブ関係で使うと、JavaScriptやJavaを使います。表示まわりではHTML/CSSも使うでしょう。

     Windows上でドミノサーバーを動かしていると、管理用のプログラムを C# や VBScript で書くことがあります。C#コンパイラ(csc.exe)は.NETの実行環境に含まれています。VBScriptはWindows標準コマンドWScriptやCScriptからソースコードをコンパイルせずにコマンドプロンプトやマウスダブルクリックで実行することができます。

  • [Domino]欲しい情報が最初に目に入るノーツドミノ

    [Domino]欲しい情報が最初に目に入るノーツドミノ

    私が作成したもの、私のチームが作成したもの、とにかく私に関係あるもの、これらの情報が真っ先に見える情報システムって素敵ですよね。必要な情報を探さない、そこにある、私は大好きです。

     個人ビューは誰でもノーコードから作成できます。アクセスする権限さえあれば、私が求める形式で、私が見やすい並び順で、私が見たいものだけをノーコードやローコードでいつでも表示できます。情報エンジニアにしか扱えないプロコードは必要ありません。

     『購読』という機能を使えば、私がウォッチする範囲のデータが投稿または更新があると通知してくれます。これはノーツクライアントから誰もが使えるプロコード不要の機能です。

  • [Domino]分かり易い画面をもつノーツドミノ

    [Domino]分かり易い画面をもつノーツドミノ

    一定のルールにのっとったUI(ユーザーインターフェース)で、どのアプリも作られています。ひとつのアプリを使えるようになれば、他の何百というアプリも抵抗なく使えます。業務で使うアプリは操作方法の文書を読まなくても使えると嬉しいです。恰好がパッとしなくてもよいのです。無駄なく確実に使えるアプリであることが一番です。

     アプリはテンプレート(ひな形)から設定を変更するノーコードでつくることができます。小さいプログラムを入れたローコードや、ICTエンジニアに依頼してプロコードで新しいテンプレートをつくることもできます。テンプレートができあがれば、同様のアプリをいくつでもつくることができます。

     DXを推進するためにユーザーが自分でアプリをつくっていくことができます。ユーザーがDXを推進できるというのがノーツの特徴ですが、ノーコードでつくられたアプリができることは限られます。
     ユーザーによってアプリがたくさんつくられますが、管理用ソフトウエアで制御することができます。ユーザーがICT部門に権限を与えてくれなくても、ICT部門は権限を取得できます。そっと見守るように管理することもできます。

     セキュリティ設定を制御することでICT部門が独占的にアプリを開発・リリースできるようにすることができます。一般的にアプリが高度化・複雑化します。
     個々のユーザーが求める情報を優先的に表示するようにするためにはICTエンジニアの技術力と経験が必要になります。ひとによって見えるものが違うというのは完成イメージを想像するのが難しいです。思いやりも必要ですね。

     アプリ間やシステム間の連携をするようになるとノーツドミノってイイよねってなります。

  • [Domino]業務の標準化・承継を推進する事例

    [Domino]業務の標準化・承継を推進する事例

    業務をひとからひとへ継承するときどうしていますか?

     業務の手順を普段から作成している場合だけでなく、引き継ぎが必要になってから文章を書くこともあるとおもいます。
     それらの文章はすべての担当者が共有する標準的な手順として扱われていますか?

     表計算やワープロなど数多くのファイルをファイルサーバーやシェアポイントなどへ保存していませんか?
     会社の資産として整理整頓できていますか?

    手順を管理するアプリ(データベース)

    それぞれの担当者がおこなう雑多な業務のやり方を常日頃から入力・更新しておくアプリがありました。
     創造的な業務はざっくりした手順で、機械的に進める業務は細かい手順を入力します。
     このアプリには会社全体でおこなっている業務の手順が集められて、これを参考に管理・合理化を進める部署では業務の合理化・標準化を進めます。

     直接ノーツドミノへ入力することでファイルが散らかることがありません。ファイルをひとつひとつ開いて中身を確認するような手間はありません。文章は素早く検索できます。

     将来、事業承継をすることになったときでも、会社の業務すべての手順があれば、引き継いだひとも安心です。

    仕組み

    文章を管理するデータベースソフトウエアであり、業務アプリを素早く開発する基盤でもある『ノーツドミノ』を使うと、このアプリをノーコード(プログラム開発不要・エンジニア不要)で開発できます。

  • [Domino]手作りDXを推進するノーツドミノ

    [Domino]手作りDXを推進するノーツドミノ

    ICTエンジニア不要でDXを推進する方法をお伝えします。強力な開発プラットフォームがICTエンジニアなしでDXを推進できるようにします。

     個々のデータを入力・表示する画面は文章を編集する方法の延長です。データ一覧を表示する画面は個人ビューやフォルダをつくる方法と同じです。
     このようにユーザーが使うことの延長線上にデザイン(設計)することがあるのがノーツの特徴になります。ノーツドミノを使っていれば自然にデザインに入っていけます。

     データ入力・表示するデザインは、ノーツドミノで表を含む文章を入力したことがあればスムースに作成できます。ノーツドミノに文章を作成する要領で作成し、追加でデータを入力するフィールドを配置することでデザインが完成します。ユーザーの文章作成画面とデザイン画面の使い勝手が同じなので、業務を一番知っているユーザーが自信を持ってDXを主導することができます。

     データを一覧表示するデザインは、個人ビューや個人フォルダーと同じものです。ノーコードから作成できます。

     このようにユーザーがデザインできるのがノーツドミノの利点です。しかしながらパフォーマンスを考慮に入れたデザインが必要になったら、総合的な知識があるノーツドミノのICTエンジニアにお任せください。

  • [Domino]文書の貼り付けを禁止する方法

    [Domino]文書の貼り付けを禁止する方法

    はじめに

     多くのユーザーに使われているアプリを長年使用していると、個人メールだったり他のアプリの文書だったりが紛れ込んでいることがあります。

    文書の貼り付けを禁止する方法

     アプリのすべてのビューのQueryPasteイベントに次の行を追加することで、貼り付けを禁止することができます。

    Continue = False

     このアプリの文書だけは許可したいというふうに、一部の文書を許可するばあいにはもっと複雑なコードを書く必要があります。

    さいごに

     文書を貼り付ける以外にも、メニューから[ファイル]-[インポート]で文書を追加することができます。この対策として、追加されてしまった文書を表示しないようにしたり、自動削除したりする方法が考えられます。

  • [Domino]エクセルを操作する

    [Domino]エクセルを操作する

     ノーツからエクセルを操作するにはエクセルオブジェクトを作成して操作します。

    Dim アプリ As Variant
    Set アプリ = CreateObject ({Excel.Application})

     詳しくは次のリンクを参照してください。

    [中級][LotusScript]ノーツからエクセルを操作するには

    オブジェクト モデル (Excel)

  • [C API]文書が開かれたり保存されたりするときに呼び出されるDLL

    [C API]文書が開かれたり保存されたりするときに呼び出されるDLL

     notes.iniに『NSF_HOOKS=①DLL名』と指定すると、文書が開かれたり保存されたりしたときにDLLが呼び出されるようになります。
     呼び出されるDLLファイル名は、ノーツプログラムディレクトリに配置される多くの*.exeファイルと同じように先頭が『n』から始まるようにします。
     notes.iniに記載する①DLL名はDLLファイル名の先頭の『n』と拡張子『.DLL』を取り除いたものになります。

     もし『NSF_HOOKS=①DLL名』の記載があって、該当のDLLファイルが存在しないときどうなるでしょうか?
    試したところ…設定が無視されるだけで、エラーが発生したりサーバーがクラッシュすることはありませんでした。

     NSF_HOOKSから呼び出されるDLLのサンプルはC API Toolkit for Notes/Dominoのsample/admin/trackerにあります。

    https://note.com/notesdomino/n/nbb372fc27daa

    https://note.com/notesdomino/n/n6e674c879c5d

  • [MariaDB]データベースを作成してみます

    [MariaDB]データベースを作成してみます

    HeidiSQLで

     MariaDBをインストールするとHeidiSQLが付いてきます。このHeidiSQLを開いて新しくデータベースを作成してみます

    画面左側の [localhost] - [新規作成] - [データベース] を選びます

    [データベースを作成] 画面で、任意の [名前] をいれます
    [照合] は何を選んだらいいの?というのが今回のお話しの中心になります

    照合

    データを比較するときにどうするかというものです
    日本語対応のUTF-8にするのでutf8mb4にしますが、utf8mb4から始まるものがたくさんあります
    細かいことは列の設定でもできるそうなので、データベースの設定としてはutf8mb4_binにします
    binはバイナリ比較をするという意味で、アルファベットの大文字小文字や平仮名片仮名を別の文字として比較します

    データベースを作成するときに名前と照合が必要でした

    テーブル

    MariaDBはOS2/400と同様に、あらかじめを定義する必要がありそうです

    Notes/Dominoはデータベースのパスとタイトルを決めればOKで、基本の NoteID と UniversalID のふたつのテーブルは一律に自動作成されました
    こういうところがMariaDBとNotes/Dominoの違いなんだねと感じます

    先程作成したデータベース名のところでマウス右ボタンクリックして、[新規作成] - [テーブル] を選びます

    インターネットで見つけた『掲示板サーブレットを作成する』記事のデータベースならこんな感じになるのかなとサンプルを作ってみました

    コマンドプロンプトで

     Windowsコマンドプロンプトを開いて新しくデータベースを作成してみます
     例えば次のように操作できます

    mariadb -u ユーザー名 -p
    (パスワード入力)
    create database `データベース名`;
    show databases;
    use `データベース名`;
    create table `テーブル名` (`カラム名` 型 オプション,`カラム名` 型 オプション,・・・);
    show tables;
    select count(*) from `テーブル名`;
    
    drop table `テーブル名`;
    drop database `データベース名`;
    exit;

    データ定義 - MariaDBナレッジベース

    よくあるエラー

     MariaDB中のデータベース名やテーブル名などの前後は「`(バッククォート:Shift + @)」で囲みます。バッククォートを忘れると次のようなエラーが出ます

    ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '*' at line *

     名前によってはバッククォートを付けなくても大丈夫なこともあります。例えば先頭文字が英字でコマンドとは異なる文字列のばあいです