ColdFusion で ODBC 経由のGoogle Calendar のデータをリアルタイムにインポートしてアプリケーションを構築

Dibyendu Datta
Dibyendu Datta
Lead Technology Evangelist
CData ODBC ドライバーを使って、ColdFusion でGoogle Calendar のデータ をインポート・活用。

Adobe ColdFusion は、Web およびモバイルアプリケーションの開発プラットフォームです。独自のスクリプト言語である ColdFusion Markup Language(CFML)を使用して、データ駆動型の Web サイトを作成したり、REST などのリモートサービスを生成したりできます。ColdFusion を CData ODBC Driver for Google Calendars と組み合わせることで、ColdFusion の Web およびモバイルアプリケーションとGoogle Calendar のライブデータを連携できます。これにより、アプリケーションをより堅牢で完全なものにすることができます。この記事では、ODBC ドライバーを使って、ColdFusion マークアップファイル内でGoogle Calendar のデータを取得してテーブルを作成する方法を説明します。

このチュートリアルを進めるには、CData ODBC Driver for Google Calendars と Adobe ColdFusion をインストールする必要があります。

接続の設定

まだ設定していない場合は、ODBC DSN(データソース名)で接続プロパティを指定します。これはドライバーインストールの最終ステップです。Microsoft ODBC データソースアドミニストレーターを使って ODBC DSN を作成・設定できます。

Google Calendar はOAuth 認証標準を利用しています。各ユーザー やドメイン内のユーザーの代わりに、CData 製品がGoogle API にアクセスすることを許可できます。 接続すると、CData 製品はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。CData 製品がOAuth プロセスを完了します。

詳細はヘルプドキュメントを参照してください。

データソースの追加とテーブルの作成

DSN を作成したら、以下の手順に従って、新しいデータソースを追加し、接続をテストし、ColdFusion マークアップファイルを作成し、最後にGoogle Calendar のデータをインポートして ColdFusion でテーブルに表示します。

  1. ColdFusion 管理インターフェースから、Data & Services を選択します。
  2. ここで「Add New Data Source」をクリックします。データソース名は、ColdFusion の変数命名規則に準拠していれば任意の名前で構いません。ODBC ドライバーの場合は「ODBC Socket」を選択し、「Add」ボタンをクリックします。
  3. ODBC DSN ドロップダウンメニューから CData Google Calendar Sys を選択します。Advanced Settings セクションでは、Connection String は空白のままにしておきます。なお、この入力フィールドで指定されたプロパティは、DSN 設定で指定されたものを上書きします。
  4. 次に、先ほど作成した CDataGoogle CalendarODBC データソースの左側にあるチェックマークを押して、接続をテストします。データソースが「OK」ステータスを報告したら、使用する準備ができています。
  5. 次に、新しい ColdFusion マークアップファイル(.cfm)を作成し、ColdFusion の wwwroot ディレクトリ(「C:\ColdFusion2021\cfusion\wwwroot」)に配置します。

    以下のコードでデータソースをクエリします:

              
          <cfquery name="Google CalendarQuery" dataSource="CDataGoogle CalendarODBC">
            SELECT * FROM VacationCalendar
          </cfquery>
      
    CFTable を使用すると、HTML でテーブルを簡単に出力できます:
              
            <cftable
            query = "Google CalendarQuery"
            border = "1"
            colHeaders
            colSpacing = "2"
            headerLines = "2"
            HTMLTable
            maxRows = "500"
            startRow = "1">
    
            <cfcol header="<b>Summary</b>" align="Left" width=2 text="Summary"/>
    
            <cfcol header="<b>StartDateTime</b>" align="Left" width=15 text="StartDateTime"/>
    
            ...
    
          </cftable>
      
    HTML 部分を含む完全なコードは以下のとおりです:
              
          <html>
          <head><title>CData Software | Google Calendar VacationCalendar Table Demo </title></head>
          <body>
          <cfoutput>#ucase("Google Calendar VacationCalendar Table Demo")#</cfoutput>
          <cfquery name="Google CalendarQuery" dataSource="CDataGoogle CalendarODBC">
    
            SELECT * FROM VacationCalendar
    
          </cfquery>
          <cftable
            query = "Google CalendarQuery"
            border = "1"
            colHeaders
            colSpacing = "2"
            headerLines = "2"
            HTMLTable
            maxRows = "500"
            startRow = "1">
            <cfcol header="<b>Summary</b>" align="Left" width=2 text="Summary"/>
    
            <cfcol header="<b>StartDateTime</b>" align="Left" width=15 text="StartDateTime"/>
    
            ...
    
          </cftable>
          </body>
    
          </html>
      
  6. 最後に、ブラウザでコードを実行します。Google Calendar のデータを含むテーブルが表示されます。

なお、CData ODBC ドライバーは cfqueryparam 要素を使用したパラメータ化クエリもサポートしています。例:

SELECT * FROM Account WHERE name =  

おわりに

CData ODBC Driver for Google Calendar の 30日間無償トライアルをダウンロードして、Adobe ColdFusion でGoogle Calendar 連携アプリケーションの構築を始めましょう。ご不明な点がございましたら、サポートチームまでお問い合わせください。

はじめる準備はできましたか?

Google Calendars ODBC Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Google Calendars Icon Google Calendars ODBC Driver お問い合わせ

Google Calendar ODBC Driver は、ODBC 接続をサポートするさまざまなアプリケーションからGoogle カレンダーのリアルタイムデータ連携を実現するパワフルなツールです.

データベースにアクセスするときと同感覚でGoogle カレンダーデータにアクセスし、標準ODBC Driver インターフェースを通じてCalendars、Events、Attendees、etc. にアクセス。