【チェックアウト/インで排他制御しダウン/アップロードで差分管理し次回チェックインでマージされる仕組み】2013/07/242020/01/03生産スケジューラーTweet実績入力の方法ファイルの差分管理システムではチェックアウト/チェックインでプロジェクトファイル本体を排他制御し、ダウンロード/アップロードでテーブルデータの差分管理をし、次のチェックインのタイミングでマージされるという仕組みです。差分のマージはあくまでテーブルのキーを基準に行なうとはいえ、排他制御をかけるわけではないので、同一レコードを同時に複数端末から修正を行なう場合は上書きが起こりますので、実績データなどは端末ごとに入力するラインの担当を分けて上書きを防止する必要があります。本体がチェックアウトされている期間でも実績データはアップロード可能であり、その本体との差分は次回チェックインのタイミングで本体にマージされます。入力を行ないますが、システム上からリアルタイムでこれを行なう作業負荷は高いです。よってリアルタイムに実績収集したいのなら現場端末からバーコード付きの現品票をスキャンさせると効率的ですが、システム導入前に「本当にリアルタイムが必要なの?」という問題意識があってしかるべきだと思います(業務システムインターフェイスの3つの機能)。ネットワーク上での共同作業には複数端末からの更新をコントロールし整合性を保つ排他制御の仕組みが必要ですが、通常はサーバー上のデータベースがこの機能を担います。データベースを使わない差分管理システムの場合、ファイル本体と差分を切り離し管理することにより排他制御と統合を実現します。クライアントPCからのデータアクセスネットワーク上に接続される計画作成端末(MS)や実績入力端末(MES)は、データサーバー(DS)への初回ログイン時にローカルの作業フォルダにワークスペースファイル(as.adw)を生成し、次回以降これをみてサーバーにアクセスします。端末ごとに作業フォルダを作成し、チェックアウトせずにプロジェクトファイルを取得する場合は「最新バージョンの取得」を行い、作業フォルダにプロジェクトファイル(data.aru)を保存し、「最新バージョンで開き直す」で最新バージョンをチェックアウトせずに開き直します。MSではチェックアウト前後で表示されるメニューが異なり、プロジェクトファイルをチェックインした後は最新バージョンの取得(通常は実績端末から行なう)チェックアウト(計画作成端末からのみ可能)プロジェクトファイルをチェックアウトした後は最新バージョンで開き直す(プロジェクトファイル)チェックイン(プロジェクトファイル)チェックアウトの取り消し(プロジェクトファイル)テーブルダウンロード(テーブルファイル)テーブルアップロード(テーブルファイル)ネットワーク障害時には、作業フォルダに保存されたプロジェクトファイルをオフラインで修正し、後でチェックインすることも可能です。チェックインとは宿泊手続きを取るのと同じように、ローカルで修正したファイルをDS側に登録管理してもらう手続きのことです。注意点として、排他制御されるのはプロジェクトファイルのみであり、実績テーブルやBOMは排他制御されないため、データの上書きが発生しないようにライン別に担当者を分けるなど運用でカバーする必要があります。データサーバーによる本体と差分の管理機能データサーバーはデータベースを使わないので、ファイル管理機能だけで以下の機能を実現します。サイト管理(サイトフォルダ内のassite.txt)ユーザー管理(サイトフォルダ内のasuser.txt)データ管理(サイトフォルダ)バックアップ管理(サイトフォルダ)ログ管理(インストールフォルダ)ライセンス管理(インストールフォルダ)プロジェクトファイル本体を排他制御し、本体(オーダテーブル・作業テーブル・BOMなどの集合体)と実績(実績テーブルの差分)の統合を管理するのがデータ管理です。MS)を作成しdata.aruを置き、DSのユーティリティのサイト管理でサイトを登録するとassite.txtが生成され、ユーザー管理からユーザー登録をするとasuser.txtが生成されます。計画作成担当者が複数人いる環境で、ある計画作成端末(MS)がプロジェクトファイル(data.aru)をチェックアウトすると、DSが排他制御をかけるので他のMS端末はチェックアウトできません。チェックインすると、まず\history\dataフォルダ内に現行プロジェクトファイルが履歴としてバックアップされ、次に\transactionにあるアップロード済み未統合の差分ファイルをプロジェクトファイル本体に統合し、最後に差分ファイルが\history\tableに履歴として保存されます。\transactionには未統合の差分ファイルが次のチェックインを待っている状態ということになります。チェックイン(本体)またはアップロード(差分)が発生するたびにデータサーバー(DS)は各端末にファイル更新の通知を送ります。インストールフォルダの中の\licensefileフォルダにライセンスファイルを置くことで、サーバープログラム起動時にライセンス情報を確認します。