SlideShare uma empresa Scribd logo
1 de 16
kintone初心者が
プラグイン作ってみた話
山田 浩靖
kintone Café 名古屋 Vol.2
2
自己紹介
 ロジックハート代表(個人事業主)
 年齢:四捨五入すると40歳
 主戦場はクラウドワークスやランサーズ
 基本はPHPerでJavaScriptな人
 サーバインフラもやります
 コミュニティ活動:
JAWS-UG、EC-CUBE勉強会
Code for Nagoya(ハッカソン等)
Twitter: @hydra55
Facebook: hiroyasu.yamada.79
3
最近、kintone来てるな
4
ただ触るだけじゃ・・・
そうだ、プラグイン作ろう
5
漢字かな変換プラグイン
 jQueryのautoKanaプラグインを
kintoneのフォーム入力に適用させてみる
 名前を入力すると、自動的にふりがなが入る
6
既存のJavaScriptの組み込みだし
片手間でできるだろう
・・・とはいかなかった
7
論より証拠
8
https://github.com/logicheart/kintonte-autokana
9
API「getFieldElement」
 フィールドコードを元に、input要素のDOMを取得する
メソッド
 フォームの初期表示時に、漢字フィールドとかなフィー
ルドの要素を取得し、autoKanaに紐付ければ
 漢字フィールドへの入力イベントを検知して、かな
フィールドにかな文字が自動的に入る・・・はず
10
API「getFieldElement」
 フィールドコードを元に、input要素のDOMを取得する
メソッド
 フォームの初期表示時に、漢字フィールドとかなフィー
ルドの要素を取得し、autoKanaに紐付ければ
 漢字フィールドへの入力イベントを検知して、かな
フィールドにかな文字が自動的に入る・・・はず
入力フォームでは
getFieldElementが効かない!
11
論より証拠
12
お問い合わせしてみた
kintone.app.record.getFieldElement について
入力フォームではフィールドのElementを取得できないようなので
すがそのような仕様でしょうか。
恐れ入りますが、“getFieldElement” に関しましては、レコード編集
画面で使用できないものとなっております。
フィールド要素を取得する処理 “getFieldElement” に関しましては、
レコード詳細画面でのみ利用可能となっております。
ご要望の動作ができず、ご迷惑おかけいたします。申し訳ございま
せん。
From: サイボウズテクニカルセンター
13
で、どうしたか
 input要素のidもclassも一意に決まらない
→idやclassからフィールド要素を特定できない
 ラベル(「担当者名」「担当者名(かな)」)が必ずinput要
素の前にある (はず)
ラベル要素を特定して、
その直下にあるinput要素を取得
14
で、どうしたか
 input要素のidもclassも一意に決まらない
→idやclassからフィールド要素を特定できない
 ラベル(「担当者名」「担当者名(かな)」)が必ずinput要
素の前にある (はず)
ラベル要素を特定して、
その直下にあるinput要素を取得
同一のラベル名はNG
「姓」 → 「かな」
「名」 → 「かな」
「姓」 → 「姓かな」
「名」 → 「名かな」
フィールドコードなら一意になるのに
15
お知らせいただいたご意見は、担当部門に共
有し、JavaScript API を改善する際、十分参考
とさせていただきます。
From: サイボウズテクニカルセンター
期待します
16
ご清聴ありがとうございました

Mais conteúdo relacionado

Mais procurados

他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Takeshi Sugiyama
 

Mais procurados (20)

Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )Python for Beginners ( #PyLadiesKyoto Meetup )
Python for Beginners ( #PyLadiesKyoto Meetup )
 
S16 t1 python学習奮闘記#6
S16 t1 python学習奮闘記#6S16 t1 python学習奮闘記#6
S16 t1 python学習奮闘記#6
 
Hubotで遊ぶ
Hubotで遊ぶHubotで遊ぶ
Hubotで遊ぶ
 
210630 python
210630 python210630 python
210630 python
 
S15 t0 introduction
S15 t0 introductionS15 t0 introduction
S15 t0 introduction
 
The tale of I and python / Python とのはなし
The tale of I and python / Python とのはなしThe tale of I and python / Python とのはなし
The tale of I and python / Python とのはなし
 
プログラミング学習とScratch raspi python
プログラミング学習とScratch raspi pythonプログラミング学習とScratch raspi python
プログラミング学習とScratch raspi python
 
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれからS20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
 
Stapyの6年~本との出会いから生まれた技術コミュニティ~
Stapyの6年~本との出会いから生まれた技術コミュニティ~Stapyの6年~本との出会いから生まれた技術コミュニティ~
Stapyの6年~本との出会いから生まれた技術コミュニティ~
 
Pietで競プロしよう
Pietで競プロしようPietで競プロしよう
Pietで競プロしよう
 
ドット絵でプログラミング!難解言語『Piet』勉強会
ドット絵でプログラミング!難解言語『Piet』勉強会ドット絵でプログラミング!難解言語『Piet』勉強会
ドット絵でプログラミング!難解言語『Piet』勉強会
 
20150627
2015062720150627
20150627
 
PythonのインストールからHello Worldまで
PythonのインストールからHello WorldまでPythonのインストールからHello Worldまで
PythonのインストールからHello Worldまで
 
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
 
Puppet of-2015-forupload
Puppet of-2015-foruploadPuppet of-2015-forupload
Puppet of-2015-forupload
 
S09 t0 orientation
S09 t0 orientationS09 t0 orientation
S09 t0 orientation
 
プロ生ちゃんbotを作ろう!
プロ生ちゃんbotを作ろう!プロ生ちゃんbotを作ろう!
プロ生ちゃんbotを作ろう!
 
WindowsでPython
WindowsでPythonWindowsでPython
WindowsでPython
 
Ultra piet
Ultra pietUltra piet
Ultra piet
 
エキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころエキスパートPythonプログラミング改訂3版の読みどころ
エキスパートPythonプログラミング改訂3版の読みどころ
 

Semelhante a 【kintone Cafe 名古屋】kintone初心者がプラグイン作ってみた話

最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
Yusuke Ando
 

Semelhante a 【kintone Cafe 名古屋】kintone初心者がプラグイン作ってみた話 (7)

Kobe.py 勉強会 minecraft piスライド
Kobe.py 勉強会 minecraft piスライドKobe.py 勉強会 minecraft piスライド
Kobe.py 勉強会 minecraft piスライド
 
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう最近のCandyCane - PHP版Redmineでタスク管理を始めよう
最近のCandyCane - PHP版Redmineでタスク管理を始めよう
 
LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン(yam...
LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン(yam...LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン(yam...
LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン(yam...
 
Ha4goもくもく報告2016年11月分
Ha4goもくもく報告2016年11月分Ha4goもくもく報告2016年11月分
Ha4goもくもく報告2016年11月分
 
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
 
Chainer でのプロファイリングをちょっと楽にする話
Chainer でのプロファイリングをちょっと楽にする話Chainer でのプロファイリングをちょっと楽にする話
Chainer でのプロファイリングをちょっと楽にする話
 
俺とCI
俺とCI俺とCI
俺とCI
 

【kintone Cafe 名古屋】kintone初心者がプラグイン作ってみた話