SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

組み合わせの達人

組み合わせの達人-売上管理アプリケーションを作成してみよう

第1回 ComponentOne Studioを利用して簡単な売上管理アプリケーションを作成する

  • X ポスト
  • このエントリーをはてなブックマークに追加

画面の構成を考える

 ここで、今回作成するアプリケーションの内容を考えてみましょう。売上管理画面ということで、以下の項目が必要になりそうです。

  • 日付
  • 売上金額
  • 仕入金額(原価)
  • 粗利
  • 利益率

 それでは、5つの項目を表示する一覧表を作成していきます。

 まず、FlexGridを画面上にツールボックスから貼り付けてみましょう。

 このままだと、50行×10列の設定になっているので、必要な5列だけに設定します。貼り付けたFlexGridのプロパティウィンドウを開き、「Cols」→「Count」の項目を5に変更します。

入力制限を設定する

 次に、各列の入力制限の設定を行います。次に列キャプションを設定します。設定する列を選択し、スマートタグを表示することで簡単に設定できます。

 また、売上金額、仕入金額は数値のみの入力とするため、書式設定を行います。ダイアログボックスを表示し、形式の種類の項目で「通貨」を選択してください。

 粗利、粗利率については算出される項目なので、「編集を有効にする」のチェックを外してください。

 ではここで、実行してみましょう。売上金額と仕入金額の列が数値のみしか入力できないようになっています。また、その他の列は入力ができないようになっています。

 このように、簡単なプロパティの設定を行うだけで、入力規制や入力可否の設定を行うことができます。

入力内容から計算を行う

 では、粗利、粗利率について計算を行ってみましょう。FlexGridにAfterEditイベントを追加します。このイベントはセルの編集後に発生します。プログラム部分は以下のようになります。

double proceeds = this.c1FlexGrid1[e.Row, 1] == null
	? 0 : double.Parse(this.c1FlexGrid1[e.Row, 1].ToString());
double payments = this.c1FlexGrid1[e.Row, 2] == null
	? 0 : double.Parse(this.c1FlexGrid1[e.Row, 2].ToString());
double grossMargin = proceeds - payments;
this.c1FlexGrid1[e.Row, 3] = grossMargin;
this.c1FlexGrid1[e.Row, 4] = proceeds != 0 ? grossMargin / proceeds : 0;

 粗利金額を計算するために、売上金額、仕入金額の内容をdouble型に変換します。null値の場合は、0に変換しておきましょう。粗利は「売上金額-仕入金額」で求まります。また、「粗利率は粗利÷売上金額」になりますが、売上金額が0の場合が想定されるので、0の場合は粗利率も0に変換します。

 以上で売上金額、仕入金額を入力した後に粗利と粗利率を計算できます。

次のページ
日付の設定

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
組み合わせの達人連載記事一覧

もっと読む

この記事の著者

高山 昌悟(タカヤマ ショウゴ)

今までは主に、Windowsアプリケーションの開発を行ってきました。最近はWebアプリケーションの開発を行っています。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3118 2009/04/17 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング