Slide 1

Slide 1 text

Codeer.LowCode.Blazor & CData ADO .NET Provider でDynamics 365 やSAP 、 Salesforce など各種SaaS とアプリを連携し てみよう!

Slide 2

Slide 2 text

2 About Speaker – Kazuya Sugimoto © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE CData Software Japan の Lead Engineer これまで300種類以上のAPIを見たり触った りしているAPI中毒な人。 最近の趣味はTesla API で収集したデータの 可視化。 Twitter:@sugimomoto Facebook:sugimomoto Blog:https://www.cdatablog.jp/

Slide 3

Slide 3 text

3 本社:US(NC州), オフィス:日本 / 欧州 / インド / 中国 エンタープライズ・開発者・データサイエンティスト向けの “real-time data connectivity” ソフトウェアのリーダー 日本法人 : CData Software Japan 合同会社 本社:宮城県仙台市 設立:2016/06 〜 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE CData Software EMPLOYEES 400+ ACTIVE CUSTOMERS 10,000+ OEM PARTNERS 180+

Slide 4

Slide 4 text

本日のお伝えしたいこと

Slide 5

Slide 5 text

5 本日の皆さんにお伝えしたいこと © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE For Generative AI & LowCode/NoCode, Metadata is All You Need Codeer.LowCode.Blazor & CData ADO .NET Provider の連携が効果を 発揮する理由とは?

Slide 6

Slide 6 text

6 データ活用の背景 “情報システム部門におけるデータ連携ニーズの増加” © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE ワークフローツール で商品や従業員のマ スタデータを扱って 「ビジネスプロセス を合理化したい」 顧客向けの商品紹介 アプリを作って「顧 客接点を増やした い」 過去の受注データを 元にして、BIツール でダッシュボードを 作成・AIで分析をか けて「商品や顧客分 析を実施したい」 SFAから基幹システ ムの持っている在庫 や契約データをシー ムレスに参照し、 「営業プロセスを効 率化したい」

Slide 7

Slide 7 text

7 必要なデータはどこにある? © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE しかしそれらの連携に求められるデータは基幹システム・SaaS 等に格納されている 顧客体験を向上するためにアプリケーションを構築しようとすると、 商品や顧客などのマスターデータ、購買の情報、見積り、請求などのトランザクションデータも必要 BtoB取引のための WebSiteを作りた い! 商品・顧客マスタ 購買・見積・請求な どのトランザクショ ン

Slide 8

Slide 8 text

8 数多くのSaaSに私達のビジネスデータが存在している © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE 1企業あたりのSaaSアプリ利用数が急増 業種(Vertical)・業務(Horizontal)特化型SaaSの登場 (種類:多, 導入社数:少)

Slide 9

Slide 9 text

そして、それぞれの連携のためにAPI がより重要に © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 10

Slide 10 text

10 インターフェースそれぞれの特性を理解し、 キャッチアップしなければデータ活用に到達できない © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE Protocols Data Model Metadata Authentication Capabilities SOAP REST OData Static Dynamics Hybrid Relational NoSQL Raw Stores Basic API Token OAuth Filter Aggregations Joins

Slide 11

Slide 11 text

11 Codeer × CData の組み合わせにより SaaS API 連携アプリ開発を加速! © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 12

Slide 12 text

CData ADO.NET Provider とは?

Slide 13

Slide 13 text

13 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE CData Drivers あらゆるデータに標準SQL でのリアルタイム接続を可能にする高機能・高品質データコネクタ データソース ツールのマシンにコネクタ (CData Driver)を追加 ツール 標準 SQL API リクエスト テーブル API レスポンス CData Driver ODBC Driver / JDBC Driver / ADO.NET Provider / Python Connector / Excel Add-In / SSIS Components / Power BI Connector / Tableau Connector SaaSやオンプレミスアプリケーション, データ ベース, ファイルなど270を超えるデータソース

Slide 14

Slide 14 text

14 サポートされているデータソース © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE 業界最多級の270を超える様々なデータソース Marketing CRM & ERP Collaboration Big Data & NoSQL File & API Accounting E-Commerce RDBMS

Slide 15

Slide 15 text

15 サポートされているデータソース © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE Drivers Profiles and more… 人気の国産サービス/アプリケーションにも対応

Slide 16

Slide 16 text

16 CData Driver のコアバリューとは? © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE Standard Metadata

Slide 17

Slide 17 text

CData ADO.NET Provider の使い方から Standard とMetadata の価値に迫る

Slide 18

Slide 18 text

18 CData 製品の実態はDLL © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE • .NET Framework 4.0 以上およ び.NET Standard 2.0 をサポー トしているDLLセット • ネイティブADO.NET インター フェースを使用して、SaaS APIのデータ操作をSQLで実行 可能に • EntityFramework用、 VisualStudio 向けインストー ラーも付属

Slide 19

Slide 19 text

