SlideShare a Scribd company logo
1 of 36
Download to read offline
Apps for Office
Excelアプリ開発の事例で見るバッドノウハウと回避策
山本 優
ピタリ株式会社
簡単だから活用できるクラウド販売管理
「セールスノート」
を提供しています。
ロープライス 基幹システム利用 カスタムがお得
ユーザー単位でなく会社単位課金 システム製作∼倉庫管理まで 細かなセミオーダーに対応
「E2D3」というExcelアプリの開発に
関わっています。
今日の内容
• Apps for Office開発の重要なポイント
• ハマるポイント5選
• 今後のアプリの可能性
Apps for Officeの
重要なポイント(Excelアプリ編)
• 開発環境の選択
• マニフェストファイルの注意点
• アプリで最も重要な要素「Bind(バインド)」
開発環境
JavaScriptアプリケーションなので、
なんでも良さそうですが。。。
開発環境
• アプリ上のエラーコンソールを見る唯一のツール
• ブレークポイントの設定
• Visual Studio Community(無料)
これまでのExpressでは出来なかったオフィスアプリの開発が可能に
マニフェストファイル
ドキュメントサイトの
サンプル
Visual Studioで
作成された
デフォルトサンプル
マニフェストファイルの
注意点
IDやバージョンの桁数は正しく
※間違っていると起動しません
※そもそも不要な項目もあります
アプリ申請時にどの
サンプルにも無い項目
を求められる
※リジェクト理由に書かれますので、
よく読みましょう。
バインドとは
任意の領域とそのデータの
オブジェクトセット
Bindオブジェクト
(固有のID(Bind ID)があります)
Bindオブジェクトを通じて、
⃝データ取得
⃝データ編集
実際の開発現場から
ありがちなハマるポイントと
対策をご紹介
ケース1:
アプリから
任意のセルを選択したい時
例えば・・・
⃝アプリからレイアウトを指定したい
⃝アプリからバインド領域を指定したい
⃝アプリから特定のセルの値を書き換えたい
できません
⃝「A1:C3」のように、特定のセルを指定することは出来ない。
⃝あくまでユーザーが選択したセル、セルの範囲に対して、アプ
リが干渉できる。
⃝「選択」「選択解除」という機能は無い
E2D3の場合
ユーザーに特定のセルを選択するよう案内
を出すことで対応したり、
欲しいデータ範囲(例えば「A1:H7」)分
の2次元配列を作成して、データを流し込
んだりしている。
空白セルやデータ削除は空文字で埋めることで、
データ書き換えやレイアウト生成を実装している。
テスト
array = [
[ , , , , , ],
[ , , , , , ],
[ , , , , テスト , ],
[ , , , , , ]
]
こんな感じ
注意!
ユーザーが任意のセルを選択中に、その範囲以
上のデータを挿入しようとするとエラー
array = [
[ , , , , , ],
[ , , , , , ],
[ , , , , テスト , ],
[ , , , , , ]
]
データ範囲が違うと怒られます
適切な案内をしましょう。
ケース2:
バインド領域を動的に
変更したい
例えば・・・
⃝外部連携アプリから取得したデータをイ
ンタラクティブに反映する
⃝動的にレイアウトを変更する
でき、、、なくはない
E2D3の場合、グラフ毎に異なるサンプルデータがある
最初のバインド領域分の
データを削除
バインド領域を破棄
新しいバインド領域分の
配列を挿入
新規にバインド領域(オブジェ
クト)を生成
注意!
同じBind-IDで再度作り替えた場合
Bind-ID:1 Bind-ID:1
Bind-ID:1 Bind-ID:1
適切にBindオブジェクトを破棄しないと、内部的にBindオブジェクトが残る
ケース3:
バインド領域の変更を監視したい
出来ます!
addHandlerAsyncメソッド
注意!
⃝使わなくなったイベント監視は必ず削除する
⃝同じBind-IDであっても、複数回同じイベン
ト処理を登録しない(イベント処理は上書きさ
れない)
イベント処理1
イベント処理2
イベント処理を変更
するために再登録
イベント処理1
イベント処理2
両方実行される
今後のアプリ動向
App for Office
Have fun!!

More Related Content

Viewers also liked

FloatMagic Power Point Presentation
FloatMagic Power Point PresentationFloatMagic Power Point Presentation
FloatMagic Power Point Presentation
stoneworts
 
09 state of the art of the management of advanced and recurrent ovarian cancer
09   state of the art of the management of advanced and recurrent ovarian cancer09   state of the art of the management of advanced and recurrent ovarian cancer
09 state of the art of the management of advanced and recurrent ovarian cancer
ONCOcare
 
Powerful presentation secrets
Powerful presentation secretsPowerful presentation secrets
Powerful presentation secrets
fixithat
 
Remembrance of data past
Remembrance of data pastRemembrance of data past
Remembrance of data past
Amélie Marian
 
Searching data with substance and style
Searching data with substance and styleSearching data with substance and style
Searching data with substance and style
Amélie Marian
 
Leveraging SMEs’ strengths for INSPIRE
Leveraging SMEs’ strengths for INSPIRELeveraging SMEs’ strengths for INSPIRE
Leveraging SMEs’ strengths for INSPIRE
smespire
 
Marketing page
Marketing pageMarketing page
Marketing page
7change
 
Shoothill Floodalert
Shoothill FloodalertShoothill Floodalert
Shoothill Floodalert
smespire
 
Active sentences
Active sentencesActive sentences
Active sentences
Miz Endang
 

Viewers also liked (19)

FloatMagic Power Point Presentation
FloatMagic Power Point PresentationFloatMagic Power Point Presentation
FloatMagic Power Point Presentation
 
