_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

◇ 黄金週間を満喫しています ・・・・・・ 第720
☆モバイルオフィスの作り方 ★
Vol.0720

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

□ 頼もしいkindle Fire
□ 楽しいサボのプログラミング講座ーその7

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
☆ 頼もしいkindle Fire
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
私の仕事はプログラミングですが、その後のサポートも重要な仕事です。


◇ 黄金週間の憂鬱
私も世間の皆さんと同様に黄金週間の連休を待ちわびていました。
でも、連休でちょっと出かけたい・・・・時に困るのが緊急対応です。

お客様の中には連休こそかき入れ時!と言う会社もあり、システムはずっと稼
働しています。

ふだんは会社か緊急対応用のスマホに電話があり、すぐに解決するのですが、
私が行楽で遊びに行くときが問題です。

緊急対応といってもそれほど頻度があるわけでもなく、通信でアクセスしてち
ょっとした作業で原因が分かったり解決することばかりなのですが、出先では
PCが無いので操作できません。

かなり以前はスマホの小さな画面に指で操作したこともありますが、小さすぎ
てファイル操作など危険極まりないのです。
そこで考えたのがあまり使っていないkindle Fireの活用です。

◇ 本当はSurfaceRTなんですが・・・・
本来はSurfaceRTなんですが、残念ながら昨年のTeamViewerの改訂でSurfaceRT
は対象外になり、その上Chromeのレモートデスクトップも使えません。

https://www.teamviewer.com/ja/
https://remotedesktop.google.com/?hl=ja

そこでもしや古いkindle FireならAndroid用のTeamViewerが使えるのでは??
と考えて試しました。

https://www.teamviewer.com/ja/download/android/

これがうまく行って、小さなkindle Fireを持ち歩けばどこからでもメンテナ
ンスが可能になりました。

◇ Wifi ルーターをどうする?
さて、kindle Fireで簡単なメンテナンスができるようになったのですが、そ
もそもインターネットに繋がらないとkindle Fireでリモート操作ができませ
ん。

そこで自分のスマホのテザリング機能でWifi ルーターにすることにしまし
た。
私のスマホは超安価のAndroidoOneというシャープのスマホであり、回線は
YahooMovaileなのですが、普段は会社かサテライトオフィスの無線Lan傘下に
いるのでほとんど通信はしません。

そこで通信容量の上限はあまり気にせずに外出先で使うことが出来るのです。

スマホとKindleはbluetoothで接続するようでいったんペアリングすると必要
なときにテザリングをOnにして使えます。
自宅やオフィスでは強烈な無線Lanがいて実験しても本当にうまくいっている
かどうか分からないので出先で試しました。

少し小さめではありますが、キーボードやマウスもついているkindle Fireで
サテライトオフィスの仕事用のPCが操作できます。

これでもう出かけていてもサテライトオフィスにいるのと変わらずメンテナン
スが出来ます。

◇ kindle Fireは単に通信端末で仕事をするのはオフィスのPC
実はこの操作は割と慣れているのですが、TeamViewerもChromeリモートデスク
トップも接続先のPCを遠隔で操作する道具で、手元にあるデバイスが非力でも
あまり関係ありません。

遠くにある自分のPCを操作するわけであって、OSも機能も必要としないので
す。

それでいて、ふだん使い慣れている仕事用のPCの全機能を使えますから、本格
的なプログラミングを除けばこれで充分!

◇ TewmViewer対Chromeリモートデスクトップ
さてそうなると、この両者のどちらが好ましいか?と言う比較になるのです
が、以下のような特性があります。

・ 確実につながるChromeリモートデスクトップ
Chromeリモートデスクトップは無償ですから接続や通信に不安があったので
すがこの数年の経験ではChromeリモートデスクトップの方が確実につながり
ます。複数のファイル転送以外はこちらの方がよいかも知れません。

複数のファイルを転送したいときは最初にZipなどで圧縮しておき、1個のフ
ァイルにしてから転送します。
接続先PCの文字列などもコピペできます。

・ ファイル転送など操作が楽なTewmViewer
私どもの商売道具ですから安くない料金を毎月払って使っています。
何が便利かというと、50個ほどのファイルを選択して、コピーしたりすると
きにはとても楽で便利です。
接続先のPCのファイルエクスプローラを使ってドラッグ・アンド・ドロップ
で自身のPCにコピーしたり、その逆も可能です。
あまりリモートであることを意識しなくてもすみます。
ただし5,000円/月額


