header1 header2

PMSデータベース「圃場DB」紹介

圃場データベース(圃場DB)はデータ格納庫です!

 「作業計画・管理支援システム」(PMS)では,圃場地図を除くほとんどのデータは"圃場DB"という名前のデータベース内に格納されています。この"圃場DB"データベースは,Microsoft(R) SQL Server(R)上のデータベースファイルとして実装されています。

 Microsoft SQL Serverには有償と無償の製品がありますが,以下では無償配布されている SQL Server 2005 Express Edition をデータベースエンジンとして使用し,管理ツールとして Microsoft SQL Server Management Studio Express を使用している環境を前提として,"圃場DB"について紹介しています。

 SQL Server 2008,同R2,2012,2014 の Express Edition(無償版)でも動作を確認をしています。

 

※ Windows 8 及び Windows Server 2012 以降のOSでは,SQL Server 2008以降を使用してください。Microsoftが左記OS上での SQL Server 2005 の動作を推奨していないためです。

 

最新情報 − 圃場DBバージョン 1.51.10316

2015/07/21,これまでに色々と拡張されました(更新概略についではアップデートスクリプト末尾の更新履歴情報を参照してください)。

2013/04/01,土壌・品質管理台帳項目が10→20へ拡張されました。

2013/01/16,給与・資産管理関係テーブル・カラムが追加されています。

 

