[ai]TableView extensionは実務に使えるかな?

[AppyBuilder Community Forum]

AppyBuilder Community Forumで見つけた「TableView Extension」

TableView Extension v3
[AppyBuilder Extension]TableView Extension v3


これを使えばハンディーターミナルアプリがより便利になるかも!

前回は静的文字列でざっくり使い方を勉強。

[[ai]AppyBuilder TableView Extension v3—-形部商事]


今回はハンディーターミナルアプリ導入準備の為、データベースとの連携方法を勉強。

練習アプリはこんな感じ
[AppyBuilderExtension]TableViewの勉強:デザイン

TableViewExtensionの設定
項目セパレータ(CellDelimitor)は、”,”カンマ

[AppyBuilderExtension]TableViewの勉強:Delimiter

行セパレータ(RowDelimitor)は、”]”この括弧記号を指定
[AppyBuilderExtension]TableViewの勉強:Delimiter


テストデータは、このbulk insert文で保存した3列3行の明細。

insert into m_item(itemcd,itemname,itemprice)
values
(“1111″,”商品1だよ”,100),
(“2222″,”商品2だよ”,200),
(“3333″,”商品3だよ”,300)


テストプログラムがこれ
[AppyBuilderExtension]TableViewの勉強:プログラム

まずは、もっともシンプルなSELECT文でテスト開始

select * from m_item


SQL実行結果がこれ

先頭に”(” + カラム名が並び、末尾に”)”の括弧が付くのがAppyBuilder:SQLiteの仕様

(itemcd,itemname,itemprice 1111,商品1だよ,100 2222,商品2だよ,200 3333,商品3だよ,300 4444,商品4だよ,400)


取りあえず、これをTableViewに食わせると

無茶苦茶!

[AppyBuilderExtension]TableViewの勉強:事前処理無しでデータソースとして挿入すると・・

では、SQLの調整開始
取り合えず行セパレーター(RowDelimitor)”]”括弧を各行末尾に付けるには・・・・・
単純に”]”をカンマで繋いでみる。

select itemcd,itemname,itemprice,’]’ from m_item

その結果がこれ。随分、改善されました。
AppyBuilderExtension]TableViewの勉強:RoeDelimitor付きでデータソースとして挿入すると・・

次に’]’括弧記号を囲む前後の’シングルクォーテーションを取り除くのに
text.replaceブロックで文字列置換
TableViewを使う為のSQL文最終調整

かなり改善
TableViewのLOOKSはかなりいい感じに!


あと、“(itemcd”から“(”記号を取く除くのもtext.replaceを使用。
ついでに日本語タイトルにしました。
そして、末尾の“)”も取り除けば完成
TableView導入へあと少しの調整・・

これで、ほぼ完成形
TableView導入最終調整


残りのタイトルも日本語にtext.replace
TableView導入の最終調整


わぁ~い完成!
TableView導入にほぼ目処が付きました


SQL調整用ブロックをつないでプログラム完成!
TableView導入の為の最終調整ブロック


試しに商品マスタ実データの一部をインポートすると・・・・

ダメだ、これ!

商品名の文字数がバラバラでキレイじゃない!
その上、3列目が消えている!
TableViewに実際のマスターを挿入すると・・・ダメだこれ!


ならば商品名の先頭20文字だけを取りだそう!
AccessならLEFT関数、SQLiteの場合をGoogle検索
substrを使うそうな

select itemcd,substr(itemname,1,20) as 商品名,itemprice,’]’ from m_item

わーい、今度こそ完成だ!
TableViewExtiensionrリスト完成かな


App Inventorに無かった日本人が好きな罫線付き一覧表。

TableView、日本人向け業務用アプリ開発に必須extensionかも!

まぁ、App Inventor系で業務用アプリ作ってんの(=作ろうとした奴って)僕だけかも・・・・

Amerkashiさんへ
TableView extensionをAppyBuilderの標準機能にしてください
Japaneseは喜ぶはずです!(きっと)

ちなみにコンパニオンアプリのエミュレーター上で4000行だとクラッシュしまくり
1000行で安定しました。
1000行動けばsmallビジネスなら十分使える。

さて、次は本番アプリの改造
TableView extensionを導入しみよう
久しぶりにハンディーターミナルアプリのバージョンアップに挑戦!