プロデル、調査 その15

# 概要
プロデルが、CLRらしいので、調べて見た。
練習問題やってみた。

# 練習問題
xmlで、CRUDせよ。

# 写真

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18104/7f5eca8a-c5e7-40aa-995a-3a090b61eb9b.png)

# サンプルコード

```

プログラムのタイトルは「品目管理」
品目管理画面を表示する
待機

品目管理画面とは
	+編集中番号
	ウィンドウを継承する
	はじめの手順
		初期化する
		品目管理が品目一覧へ列挙する
	終わり
	初期化する手順
	ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
		この実質大きさを｛531,412｝に変える
		この種類を「固定」に変える
		この最大化ボタンを×に変える
		この最小化ボタンを×に変える
		この初期位置を「中央」に変える
		この内容を「品目管理画面」に変える
		このドラッグドロップを○に変える
		この間隔を｛4｝に変える
		初期化開始する
		名称欄というテキストを作る
			その位置と大きさを｛120,218,148,25｝に変える
			その間隔を｛4｝に変える
		色欄というテキストを作る
			その位置と大きさを｛120,255,148,25｝に変える
			その移動順を1に変える
			その間隔を｛4｝に変える
		単価欄というテキストを作る
			その位置と大きさを｛120,292,148,25｝に変える
			その移動順を2に変える
			その間隔を｛4｝に変える
		単価ラベルというラベルを作る
			その位置と大きさを｛22,295,44,18｝に変える
			その内容を「単価」に変える
			その移動順を3に変える
			その間隔を｛4,0,4,0｝に変える
		色ラベルというラベルを作る
			その位置と大きさを｛22,258,26,18｝に変える
			その内容を「色」に変える
			その移動順を4に変える
			その間隔を｛4,0,4,0｝に変える
		名称ラベルというラベルを作る
			その位置と大きさを｛22,221,44,18｝に変える
			その内容を「名称」に変える
			その移動順を5に変える
			その間隔を｛4,0,4,0｝に変える
		登録ボタンというボタンを作る
			その位置と大きさを｛36,360,112,34｝に変える
			その内容を「登録」に変える
			その移動順を6に変える
			その位置固定方向を「下+右」に変える
			その間隔を｛4｝に変える
		削除ボタンというボタンを作る
			その位置と大きさを｛158,360,112,34｝に変える
			その内容を「削除」に変える
			その移動順を7に変える
			その位置固定方向を「下+右」に変える
			その間隔を｛4｝に変える
		更新ボタンというボタンを作る
			その位置と大きさを｛279,360,112,34｝に変える
			その内容を「更新」に変える
			その移動順を8に変える
			その位置固定方向を「下+右」に変える
			その間隔を｛4｝に変える
		閉じるボタンというボタンを作る
			その位置と大きさを｛400,360,112,34｝に変える
			その内容を「閉じる」に変える
			その移動順を9に変える
			その位置固定方向を「下+右」に変える
			その間隔を｛4｝に変える
		品目一覧というリストビューを作る
			その位置と大きさを｛21,18,490,174｝に変える
			その表示方法を「詳細」に変える
			その全列選択を○に変える
			その見出し一覧を｛「名称」,「色」,「単価」,「備考」｝に変える
			その見出し幅を｛149,60,69,169｝に変える
			その複数選択を×に変える
			その移動順を10に変える
			その間隔を｛4｝に変える
		初期化終了する
		この設計スケール比率を｛144,144｝に変える
		この取消ボタンを閉じるボタンに変える
終わり
	登録ボタンがクリックされた時の手順
		新規品目という品目を作る
		新規品目の名称は、名称欄の内容
		新規品目の色は、色欄の内容
		新規品目の単価は、単価欄の内容
		品目管理へ新規品目を追加する
		品目管理が品目一覧へ列挙する
		名称欄の内容は「」
		色欄の内容は「」
		単価欄の内容は「」
	終わり
	更新ボタンがクリックされた時の手順
		編集中在庫は、品目管理から編集中番号を取得する
		編集中在庫の名称は、名称欄の内容
		編集中在庫の色は、色欄の内容
		編集中在庫の単価は、単価欄の内容
		品目管理で編集中番号を編集中在庫へ変更する
		品目管理が品目一覧へ列挙する
		//「ok2」を、表示する		
	終わり
	削除ボタンがクリックされた時の手順
		「削除してもよろしいですか」を「はいといいえ」で質問したものが「はい」なら
			品目管理から品目一覧の選択番号を削除する
			品目管理が品目一覧へ列挙する
		そして
	終わり
	閉じるボタンがクリックされた時の手順
		閉じる
	終わり
	品目一覧がダブルクリックされた時の手順	
		//品目一覧の選択内容を表示する
		//品目一覧の選択番号を表示する
		編集中番号は、品目一覧の選択番号
		編集中在庫は、品目管理から品目一覧の選択番号を取得する
		名称欄の内容は、編集中在庫の名称
		色欄の内容は、編集中在庫の色
		単価欄の内容は、編集中在庫の単価
	終わり
終わり

品目管理とは
	+品目一覧 =｛｝
	品目ファイルは「在庫管理-品目.xml」
	はじめの手順
		品目ファイルというファイルが存在するなら
			品目ファイルからXMLとして読み込んで品目データとする
			データは、品目データから「在庫管理\品目」を取得する
			データのすべてのこうもくについてそれぞれ繰り返す
				ひんもくという品目を作る
				ひんもくの名称は、こうもくから「名称」という属性を得たものの内容
				ひんもくの色は、こうもくから「色」という属性を得たものの内容
				ひんもくの単価は、こうもくから「単価」という属性を得たものの内容
				ひんもくの備考は、こうもくから「備考」という属性を得たものの内容
				ひんもくを品目一覧へ加える
			そして
		そうでなければ
			品目データというXML文章を作る
			品目データへ「在庫管理」という要素を作る
		そして
	終わり
	自分へ［品目］を、追加する手順
		品目一覧へ品目を加える
		保存する
	終わり
	自分で［番号］を［変更後の品目］へ、変更する手順
		品目一覧（番号）は、変更後の品目
		保存する
	終わり
	自分から［番号］を、削除する手順
		品目一覧は、品目一覧から番号を削除したもの
		保存する
	終わり
	自分が［追加先の欄］へ、列挙する手順
		追加先の欄をクリアする
		品目一覧をひんもくへそれぞれ繰り返す
			表示項目（1）は、ひんもくの名称
			表示項目（2）は、ひんもくの色
			表示項目（3）は、ひんもくの単価
			表示項目（4）は、ひんもくの備考
			追加先の欄へ表示項目を追加する
		そして
	終わり
	保存する手順
		品目データというXML文章を作る
		品目データへ「在庫管理」という要素を作る
		品目一覧をひんもくへそれぞれ繰り返す
			ようそは、品目データの「在庫管理」に「品目」という要素を作ったもの
			ようその「名称」という属性へひんもくの名称を設定する
			ようその「単価」という属性へひんもくの単価を設定する
			ようその「色」という属性へひんもくの色を設定する
			ようその「備考」という属性へひんもくの備考を設定する
		そして
		品目ファイルに品目データを保存する
	終わり
	［自分］から［品目名］を、取得する手順
		品目一覧（品目名）を返す
	終わり
	［自分］から、品目一覧を、取得する手順
		結果という配列を作る
		品目一覧をひんもくへそれぞれ繰り返す
			結果は、結果へひんもくの名称を追加したもの
		そして
		結果を返す
	終わり
終わり

品目とは
	+名称
	+単価
	+色
	+備考
終わり




```

以上。