確実に接続できるという利便性は大きくて、少しづつChromeリモートデスクトッ
プが主役になりつつあります。
そして外出時用にChromeBookの購入を検討しています。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
☆ 楽しいサボのプログラミング講座ーその7
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
前回はJavaScriptで配列変数を使うことを学びました。
でもそれでも実際に配列変数の効果がわかりにくい??そうですね。プログラミ
ングの最初の難関ですから・・・

◇ 配列変数を使う実際
今回は実際に配列変数を使った仕事をご説明します。
具体的には[Enter]キーを押すと次々とコントロールを移動するというかなり
大切な機能です。

https://speedserve.sakura.ne.jp/MovileOffice/Sample2.html

いつものようにこのプログラムを呼び出してください。そして[F12]を押して
デバッガーを起動しましょう。

520行目にfunction FormKeyDown()という関数があり、このプログラムでどん
なキーが押されても必ずここに飛びます。

なぜ???

18行目に<body onKeyDown = "FormKeyDown()">と書いているからです。

これは”body”=HTMLのフォームそのもので何かキーが押されたら(キーボー
ドの操作がされたら)"FormKeyDown()"を実行しなさいと言う意味です。

何が押されても必ずこのプログラムが実行されます。
例えば[Shift]キーや[Ctrl]キーといった補助的なキーが押されてもこの関数
が呼び出されます。

なのにほとんどの場合は何もしていないように見えるのは・・・・

