CSVデータを追加・修正します

データ表を使ってCSVデータを追加・修正します。CSV型データはエクセルや売上、会計などのソフトでそのまま読み込めるので使えると便利です。

プロデルではデータ表という表形式のコンポーネントが用意されているのでそのままデータを追加したり修正することが出来るようになります。前回作成したプログラムの画面に保存するためのボタンを追加します。

前今回はメイン画面にボタンを追加してデータを追加して保存できるようにします。

-----ここから

データというデータ表を作る
データに{「名前」、「年齢」 、「住所」 、「メモ」}という列を加える
データへ「年齢表.CSV」から読み込む

メイン画面を表示する
待機する

メイン画面とは
  ウィンドウを継承する
  
  はじめの手順
    初期化する
    表部品1のデータ表をデータに変える
  終わり
  初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
この実質大きさを{477,329}に変える
この内容を「表部品のテスト」に変える
このドラッグドロップを○に変える
初期化開始する
ボタン1というボタンを作る
その位置と大きさを{404,293,61,24}に変える
その内容を「ボタン1」に変える
その移動順を3に変える
表部品1という表部品を作る
表部品1を初期化開始する
その位置と大きさを{12,12,453,271}に変える
その移動順を2に変える
その位置固定方向を「右+左+下+上」に変える
表部品1を初期化終了する
初期化終了する
終わり

  開いた時の手順
    行一覧は、表部品1の行一覧
    番号を1から表部品1の行数まで増やしながら繰り返す
      もし行一覧(番号)の新しいなら、繰り返しを続ける
      行一覧(番号)の見出しは、番号
    繰り返し終わり
  終わり

ボタン1がクリックされた時の手順
データを「年齢表.CSV」へ保存する
終わり

終わり

-----ここまで

今回作成したサンプルを鵜退かしてみました。

CSVファイルを部品表に読み込む

プロデルの表部品の中にある表部品のサンプルプログラムに手を加えて CSVファイルの内容を読み込むように変えます。読み込むファイルは前回使用した 「年齢表.CSV」 です。

プロデルのサンプルにある表部品のサンプルをファイル読み込みに変更します。

---ここから

データというデータ表を作る
データに{「名前」、「年齢」 、「住所」 、「メモ」}という列を加える
データへ「年齢表.CSV」から読み込む

メイン画面を表示する
待機する

メイン画面とは
  ウィンドウを継承する
  
  はじめの手順
    初期化する
    表部品1のデータ表をデータに変える
  終わり
  初期化する手順
ーー自動生成された手順です。ここにプログラムを書き加えても消える場合があります
この内部領域大きさを{442、258}に変える
この内容を「表部品のテスト」に変える
このドラッグドロップを○に変える
表部品1という表部品を作る
表部品1を初期化開始する
その位置と大きさを{12、12、418、234}に変える
その移動順を2に変える
その位置固定方向を「右+左+下+上」に変える
表部品1を初期化終了する
  終わり

  開いた時の手順
    行一覧は、表部品1の行一覧
    番号を1から表部品1の行数まで増やしながら繰り返す
      もし行一覧(番号)の新しいなら、繰り返しを続ける
      行一覧(番号)の見出しは、番号
    繰り返し終わり
  終わり
終わり

―--ここまで

実行するとこんな感じになります。

プロデルでCSVファイルを読み込みます。

プロデルでCSVファイルを読み込みます。

プロデルのサンプルにあるCSVファイルの読み混みを少しだけいじりました。

前提条件として「年齢表」という名前のCSVファイルを作ります。

プロデルのサンプルにある「data.csv」の名前を変えて作ったものです。住所を追加してみましたが内容はそのままでも構いません。

name,age,add,else
山田次郎,56 , ,
河野雄太,82 , ,
高橋裕香,52 , ,
佐藤美里,90 , ,

サンプルプログラム( 年齢表.CSV と同じフォルダに保存してください。)


---ここから

デ ータ表を作ってデータとする
データへ「年齢表.CSV」から読み込む
データの一覧のすべての【行要素】についてそれぞれ繰り返す
行要素を{名前,年齢,住所}とみなす
「お名前は、[名前]さんです。年齢は[年齢]歳です」を報告する
 繰り返し終わり

―--ここまで

行要素の3つに {名前,年齢,住所} という変数名を付けます。

実行するとこのような結果が得られます。