圃場DBバックアップについての重要な注意事項!!!

 本システムを初めてセットアップした後(完全インストール),Management Studio を用いて,圃場データベースをバックアップしようとすると,既定のバックアップファイルとして,システムを導入したフォルダ(通常"C:\Program Files\AGinfo\作業計画管理.net\)内の"圃場DB(近農研サンプル).bak"が指定されていますが,このファイルにそのままバックアップを作成しないで下さい。

 ご面倒でも,一旦このファイルの指定を「削除」し,「追加」ボタンを押して,別のバックアップファイルを指定して,そのファイルにバックアップを作成して下さい。通常,バックアップはSQLサーバ(インスタンス)がインストールされているフォルダ以下の"Backup"フォルダ内に作成します。

 バックアップ・リストア操作の概要については以下を参照して下さい。

【理由】

 システムが導入されたフォルダ内の"圃場DB(近農研サンプル).bak"ファイルは,セットアップの際の圃場DB初期ファイルとして,このフォルダ内にコピーされ,SQLサーバ上にリストアされることによって,初期データサンプルとしてセットアップされています。このセットアップ時のリストア操作の履歴が以降のバックアップ操作の際の既定値として使用されるために,Management Studioでバックアップしようとした際の既定バックアップファイルとして指定された状態になるようですが,これをそのままバックアップファイルとして使用してしまうと,次回セットアップを行った際に,セットアップが,折角バックアップした"圃場DB(近農研サンプル).bak"を上書きしてしまいます(セットアップ先の同名ファイルなので)。その結果,作成したつもりのバックアップは失われてしまい,バックアップの意味をなさなくなってしまいます。

 システムを導入するフォルダ以外,または,ファイル名が"圃場DB(近農研サンプル).bak"以外であれば,この問題は生じません。

 

主要なデータテーブル構造

 "圃場DB"には,初期設定プログラムで登録される管理ファイル毎に,基本情報(マスタデータ)台帳情報が登録されます。また,管理ファイル自体も"圃場DB"内に登録されています。

 「管理ファイル」という名前から,Windows OS上での「ファイル」を連想するかも知れませんが,「作業計画・管理支援システム」の「管理ファイル」は"圃場DB"内での仮想的なファイルであって,Windows OS上のような「ファイル」ではありません。実際,データベース内の一テーブルにおいて管理されています。

 一つの「管理ファイル」(実体はデータベース内の複数のテーブルにおいて共通の管理ファイルコードを所有するレコード群)において,基本情報と台帳情報が,複数のテーブルに分かれて登録されています。大凡の構造(抜粋)は以下のようになっています。

圃場DB仕様(抜粋)
"圃場DB"の主要テーブル(抜粋)

 

テーブル一覧

 Management Studio Express で表示した圃場DBのテーブル一覧は以下のようになっています(ビルド10316)。

テーブル一覧図
Management Studio で表示したテーブル一覧です。
"圃場DB"の全テーブル (ビルド10316)

 この内,主要なテーブルの用途は以下のとおりです(v1.51,ビルド10316)。

テーブル名 名称 用途・目的
S_Manager システム情報 システムのオーナ・経営体識別情報を登録します
S_Users ユーザ情報 システムのユーザ(操作オペレータ)情報を登録します
S_Accounts 口座一覧情報 オーナ・経営体の資金管理口座一覧情報を登録します
F_RASTER 背景ラスタファイル 背景イメージファイルを登録します
F_VECTOR 背景ベクタファイル 背景ベクトルファイルを登録します
M_BOJO 防除設計マスタ 防除設計情報を登録します
M_BOJO_ITEM 農薬使用マスタ 防除設計ごとの農薬使用リストを登録します
M_COLOR 表示色マスタ 台帳データを圃場図に着色表示する際の色を登録します
M_COMMIT 受託作業マスタ 受託作業内容を登録します
M_CROP 作物マスタ 作物情報(品目・品種名,他)を登録します
M_CROPTYPE 作型マスタ 作型情報を登録します
M_CROPTYPE_WORK 作型作業体系マスタ 作型の作業体系(作業一覧)情報を登録します
M_HINS 品質項目マスタ 品質管理項目を登録します
M_HIRYO 肥料マスタ 肥料情報を登録します
M_IRRG 水域マスタ 水利管理に必要な水域情報を登録します
M_IRRGTIME 配水マスタ 配水時間のマスタパターンを登録します
M_KAMOKU 科目マスタ 科目情報を登録します
M_KAMOKU_BUNRUI 科目分類マスタ 科目分類情報(科目の大分類)を登録します
M_KAMOKU_HOJYO 補助科目マスタ 補助科目情報を登録します
M_KOSAKU 利用権・小作マスタ 利用権設定期間・料金ランクを登録します
M_KOUMOKU1 入力項目1マスタ 台帳登録項目情報を登録します
M_KOUMOKU2 入力項目2マスタ 台帳登録項目ごとの選択肢情報を登録します
M_MACHINE 機材マスタ 機材情報を登録します
M_MOKUHYO 土壌管理項目マスタ 作物ごとの土壌管理項目(土壌成分目標値)情報を登録します
M_NOUKA 農家マスタ 農家情報を登録します
M_NOUKA_BUNRUI 農家分類 地主,取引先,顧客などのメンバ分類情報を登録します
M_NOUKA_GROUP 農家グループ 農家分類ごとの属性(システム機能)情報を登録します
M_NOUYAKU 農薬マスタ 農薬情報を登録します
M_OPERE 作業者マスタ 作業者(オペレータ)情報を登録します
M_SEHI 施肥設計マスタ 施肥設計情報を登録します
M_SEIIKU 生育項目マスタ 生育管理項目情報を登録します
M_SEIIKU_ITEM 生育選択マスタ 生育管理選択肢項目情報を登録します
M_SHIZAI 資材マスタ 種子・種苗などの肥料・農薬以外の資材を登録します
M_SHOHIN 商品マスタ 製品化された出荷可能な商品情報を登録します
M_SHUBYO 種苗マスタ 種苗情報を登録します
M_SHUBYO_NOUYAKU 種苗農薬マスタ 種苗農薬情報を登録します
M_SHUKKA 出荷形態マスタ 出荷形態項目を登録します
M_SOUKO 倉庫マスタ 在庫管理用の保管場所情報を登録します
M_TEISYU 低収要因マスタ 低収となった要因項目を登録します
M_THIKU 地区名マスタ 農家・圃場が所属する地区名(大字など)を登録します
M_THIKU2 地区詳細マスタ 地区に従属する細部地区名(大字に対する小字など)を登録します
M_TIME 作業時間マスタ 作物別旬別の作業時間情報を登録します
M_WEED 雑草マスタ 雑草情報を登録します
M_WEED_CHEM 雑草農薬マスタ 雑草適用農薬情報を登録します
M_WORK 作業マスタ 作業情報を登録します
M_WORK_BUNRUI 作業分類 内容ごと,シーズンごとなどの作業分類情報を登録します
M_WORK_MACH 作業機材 作業ごとに使用される主要機材情報を登録します
M_システム 生育予測マスタ Web生育予測に使用するパラメータを登録します
M_家族 家族マスタ 家族情報を登録します
M_会社情報 会社マスタ 会社情報を登録します
M_管理マスタ 給与・資産管理マスタ KVS形式の給与・資産管理項目情報を登録します
M_給与区分 給与区分マスタ 給与区分情報を登録します
M_計算式 給与計算式マスタ 給与計算に使用する計算式を登録します
M_健康保険料額表 健康保険料マスタ 各種健康保険料掛け金情報を登録します
M_減価率表 減価率マスタ 減価率情報を登録します
M_所得税額表 所得税マスタ 所得(給与)に対する税額情報を登録します
M_所得税賞与表 賞与所得税マスタ 賞与に対する税額情報を登録します
M_償却率表 償却率マスタ 償却率情報を登録します
T_BLOCKID 管理ファイルコード 現在選択されている管理ファイルコードを登録します
T_DATAFIL 管理ファイル 管理ファイルを登録します
T_DOJ_DY 土壌台帳 土壌台帳データ(土壌成分値)を登録します
T_HIN_DY 品質台帳 品質台帳データ(米の品質値)を登録します
T_HOD 圃場地図ファイル 管理ファイル毎の圃場地図(圃場図,基盤図,農家図)を登録します
T_IRRG 水利台帳 水利(配水日程)データを登録します
T_ITA_DY 受託作業台帳 受託作業台帳データを登録します
T_ITA_MAC_DY 受託作業使用機材台帳 受託作業での機材使用情報を登録します
T_ITA_MAT_DY 受託作業使用資材台帳 受託作業での生産資材使用情報を登録します
T_ITA_WRK_DY 受託作業追加作業者台帳 受託作業での追加作業者(2人目以降)情報を登録します
T_MFD4PMS MFDDB管理 MFD作業記録DBを登録します
T_PLAN_DY 栽培作業台帳 栽培作業台帳データ(作業計画・実績)を登録します
T_PLAN_MAC_DY 追加機材台帳 2台目以降の使用機材を登録します(上限なし)
T_PLAN_MAT_DY 追加資材台帳 3個目以降の肥料・農薬・資材使用を登録します(上限なし)
T_PLAN_WORKER_DY 追加作業者台帳 3人目以降の作業者を登録します(上限なし)
T_REG_NO 登録番号管理テーブル 各台帳のレコード管理番号最大値を登録します
T_SAKU_DY 作付台帳 作付台帳データを登録します
T_SEI_DY 生育要因台帳 生育状況データを登録します
T_SEIIKU_DY 生育台帳 生育管理項目の日々データを登録します
T_SEIIKU_NOTE_DY 生育野帳台帳 生育記録集計野帳データを登録します
T_SEIS_DY 生産出荷台帳 生産出荷台帳(生産ロット)データを登録します
T_SEIS_HIN_DY 生産品質台帳 生産出荷時品質データを登録します
T_SEIS_MAC_DY 生産機材台帳 生産出荷時使用機材を登録します
T_SEIS_PRD_DY 生産出荷製品台帳 出荷可能な製品(出荷形態)を登録します
T_SEIS_PRD_CODE_DY 生産出荷製品個別台帳 出荷可能な製品の個別コードを登録します
T_SEIS_ROW_DY 生産圃場台帳 生産出荷由来の圃場またはロット情報を登録します
T_SEIS_SHP_DY 出荷台帳 製品の出荷状況を登録します
T_SEIS_SHP_CODE_DY 生産出荷製品出荷台帳 出荷された製品の個別出荷コードを登録します
T_SEIS_WRK_DY 生産出荷作業台帳 生産出荷工程の作業実績情報を登録します
T_TO_DY 土地台帳 土地台帳データ(圃場の基本情報)を登録します
T_TOU_DY 施用台帳 土壌台帳に基づく施肥設計データを登録します
T_WEED_DY 雑草台帳 雑草台帳データを登録します
T_WEEDS_DY 雑草詳細台帳 雑草詳細管理データを登録します
T_WorkLog 作業一括登録履歴 作業一括登録履歴を記録します
T_WorkLog_MAC 上記機材登録履歴 作業一括登録履歴(うち機材使用)を記録します
T_WorkLog_MAT 上記資材登録履歴 作業一括登録履歴(うち資材使用)を記録します
T_WorkLog_ROW 上記登録圃場履歴 作業一括登録履歴(うち対象圃場一覧)を記録します
T_WorkLog_WRK 上記作業者登録履歴 作業一括登録履歴(うち作業者使用)を記録します
T_給与台帳 給与台帳 従業員(作業者)の給与データを登録します
T_減価償却 資産台帳 資産(機械・施設など)の減価償却データを登録します
更新項目表   (給与管理用)
項目表   (給与管理用)
項目表関連テーブル情報表   (給与管理用)
項目表名称表   (給与管理用)
在庫マスタ 在庫マスタ 生産資材・商品(製品)の在庫情報を登録します
条件表   (給与管理用)
条件名称表   (給与管理用)
生産費作業科目 生産費作業一覧 農水生産費調査が対象とする作業一覧
生産費作物 生産費作物一覧 農水生産費調査が対象とする作物一覧
棚卸明細 棚卸明細 棚卸明細情報を登録します
伝票番号テーブル 伝票番号テーブル 伝票番号を登録します
動作表   (給与管理用)
動作名称表   (給与管理用)
入出庫入力 入出庫入力 入庫・出庫伝票情報を登録します
入出庫明細 入出庫明細 入出庫の明細内容を登録します
用語表 用語テーブル 給与管理に使用する用語を登録します

 各テーブルの構造(スキーム),機能,利用目的などについては,.NET版ユーザガイド(「圃場DBクエリガイド」)の付録をご参照下さい。

 

圃場DBのバックアップ・リストア

 "圃場DB"をはじめとするSQLデータベースを直接的に管理するには,"Management Studio Express"が便利です。SQL Server 2005 〜 2014 Express に対応しています。また,コマンドラインツールとしては"sqlcmd.exe"があります。

※ 使用するSQLサーバのもっとも新しいバージョン(ファミリー)にあわせてManagement Studioを使用してください。たとえば,SQL Server 2005,2008,2012 の3つのファミリーバージョンを使用している場合はManagement Studio は2012バージョンを使用します。後でSQL Server 2014 を追加した場合はManagement Studioも2014バージョンに更新することを推奨します(新しいバージョンのサーバに対する管理機能を正常に活用するため)。

 

◆ Management Studio Express によるバックアップ・リストア

 最初に,Management Studio Express を起動し,SQL Server インスタンスに接続します。その後,データベースツリーを開いて"圃場DB"データベースを選択し,以下のようにショートカットメニューからバックアップ・リストア作業を行います。

 なお,必要に応じて,オプション画面では,上書きする/しない(追加)の設定をします。デフォルトでは,指定したバックアップデバイスまたはファイルに対して,追加するモードでバックアップを行うので,一つのデバイスまたはファイルにバックアップが累積(追加)されていきます。復元時には,複数のバックアップの中から復元するバックアップを選ぶことができます。これに対し,上書きモードを指定すると,指定したバックアップデバイスまたはファイル内の既存のバックアップ(もしあれば)はすべて削除され,最新のバックアップのみが保存されます。目的に応じて使い分けることができます。

 また,バックアップ・リストアする際の,バックアップファイルのアクセス権やバックアップファイルを保存するディレクトリのアクセス権などにも注意して下さい。特に,一般ユーザ権限で,バックアップ・リストアを行う場合は保存先ディレクトリによっては,権限不足で,バックアップ・リストアに失敗する場合もあります。

バックアップメニュー選択画面
Management Studio でバックアップメニューを選択...

バックアップ設定画面
「データベースのバックアップ」ダイアログで,保存ファイル名などのバックアップ条件を設定し,実行します。
バックアップ先にシステム導入フォルダ内の"圃場DB(近農研サンプル).bak"は指定してはいけません!
"圃場DB"のバックアップ
 
リストア(復元)メニューの選択画面
リストア(復元)メニューを選択

リストア条件設定画面
「データベースの復元」ダイアログで,リストア条件を設定し,リストアを実行します。
"圃場DB"のリストア(復元)
◆ sqlcmd.exe によるバックアップ・リストア

 コマンドラインツールを用いた T-SQL コマンドによるバックアップ・リストアは,以下のようになります。詳細は,SQL Server Books Online ドキュメントを参照してください。

 sqlcmd.exeを起動し,SQL Server に接続した後,以下の T-SQL コマンドを発行します。

バックアップ
backup database [圃場DB] to disk='保存ファイル名'
リストア
restore database [圃場DB] from disk='保存ファイル名'

 ここで,'保存ファイル名'は,圃場DBのバックアップを保存する,または保存しているファイル名(フルパス)を,シングルクォーテーション(')で囲って指定します。

◆ 再セットアップ時の注意

 作業計画・管理支援システムのセットアッププログラムで「完全インストール」を実行した場合に,SQLサーバのデータフォルダ内に圃場DBの実体ファイルが存在していると,圃場DBのセットアップをスキップします。この後,Management StudioでSQLサーバ上に「圃場DB」が登録されているか否かを確認し,登録されていない場合は,圃場DB実体ファイルを圃場DBにアタッチしてSQLサーバに「圃場DB」を登録してください。

 

(C) 2007-11 DSS(LAIS) WeNARC, 2011-15 AGinfo NARO (AgSys-IT NARC), 2021 AGinfo RCAIT/NARO

2021.05