521行目の・・・
    if(event.keyCode == 13){
のせいです。

これはevent.keyCode=押されたキーのコードが13の時だけそれ以下の処理を
するという意味で、event.keyCode==13とは[Enter]キーのことです。
全てのキーボードのキーには番号があって、例えば[Tab]キーなら9だったり、
[A]と言う文字キーなら65とか[a]の場合は97とか固有のコードがあります。

でもここで使うのは[Enter]キーを表す13番だけでそれ以外は無視します。
次に535行目ですが・・・・

var KeyOrderList = "Code1,Kamoku1,Kingaku1,Code2,Kamoku2,Kingaku2,
    Code3,Kamoku3,Kingaku3,Code1"
    
で、KeyOrderListと言う変数に移動したいコントロ−ルの名称(ID)をカンマ区
切りで記述しています。
さらに次の行(536行目)では・・・
var KeyOrder = KeyOrderList.split(",");

という行があり、これでKeyOrderListの中身の文字列がカンマ(",")で区切ら
れて配列変数に格納されます。

KeyOrder[0] = "Code1"
KeyOrder[1] = "Kamoku1"
KeyOrder[2] = "Kingaku1"
KeyOrder[3] = "Code2"
KeyOrder[4] = "Kamoku2"
KeyOrder[5] = "Kingaku2"
KeyOrder[6] = "Code3"
KeyOrder[7] = "Kamoku3"
KeyOrder[8] = "Kingaku3"

といった感じです。カンマなどで区切った文字列をsplit関数で分割すると、
そのまま配列変数を作って0番から格納してくれるのです。
これはとても便利で重要な機能です。

◇ 別の書き方をすると・・・・
var KeyOrder = ("Code1,Kamoku1,Kingaku1,Code2,Kamoku2,
    Kingaku2,Code3,Kamoku3,Kingaku3,Code1").split(",");

でもよいです。
いったんKeyOrderListと言う変数に格納してそれをばらして配列に格納して
も、直接ばらして格納しても結果は同じです。

大切なことはキー移動したい順をカンマで区切った文字列として書いておい
て、それをばらして配列変数に格納することです。

とても簡単なプログラムですが、このことが超重要で、移動したい順を文字列
で記述するだけでキーの移動が出来るという私が仕事で作る全てのプログラム
にほぼこのままのプログラムは100%使われています。

お客様からキーの移動順を変えて欲しいと言われても、このカンマで区切られ
た文字の順を変えるだけですぐに作業は終わるのです。

これでキー移動のプログラムの準備が出来ましたから次回はLoopを使って実際
にキーが移動する仕組みのご説明をします。


JavaScriptによらず、業務システムではキーの移動は超重要です。
ユーザーインターフェースの基本中の基本で、HTML5にお引っ越しする際に最初
に確認して作ったプログラムです。ここはよく聞いておいてください。
━━━━━━━━━━━━━━━━━━━━━━ 
[モバイルオフィスの作り方]はサボのマナベが日々気づいたこ
とや思ったことをお天気の良い日の縁側に座ってポツリポツリと
お話しするようなマガジンです。
ご意見などもあることと思います。
もしご意見等がありましたらお寄せいただければ随時話題にして
いきたいと思います。
 
 
新規登録・解除はこちら
      ↓
http://sabot.jp/MailMagazine/Merumaga.html
==========================================
★発行責任者:
 (有)ファクトリー・サボ
  真鍋隆彦
 兵庫県神戸市垂水区東舞子町9-9
           マリタイム舞子501号
 Tel:078-787-3602 Fax:078-787-3619
 Mail:manabe@sabot.co.jp
 http://www.sabot.co.jp/
 ☆ソフトウェアーギャラリーに遊びに来てください
  https://secure3552.sakura.ne.jp/sabot.jp/Mitumori/
==========================================
 
◎このメルマガに返信すると発行者さんにメッセージを届けられます
※発行者さんに届く内容は、メッセージ、メールアドレスです
 
◎モバイルオフィスの作り方
  の配信停止はこちら
⇒ https://www.mag2.com/m/0000109792.html?l=ywj17bb991
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ ◇ 黄金週間を満喫しています ・・・・・・          第720  ☆モバイルオフィスの作り方 ★                                 Vol.0720 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/ □   頼もしいkindle Fire □   楽しいサボのプログラミング講座ーその7 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ☆ 頼もしいkindle Fire ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 私の仕事はプログラミングですが、その後のサポートも重要な仕事です。 ◇ 黄金週間の憂鬱  私も世間の皆さんと同様に黄金週間の連休を待ちわびていました。  でも、連休でちょっと出かけたい・・・・時に困るのが緊急対応です。    お客様の中には連休こそかき入れ時!と言う会社もあり、システムはずっと稼  働しています。    ふだんは会社か緊急対応用のスマホに電話があり、すぐに解決するのですが、  私が行楽で遊びに行くときが問題です。    緊急対応といってもそれほど頻度があるわけでもなく、通信でアクセスしてち  ょっとした作業で原因が分かったり解決することばかりなのですが、出先では  PCが無いので操作できません。    かなり以前はスマホの小さな画面に指で操作したこともありますが、小さすぎ  てファイル操作など危険極まりないのです。  そこで考えたのがあまり使っていないkindle Fireの活用です。   ◇ 本当はSurfaceRTなんですが・・・・  本来はSurfaceRTなんですが、残念ながら昨年のTeamViewerの改訂でSurfaceRT  は対象外になり、その上Chromeのレモートデスクトップも使えません。    https://www.teamviewer.com/ja/  https://remotedesktop.google.com/?hl=ja    そこでもしや古いkindle FireならAndroid用のTeamViewerが使えるのでは??  と考えて試しました。    https://www.teamviewer.com/ja/download/android/    これがうまく行って、小さなkindle Fireを持ち歩けばどこからでもメンテナ  ンスが可能になりました。   ◇ Wifi ルーターをどうする?  さて、kindle Fireで簡単なメンテナンスができるようになったのですが、そ  もそもインターネットに繋がらないとkindle Fireでリモート操作ができませ  ん。    そこで自分のスマホのテザリング機能でWifi ルーターにすることにしまし  た。  私のスマホは超安価のAndroidoOneというシャープのスマホであり、回線は  YahooMovaileなのですが、普段は会社かサテライトオフィスの無線Lan傘下に  いるのでほとんど通信はしません。    そこで通信容量の上限はあまり気にせずに外出先で使うことが出来るのです。    スマホとKindleはbluetoothで接続するようでいったんペアリングすると必要  なときにテザリングをOnにして使えます。  自宅やオフィスでは強烈な無線Lanがいて実験しても本当にうまくいっている  かどうか分からないので出先で試しました。    少し小さめではありますが、キーボードやマウスもついているkindle Fireで  サテライトオフィスの仕事用のPCが操作できます。    これでもう出かけていてもサテライトオフィスにいるのと変わらずメンテナン  スが出来ます。   ◇ kindle Fireは単に通信端末で仕事をするのはオフィスのPC  実はこの操作は割と慣れているのですが、TeamViewerもChromeリモートデスク  トップも接続先のPCを遠隔で操作する道具で、手元にあるデバイスが非力でも  あまり関係ありません。    遠くにある自分のPCを操作するわけであって、OSも機能も必要としないので  す。    それでいて、ふだん使い慣れている仕事用のPCの全機能を使えますから、本格  的なプログラミングを除けばこれで充分!   ◇ TewmViewer対Chromeリモートデスクトップ  さてそうなると、この両者のどちらが好ましいか?と言う比較になるのです  が、以下のような特性があります。    ・ 確実につながるChromeリモートデスクトップ   Chromeリモートデスクトップは無償ですから接続や通信に不安があったので   すがこの数年の経験ではChromeリモートデスクトップの方が確実につながり   ます。複数のファイル転送以外はこちらの方がよいかも知れません。      複数のファイルを転送したいときは最初にZipなどで圧縮しておき、1個のフ   ァイルにしてから転送します。   接続先PCの文字列などもコピペできます。     ・ ファイル転送など操作が楽なTewmViewer   私どもの商売道具ですから安くない料金を毎月払って使っています。   何が便利かというと、50個ほどのファイルを選択して、コピーしたりすると   きにはとても楽で便利です。   接続先のPCのファイルエクスプローラを使ってドラッグ・アンド・ドロップ   で自身のPCにコピーしたり、その逆も可能です。   あまりリモートであることを意識しなくてもすみます。   ただし5,000円/月額 確実に接続できるという利便性は大きくて、少しづつChromeリモートデスクトッ プが主役になりつつあります。 そして外出時用にChromeBookの購入を検討しています。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ☆ 楽しいサボのプログラミング講座ーその7 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 前回はJavaScriptで配列変数を使うことを学びました。 でもそれでも実際に配列変数の効果がわかりにくい??そうですね。プログラミ ングの最初の難関ですから・・・ ◇ 配列変数を使う実際  今回は実際に配列変数を使った仕事をご説明します。  具体的には[Enter]キーを押すと次々とコントロールを移動するというかなり  大切な機能です。    https://speedserve.sakura.ne.jp/MovileOffice/Sample2.html    いつものようにこのプログラムを呼び出してください。そして[F12]を押して  デバッガーを起動しましょう。    520行目にfunction FormKeyDown()という関数があり、このプログラムでどん  なキーが押されても必ずここに飛びます。    なぜ???    18行目にと書いているからです。  これは”body”=HTMLのフォームそのもので何かキーが押されたら(キーボー  ドの操作がされたら)"FormKeyDown()"を実行しなさいと言う意味です。    何が押されても必ずこのプログラムが実行されます。  例えば[Shift]キーや[Ctrl]キーといった補助的なキーが押されてもこの関数  が呼び出されます。    なのにほとんどの場合は何もしていないように見えるのは・・・・    521行目の・・・   if(event.keyCode == 13){  のせいです。  これはevent.keyCode=押されたキーのコードが13の時だけそれ以下の処理を  するという意味で、event.keyCode==13とは[Enter]キーのことです。  全てのキーボードのキーには番号があって、例えば[Tab]キーなら9だったり、  [A]と言う文字キーなら65とか[a]の場合は97とか固有のコードがあります。    でもここで使うのは[Enter]キーを表す13番だけでそれ以外は無視します。  次に535行目ですが・・・・    var KeyOrderList = "Code1,Kamoku1,Kingaku1,Code2,Kamoku2,Kingaku2,   Code3,Kamoku3,Kingaku3,Code1"    で、KeyOrderListと言う変数に移動したいコントロールの名称(ID)をカンマ区  切りで記述しています。  さらに次の行(536行目)では・・・   var KeyOrder = KeyOrderList.split(",");    という行があり、これでKeyOrderListの中身の文字列がカンマ(",")で区切ら  れて配列変数に格納されます。    KeyOrder[0] = "Code1"  KeyOrder[1] = "Kamoku1"  KeyOrder[2] = "Kingaku1"  KeyOrder[3] = "Code2"  KeyOrder[4] = "Kamoku2"  KeyOrder[5] = "Kingaku2"  KeyOrder[6] = "Code3"  KeyOrder[7] = "Kamoku3"  KeyOrder[8] = "Kingaku3"    といった感じです。カンマなどで区切った文字列をsplit関数で分割すると、  そのまま配列変数を作って0番から格納してくれるのです。  これはとても便利で重要な機能です。   ◇ 別の書き方をすると・・・・  var KeyOrder = ("Code1,Kamoku1,Kingaku1,Code2,Kamoku2,  Kingaku2,Code3,Kamoku3,Kingaku3,Code1").split(",");  でもよいです。  いったんKeyOrderListと言う変数に格納してそれをばらして配列に格納して  も、直接ばらして格納しても結果は同じです。    大切なことはキー移動したい順をカンマで区切った文字列として書いておい  て、それをばらして配列変数に格納することです。    とても簡単なプログラムですが、このことが超重要で、移動したい順を文字列  で記述するだけでキーの移動が出来るという私が仕事で作る全てのプログラム  にほぼこのままのプログラムは100%使われています。    お客様からキーの移動順を変えて欲しいと言われても、このカンマで区切られ  た文字の順を変えるだけですぐに作業は終わるのです。    これでキー移動のプログラムの準備が出来ましたから次回はLoopを使って実際  にキーが移動する仕組みのご説明をします。 JavaScriptによらず、業務システムではキーの移動は超重要です。 ユーザーインターフェースの基本中の基本で、HTML5にお引っ越しする際に最初 に確認して作ったプログラムです。ここはよく聞いておいてください。