19 SQL Server に接続するような形で サーバー エクスプローラーから手軽にクエリ可能 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 20

Slide 20 text

20 ADO.NET ベースなので、通常のSQL Server 接続と 同じエクスペリエンスでSaaS API にアクセス © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE public IEnumerable GetAccounts() { var accounts = new List(); using (var conn = new SalesforceConnection("AuthScheme=Basic;User=XXXXX;")) { conn.Open(); var cmd = new SalesforceCommand("SELECT Name, Industry, Phone FROM Account", conn); using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { accounts.Add(new Account { Name = reader["Name"].ToString(), Industry = reader["Industry"].ToString(), Phone = reader["Phone"].ToString() }); } } } return accounts; } • DataAdapter・DataReader・EF 他、ADO.NETに依存したオー プンソースのORM Dapper な どからも利用可能 • SELECT だけでなく、 INSERT・UPDATE・DELETE も可能(ただし、利用するAPI によってできることは異な る) • 認証方法はConnection String 形式で共通化

Slide 21

Slide 21 text

21 各API の仕様に基づいて テーブル・ビュー・カラムのメタデータ検出もサポート © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 22

Slide 22 text

22 .NET Standard サポートのため、 もちろんBlazor からも利用可能! © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 23

Slide 23 text

23 この「Standard」「Metadata」により GitHub Copliot との組み合わせも効果的に © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 24

Slide 24 text

24 “Kauzya Sugimoto”,19870722 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE データはそれだけでは意味をなさない

Slide 25

Slide 25 text

25 File Access, API, Web API, TDS, ADO.NET © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE メタデータとデータアクセスが できて活用につなげることができる 姓・名 文字列 誕生日 日付 YYYYMMDD “Kauzya Sugimoto”,19870722

Slide 26

Slide 26 text

Codeer.LowCode.Blazor & CData ADO .NET Provider

Slide 27

Slide 27 text

27 Codeer.LowCode.Blazor & CData ADO .NET Provider © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE • Codeer.LowCode.Blazor はデー タベースアクセス機能があり、 ADO.NET を利用している • このデータベースアクセス機 能にCData ADO.NET Provider の設定を拡張させることで、 手軽にクラウドサービス連携 アプリの開発が可能に! • UIの作成はCodeer のデザイ ナー画面がそのまま利用可能

Slide 28

Slide 28 text

28 設定方法①:Driverインストール・Project への追加 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 29

Slide 29 text

29 設定方法②:DbAccessor の拡張 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE switch (dataSource.DataSourceType) { case DataSourceType.SQLServer: conn = dataSourceName.Contains("CData") ? new SAPGatewayConnection(dataSource.ConnectionString) : new SqlConnection(dataSource.ConnectionString); break; case DataSourceType.PostgreSQL: conn = new NpgsqlConnection(dataSource.ConnectionString); break; case DataSourceType.Oracle: conn = new OracleConnection(dataSource.ConnectionString); break; case DataSourceType.SQLite: conn = new SQLiteConnection(dataSource.ConnectionString); break; default: throw LowCodeException.Create("Invalid data source"); } public async Task?> GetCustomTableDefinitionsAsync(string dataSourceName) { var conn = GetConnection(dataSourceName); var columnTable = await conn.GetSchemaAsync("Columns"); var ret = columnTable.Rows.Cast() .Select(r => new { TableName = r["TABLE_NAME"].ToString() ?? "", ColumnName = r["COLUMN_NAME"].ToString() ?? "", RawDbTypeName = r["DATA_TYPE"].ToString() ?? "", IsNullable = (r["IS_NULLABLE"].ToString() ?? "").ToLower() == "yes" }).GroupBy(r => r.TableName) .Select(g => new DbTableDefinition { Name = g.Key, Columns = g.Select(gg => new DbColumnDefinition { Name = gg.ColumnName, RawDbTypeName = gg.RawDbTypeName, IsNullable = gg.IsNullable }).ToList() }).ToList(); return ret; }

Slide 30

Slide 30 text

30 設定方法③:appsettings に設定の追加 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 31

Slide 31 text

31 設定方法④:デザイナー appsettings にも設定の追加 © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 32

Slide 32 text

32 あとはデザイナーを使ってアプリを作るだけ! © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE

Slide 33

Slide 33 text

おわりに

Slide 34

Slide 34 text

34 本日の皆さんにお伝えしたいこと © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE For Generative AI & LowCode/NoCode, Metadata is All You Need Codeer.LowCode.Blazor & CData ADO .NET Provider の連携が効果を 発揮する理由とは?

Slide 35

Slide 35 text

35 CData Driver のコアバリューとは? © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE Standard Metadata

Slide 36

Slide 36 text

36 ぜひCodeer × CData の組み合わせで SaaS API 連携アプリ開発を加速させてください! © 2024 CData Software Inc. — CONFIDENTIAL – DO NOT DUPLICATE OR DISTRIBUTE