09 state of the art of the management of advanced and recurrent ovarian cancer
09   state of the art of the management of advanced and recurrent ovarian cancer09   state of the art of the management of advanced and recurrent ovarian cancer
09 state of the art of the management of advanced and recurrent ovarian cancer
 
20121121101127simulation azmi
20121121101127simulation azmi20121121101127simulation azmi
20121121101127simulation azmi
 
Paulatitos
PaulatitosPaulatitos
Paulatitos
 
Powerful presentation secrets
Powerful presentation secretsPowerful presentation secrets
Powerful presentation secrets
 
Remembrance of data past
Remembrance of data pastRemembrance of data past
Remembrance of data past
 
Usi del futuro
Usi del futuroUsi del futuro
Usi del futuro
 
Sapphire Orlando 2013
Sapphire Orlando 2013Sapphire Orlando 2013
Sapphire Orlando 2013
 
ARE U PAYING ATTENTION?
ARE U PAYING ATTENTION?ARE U PAYING ATTENTION?
ARE U PAYING ATTENTION?
 
My family
My familyMy family
My family
 
Searching data with substance and style
Searching data with substance and styleSearching data with substance and style
Searching data with substance and style
 
LEVICK Weekly - Jan 25 2013
LEVICK Weekly - Jan 25 2013LEVICK Weekly - Jan 25 2013
LEVICK Weekly - Jan 25 2013
 
Leveraging SMEs’ strengths for INSPIRE
Leveraging SMEs’ strengths for INSPIRELeveraging SMEs’ strengths for INSPIRE
Leveraging SMEs’ strengths for INSPIRE
 
Marketing page
Marketing pageMarketing page
Marketing page
 
第一次 概念發想
第一次 概念發想第一次 概念發想
第一次 概念發想
 
Web2
Web2Web2
Web2
 
Shoothill Floodalert
Shoothill FloodalertShoothill Floodalert
Shoothill Floodalert
 
Active sentences
Active sentencesActive sentences
Active sentences
 
Корпорация «РосГеймз» – игровые технологии для бизнеса и личностного роста
Корпорация «РосГеймз» – игровые технологии для бизнеса и личностного ростаКорпорация «РосГеймз» – игровые технологии для бизнеса и личностного роста
Корпорация «РосГеймз» – игровые технологии для бизнеса и личностного роста
 

Similar to 20150314 appforofficestudy

【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
智治 長沢
 
基調講演「データのグループウェア化」
基調講演「データのグループウェア化」基調講演「データのグループウェア化」
基調講演「データのグループウェア化」
Cybozucommunity
 

Similar to 20150314 appforofficestudy (20)

OpenSpan_PreMarketing
OpenSpan_PreMarketingOpenSpan_PreMarketing
OpenSpan_PreMarketing
 
New Integration "X" 新インテグレーションソリューション
New Integration "X" 新インテグレーションソリューションNew Integration "X" 新インテグレーションソリューション
New Integration "X" 新インテグレーションソリューション
 
IT エンジニアのための 流し読み Windows - Windows 11 SE アプリケーションの管理
IT エンジニアのための 流し読み Windows - Windows 11 SE アプリケーションの管理IT エンジニアのための 流し読み Windows - Windows 11 SE アプリケーションの管理
IT エンジニアのための 流し読み Windows - Windows 11 SE アプリケーションの管理
 
フォーガンシーが歩んだ道
フォーガンシーが歩んだ道フォーガンシーが歩んだ道
フォーガンシーが歩んだ道
 
Spring'15 ISV様向け新機能紹介
Spring'15 ISV様向け新機能紹介Spring'15 ISV様向け新機能紹介
Spring'15 ISV様向け新機能紹介
 
コックピットアプリケーション
コックピットアプリケーションコックピットアプリケーション
コックピットアプリケーション
 
Apps for Office サミット!
Apps for Office サミット!Apps for Office サミット!
Apps for Office サミット!
 
アジャイル開発のためのDatadog
アジャイル開発のためのDatadogアジャイル開発のためのDatadog
アジャイル開発のためのDatadog
 
【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
【ソフトウェアプロジェクトにおけるツールの活用を考える会】 ソフトウェア開発におけるツール活用 - Team Foundation Server をベース...
 
2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~2011年マイクロソフト テクノロジー振り返り~開発編~
2011年マイクロソフト テクノロジー振り返り~開発編~
 
Force.com開発基礎
Force.com開発基礎Force.com開発基礎
Force.com開発基礎
 
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
 
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT appsMAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
 
【13-B-4】事例から学ぶdev ops実現のためのプラクティス(黒川敦〔日本アイ・ビー・エム〕)
【13-B-4】事例から学ぶdev ops実現のためのプラクティス(黒川敦〔日本アイ・ビー・エム〕)【13-B-4】事例から学ぶdev ops実現のためのプラクティス(黒川敦〔日本アイ・ビー・エム〕)
【13-B-4】事例から学ぶdev ops実現のためのプラクティス(黒川敦〔日本アイ・ビー・エム〕)
 
ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門ノンコーディングでビジネスアプリ作成 PowerApps入門
ノンコーディングでビジネスアプリ作成 PowerApps入門
 
今さらきけない環境ハブ
今さらきけない環境ハブ今さらきけない環境ハブ
今さらきけない環境ハブ
 
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
 
Forguncy 4 製品概要資料
Forguncy 4 製品概要資料Forguncy 4 製品概要資料
Forguncy 4 製品概要資料
 
基調講演「データのグループウェア化」
基調講演「データのグループウェア化」基調講演「データのグループウェア化」
基調講演「データのグループウェア化」
 
保守性の高いアプリケーション設計について
保守性の高いアプリケーション設計について保守性の高いアプリケーション設計について
保守性の高いアプリケーション設計について
 

20150314 appforofficestudy