差分管理によるプロジェクトファイルの統合管理 【チェックアウト/インで排他制御しダウン/アップロードで差分管理し次回チェックインでマージされる仕組み】

本記事の概要

ファイルの差分管理システムではチェックアウト/チェックインでプロジェクトファイル本体を排他制御し、ダウンロード/アップロードでテーブルデータの差分管理をし、次のチェックインのタイミングでマージされるという仕組みです。

ただし差分のマージはあくまでテーブルのキーを基準に行なうとはいえ、排他制御をかけるわけではないので、同一レコードを同時に複数端末から修正を行なう場合は上書きが起こりますので、実績データなどは端末ごとに入力するラインの担当を分けて上書きを防止する必要があります。

本体がチェックアウトされている期間でも実績データはアップロード可能であり、その本体との差分は次回チェックインのタイミングで本体にマージされます。

実績入力の方法

但しスケジューラーの場合、実績入力は計画に対して行なうもので、生産管理システムでいう計画外製造実績入力は基本行ないません。

つまり現場担当者はPPICの担当者が作成した計画リストから該当計画作業(製造指図)を探し出して開始日時、終了日時、実績数量等の入力を行ないますが、システム上からリアルタイムでこれを行なう作業負荷は高いです。

よってリアルタイムに実績収集したいのなら現場端末からバーコード付きの現品票をスキャンさせると効率的ですが、システム導入前に「本当にリアルタイムが必要なの?」という問題意識があってしかるべきだと思います(業務システムインターフェイスの3つの機能)。

ネットワーク上での共同作業には複数端末からの更新をコントロールし整合性を保つ排他制御の仕組みが必要ですが、通常はサーバー上のデータベースがこの機能を担います。

但しデータベースを使わない差分管理システムの場合、ファイル本体と差分を切り離し管理することにより排他制御と統合を実現します。

クライアントPCからのデータアクセス

ネットワーク上に接続される計画作成端末(MS)や実績入力端末(MES)は、データサーバー(DS)への初回ログイン時にローカルの作業フォルダにワークスペースファイル(as.adw)を生成し、次回以降これをみてサーバーにアクセスします。

端末ごとに作業フォルダを作成し、チェックアウトせずにプロジェクトファイルを取得する場合は「最新バージョンの取得」を行い、作業フォルダにプロジェクトファイル(data.aru)を保存し、「最新バージョンで開き直す」で最新バージョンをチェックアウトせずに開き直します。

MSではチェックアウト前後で表示されるメニューが異なり、プロジェクトファイルをチェックインした後は

  1. 最新バージョンの取得(通常は実績端末から行なう)
  2. チェックアウト(計画作成端末からのみ可能)

プロジェクトファイルをチェックアウトした後は

  1. 最新バージョンで開き直す(プロジェクトファイル)
  2. チェックイン(プロジェクトファイル)
  3. チェックアウトの取り消し(プロジェクトファイル)
  4. テーブルダウンロード(テーブルファイル)
  5. テーブルアップロード(テーブルファイル)

ネットワーク障害時には、作業フォルダに保存されたプロジェクトファイルをオフラインで修正し、後でチェックインすることも可能です。チェックインとは宿泊手続きを取るのと同じように、ローカルで修正したファイルをDS側に登録管理してもらう手続きのことです。

注意点として、排他制御されるのはプロジェクトファイルのみであり、実績テーブルやBOMは排他制御されないため、データの上書きが発生しないようにライン別に担当者を分けるなど運用でカバーする必要があります。

データサーバーによる本体と差分の管理機能

データサーバーはデータベースを使わないので、ファイル管理機能だけで以下の機能を実現します。

  1. サイト管理(サイトフォルダ内のassite.txt)
  2. ユーザー管理(サイトフォルダ内のasuser.txt)
  3. データ管理(サイトフォルダ)
  4. バックアップ管理(サイトフォルダ)
  5. ログ管理(インストールフォルダ)
  6. ライセンス管理(インストールフォルダ)

プロジェクトファイル本体を排他制御し、本体(オーダテーブル・作業テーブル・BOMなどの集合体)と実績(実績テーブルの差分)の統合を管理するのがデータ管理です。

DS上にサイトフォルダ(D:\Asprova MS)を作成しdata.aruを置き、DSのユーティリティのサイト管理でサイトを登録するとassite.txtが生成され、ユーザー管理からユーザー登録をするとasuser.txtが生成されます。

計画作成担当者が複数人いる環境で、ある計画作成端末(MS)がプロジェクトファイル(data.aru)をチェックアウトすると、DSが排他制御をかけるので他のMS端末はチェックアウトできません。

チェックインすると、まず\history\dataフォルダ内に現行プロジェクトファイルが履歴としてバックアップされ、次に\transactionにあるアップロード済み未統合の差分ファイルをプロジェクトファイル本体に統合し、最後に差分ファイルが\history\tableに履歴として保存されます。つまり\transactionには未統合の差分ファイルが次のチェックインを待っている状態ということになります。

チェックイン(本体)またはアップロード(差分)が発生するたびにデータサーバー(DS)は各端末にファイル更新の通知を送ります。

Asprova DS file structure

ログファイルはインストールフォルダのasnlslog.csvにサイト情報、ユーザー情報、時間、処理内容等を記録していきます。またインストールフォルダの中の\licensefileフォルダにライセンスファイルを置くことで、サーバープログラム起動時にライセンス情報を確認します。

Asprova DS structure

最新情報
お届けします

Twitter で