SHOEISHA iD

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

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

現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(Forguncy)(AD)

業務アプリ開発者が見る、ExcelからWebアプリを作成する「Forguncy」の可能性

数百万円のシステムを、一人の担当者がノンプログラミングで作成する

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

カスタムWeb APIを利用したサンプル

 実際に、カスタムWeb APIを利用して他のサービスと連携するサンプルを作成しました。連携サービス「IFTTT」と、体重計「Withings」使い、体重計で計測すると体重のデータがForguncyで作成したアプリケーションへ送信される仕組みを構築しました。コードを書いたのはカスタムWeb APIでの数行のみで、構築にはわずか数十分で済みました。ここでは、簡単に概要を説明します。

図26 サンプル体重管理の概要
図26 サンプル体重管理の概要

 先述のように、HTTPリクエスト内容からテーブルデータを作成するカスタムWeb APIのクラスを作成します。

カスタムWeb APIを定義しているWeightApiクラスのコード
using GrapeCity.Forguncy.ServerApi;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;

namespace ClassLibrary1
{
public class WeightApi : ForguncyApi
  {
    //体重をリクエスト内容から作成します
    [Post]
    public void PostWeightRecord()
    {
      var reader = new StreamReader(Context.Request.Body);
      //リクエストをDictionaryに変換します
      var request = JsonConvert.DeserializeObject<Dictionary<string, object>>(reader.ReadToEnd());
      //現在の日付をフィールドに追加します
      request.Add("Date", DateTime.UtcNow.AddHours(9));

      this.DataAccess.AddTableData(tableName: "体重", newValues: request);
    }
  }
}

 Forguncy Builderに作成したカスタムWeb APIを登録します。続いて、体重一覧を表示するアプリケーションを作成し、Forguncy Serverに発行します。作成したアプリケーションは図27のように、一覧表とグラフのみを表示したものです。

図27 【ブラウザー】Forguncyで体重一覧を表示するアプリケーションを作成し、ブラウザーから表示
図27 【ブラウザー】Forguncyで体重一覧を表示するアプリケーションを作成し、ブラウザーから表示

 次に、IFTTTサービスのダッシュボードにて、「Withingsで体重を計ったらWebRequestを送信する」というコマンドを作成します。WebRequestの内容は、図28のように、先ほど作成したカスタムWeb APIにアクセスするものです。

図28 IFTTTにて送信するHTTPリクエストの内容を設定している様子
図28 IFTTTにて送信するHTTPリクエストの内容を設定している様子

 簡単な説明ですが、以上で体重計にのるとWebアプリケーションから体重を確認できるようになります。カスタムWeb API以外はノンプログラミングで短時間で構築できます。

まとめ

 Forguncyは、「Excel方眼紙」というキーワードに注目されがちですが、筆者はForguncyによって、「通常は数百万円かかるようなシステムを、発注者自らが構築できる可能性」があると感じています。本稿ではそれを実現する3つのポイントを説明しました。Forguncyの良いところは、Excelの機能とWebアプリケーションの良いところをうまく組み合わせて、業務アプリケーションをノンプログラミングで作成できる点です。また、ノンプログラミングだけではなく高度な開発により他のサービスとの連携も可能です。普段Excelを使って業務を担当している方がプロジェクトをリードし、システム開発はそれをサポートする、という体制が可能になるツールです。

 ご興味を持たれた方は、ぜひ評価版のForguncyをお試しください。出張申請など実用レベルな20以上のテンプレートが用意されています。また、イベントも随時開催されています。

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

  • X ポスト
  • このエントリーをはてなブックマークに追加
現役エンジニア直伝! 「現場」で使えるコンポーネント活用術(Forguncy)連載記事一覧

もっと読む

この記事の著者

矢後 比呂加(ヤゴ ヒロカ)

 Microsoft MVP for Visual Studio and Development Technologies(https://mvp.microsoft.com/ja-jp/PublicProfile/5000246) シグマコンサルティング株式会社にて、Microsoft Azure・ASP...

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

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

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

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/10323 2017/08/03 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

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

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

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

メールバックナンバー

アクセスランキング

アクセスランキング