カテゴリー「Access 業務管理」の72件の記事

2017年10月11日 (水)

受注情報の登録パターン

普段は、頭の中でフローを思い浮かべてプログラムに落とし込むのですが、受注情報の登録についてはいろんなパターンが有り、頭の中だけでは整理しきれなくなったので、ちゃんとパターンを視覚化してみました。

1
取り敢えず、今やろうとしている新規のお客様の登録部分です。

お客様の情報、電話番号やご住所、勤務先、修理場所などを今後の入力や検索などを考えながらテーブルも再構成しました。

頭の中だけで考えていて、整理しきれていなかったようです。

視覚化したことで、新たなプログラム構成が浮かんできました。

2017年10月 8日 (日)

懸案は解決しましたが、PCが不調です。

先日來の懸案だった、コンボBOXのリスト外の企業名入力で、振り仮名を取得する案件は、ほぼ解決しました。
後は実装するだけになりました。

解決したので、投稿していたAccesz関連の掲示板に、自己解決の投稿をしたと同時にPCが不調になり、この記事はスマホから書いています。
PCは、何度も再起動しましたがアプリが立ち上がりません。
なんとか開くウインドウもあるのでずが今度は、閉じることが出来ません
かなり困った状況です。
スマホのキーボードは、思うように入力できず時間ばかりかかっています。
しばし、ブログもお休みするかも知れませんが、よろしくお願いいたします。

2017年10月 7日 (土)

コンボボックスのリスト外入力からの振り仮名取得

お客様の登録画面で、修理場所も同時に入力してます。

修理場所が勤務先の場合、勤務先を法人として登録するのですが、顧客台帳には振り仮名の入力場所が有り、同じ振り仮名で検索して重複が有れば、登録の重複をチェックしています。

法人も顧客台帳に登録するので、振り仮名を入力しないと未入力分がまとめて重複チェックに掛かります。

ACCESSの場合、テキストボックスへの入力であれば、振り仮名を自動入力してくれる機能が有るのですが、コンボボックスへの入力の場合、振り仮名の自動入力の機能は働きません。

探していたら、Access Clubの掲示板でぴったりの機能が見つかりました。
No.5890 コンボボックスに入力した文字列のふりがなを表示するテキストボックス」のしゃくさんのソースです。

ただ、変換して次の言葉を入力すると、仮名が重複して表示されます。

昨日と、今日2日悩んだのですが、未解決です。

2017年9月28日 (木)

当店の緯度経度

小さな家ですが、

川越市上戸91-9で得られる緯度経度
35.9284598,139.4454333

北西角
35°55'42.6"N 139°26'43.5"E
35.928502, 139.445406

北東角
35°55'42.6"N 139°26'43.7"E
35.928501, 139.445477

南西角
35°55'42.4"N 139°26'43.5"E
35.928431, 139.445407

南東角
35°55'42.4"N 139°26'43.7"E
35.928434, 139.445481

35.928,139.445だと
35928139445
自宅から離れます。

35.9284,139.4454だと
3592841394454
かろうじて庭に入ります。

35.92845,139.44545だと
359284513944545
概ね正しい位置です。

重複チェックは緯度経度の小数点以下4桁までで、行おうと思います。

2017年9月26日 (火)

住所表記で場所を特定できないお客様

今は、スマホのGoogleMapで住所を入力して、ナビ機能を利用することでほとんどのお客様の所に迷わずお伺いできます。

たまにですが、お聞きした住所で、マップがその住所を表示してくれないことが有ります。

殆どが、新築のお宅でまだデータが反映されていないケースですが、どういう訳かお聞きした住所で場所が特定できず、近くまで行き案内をして頂くことが有ります。
場所が分かってから、再度マップで「この場所について」をクリックしても町域までで地番が表示されません。特にアパートに多いような気がします。

このような場合でも、緯度経度を登録すればお客様のお宅に間違えずにお伺いすることが出来ます。
問題は、お客様がご自宅の緯度経度を御存じない点です。
修理訪問後にお客様のご自宅の緯度経度を修正する機能を追加する必要があります。

緯度経度の修正機能を追加して、場所情報のお管理は緯度経度をメインで行おうと考えています。
住所は、緯度経度を見つけるためのラベル扱いです。

2017年9月22日 (金)

緯度経度取得できました。

忘却の達人さんのJSONテキストを使う方法では、上手く動かすことが出来ず、マイナビニュースのExcel VBAでWebサービス - ExcelでGoogleマップを表示しようの記述を基にVBAの参照設定を行って、下記のスクリプトに省略して緯度経度データを取得できました。

-----------------------------------------------
Public Function AddressToLatLng(address As String)

    Dim xhr As New MSXML2.XMLHTTP
    Dim tmp As New MSXML2.DOMDocument
    Dim geo As MSXML2.IXMLDOMNodeList
    Dim loc As MSXML2.IXMLDOMNode
    Dim addr As String
    Dim url As String
    Dim js As Object
   
    Set js = CreateObject("ScriptControl")
    js.Language = "JScript"
    addr = js.CodeObject.encodeURIComponent(address)
    If addr = "undefined" Then Set js = Nothing: Exit Function
    Set js = Nothing
    '(1)URLエンコードした住所から、ジオコーディングのリクエストを送信する
    url = "http://maps.google.com/maps/api/geocode/xml?sensor=false&address=" & addr
    xhr.Open "POST", url, False
    xhr.send
    If xhr.statusText <> "OK" Then Exit Function
    '(2)レスポンスから緯度・経度を取り出し、Sheet2の該当セルに設定する
    tmp.loadXML (xhr.responseText)
    Set geo = tmp.getElementsByTagName("geometry")
    Set loc = geo(0).firstChild
    Set xhr = Nothing
    AddressToLatLng = loc.firstChild.Text & " " & loc.lastChild.Text

End Function
---------------------------------------------------

APIキーを使用せずに動いているのが謎ですが、結果が得られているので深く考えないことにします。

あのこらの出張エリアが表示されていなかった不具合も解消しました。

2019.09.23訂正
APIキーはやはり必要でした。
昨日は、制限なしのAPIキーを取得していたのですが、不要だと思ってキーを削除したら、動かなくなりました。

2017年9月21日 (木)

住所表記の揺れ対策

今日はパンク修理が3件です。
内1件は車椅子のパンク修理です。
マツナガのOASISという車椅子で、12インチのタイヤでしたが、普通にチューブを取り出してパンク修理できました。

本題の業務管理システムでは、お客様の重複登録を避ける方法として

電話番号で検索
名前の重複確認(仮名でチェック)
住所の重複確認

を行っています。

最終的には,電話番号と住所が一致していれば、重複入力と判断しますが、問題になるのは住所表記の揺れです。

例えば「上戸91-9」「上戸91-9」のような大文字、小文字の表記、ハイフォン(-)か長音記号(-)などは文字変換で統一できますが

大字上戸91-9や上戸91番地9などの表記は表記法が多種あるため文字変換ではひとつづつ検証しないといけなくなります。

Google Mapには住所⇔緯度・経度変換APIがあり、

http://bougyuusonnin.seesaa.net/article/194905106.html

で忘却の達人さんがVBAからのJavaScriptと呼び出し、APIの利用までVBAのスクリプトを公開して下さっているので、これを使わせて頂くことにします。

一番の利点は、住所表記が変更されても旧住所、新住所の重複がチェックできるところだと思います。

とはいっても、昨年からGoogleのAPIはキー登録をしないと動かなくなっていて、上記サイトのスクリプトも動きません。
関連で気づいたのですが、出張修理サイトの訪問範囲を記載した地図も同じAPIを使っていたので、表示されなくなっていました。

大慌てで、APIの情報収集をしています。

2017年9月17日 (日)

業務管理システム再構築

今日は、予定通りですが、一日雨で開店休業です。

神戸から引き取ってきた両親のお骨の納骨の日取りも涼しくなって来たので決めないといけないのですが、パソコンと向かい合って業務管理システムの再構築中です。

出張修理にとっての最初の手順のお客様の登録で、以前のバージョンでは手抜きで不具合を見て見ぬふりをしていた箇所からやり直しています。

簡単そうに思えるでしょうが、スマホの普及でお客様が複数の電話番号を持たれていたリ、修理先もご自宅、勤務先、出先と様々です。

企業や団体で所有されている自転車も有り、

駐輪場などからの修理のご紹介を頂くことが有ります。

特に悩んでいるのが、同じ企業がお客様になったり、勤務先になるケースの登録です。

2016年3月16日 (水)

今日の失敗(2016.03.16)

今日は、ご予約を頂いていた、電動自転車のパンク修理にお伺いしました。

暫く乗られていなかったとのことで、前後輪とも虫ゴムの不良でパンクはしていませんでした。

何を失敗したかというと、お伺いする時間を間違えました。

予約帳には、訪問時間が13:00としっかり書いてあったのですが、朝の10:00にお伺いしてしまいました。

出直しますと申し上げたところ、「良いですよ」と作業をさせていただきましたが、きっと何かご都合のある時間帯だったのだろうと思います。

お詫びの意味も込めてしっかり清掃をさせていただきましたが、屋内(駐車場)保管で、しっかりカバーも掛けられていたので、驚くほど痛みのないフレームでした。

後の時間は、青色申告作成中に見つけた、管理システムの不具合修正に時間を使いました。

面白いと思った発見は、
帳票フォームのレコード件数を取得するのに、Recordset.RecordCountを使うとフォーム内に表示されているレコード数しか取得できないのが分かったこと

フォームを開く時に、DoCmd.OpenForm "M_***", , , , , , @ と最後に変数を付けて、
今回は
If IsNull(Me.OpenArgs) Then
  Me!SB_***.Form.FilterOn = True
Else
  Me!SB_***.Form.Filter = "M_**.部位 ='" & Me.OpenArgs ;
  Me!SB_***.Form.FilterOn = True
End If

とフィルターの条件を渡しましたがあまり制約は無さそうなので、フォーム間の変数渡しには、使えることを知りました。
@がOpenArgsに入っています。

今までは、パブリック変数を設定して、変数渡しをしていたので、これで変数の数をぐっと減らせるかもしれません。

2016年1月20日 (水)

携帯電話帳の取り込み

業務管理のバグで、一時期まったく顧客情報を登録していなかったので、少しでも情報を増やすため、携帯電話の電話帳データを取り込もうと苦闘していました。

今使っている携帯はソフトバンクの202SHで携帯電話内の電話帳データが暗合化されたAT11020500.vcf.HUFというファイルです。

所在は\PRIVATE\MYFOLDER\Utility\Contacts\Contacts.BCKです。

暗号化されていなければ、VcfEditというフリーソフトでエクセルのデータに変換できるのですが、暗号化されたデータを.vcf形式に戻すためには、SoftBankUtilityというSoftBank提供のソフトが必要でした。

.vcfというファイル形式はカードタイプのデータを格納する仕組みらしく、SoftBankUtilityから.vcfのデータにエクスポートすると1件1ファイルになってしまいます。

VcfEditでエクセルファイルに変換すると、1件の変換データしか画面に残りません。

マクロにロックは掛けられていなかったので、
Vcfedit
データの消去をコメントアウトし、書き込み行の移動を追加して携帯の電話帳をいファイルにまとめるところまで出来ました。後はテーブルに追加するだけですから、どうにでもなりますが、重複データの消去や、場合によっては、データの間違いも見つかりそうでちょっと嫌な予感です。

最後に、ソフトの入手先をメモっておきます。
VcfEdit http://www.vector.co.jp/soft/dl/win95/net/se318097.html

SoftBankUtility http://www.softbank.jp/mobile/support/3g/sus/functions/
202SHは対象機種には入っていませんでしたが、名前と、フリガナと電話番号の二つ目までは取り出せました。
提供期間は2016年3月31日までだそうです。それ以降は、S!電話帳バックアップを使うことになるのでしょうか?

より以前の記事一覧

その他のカテゴリー

1980年代カンパアセンブルロード車 | 24インチロングホイールベース車 | Access 業務管理 | ANTALES | BS LittleFriend | BS SUBNADE SPORT | CB-700C クロスバイク | CULTURE L710 | DIGNO F | DIY | e-コアフィットインシステム | GIANT ロード オーバーホール | GRAPHIS GR-001J | J:COM障害 | KHS F-20R | LN-3922C | My Road Racer | OCS(セレクター)BB | Panasonic Hurryer | RakuMatic | SPECIALIZED GLOBE | VB.net 業務管理 | お墓の引っ越し | ちょっと変わった自転車 | まちなか探検 | やぐら返し | アット@ランプ | エンド精度測定レーザー照準 | カセットフリー | ガチャリンコ互換錠 | ギヤ交換可能な軽快車リアハブ | グルメ・クッキング | ココログ画面カスタマイズ | サドル張替え | サンヨー エナクル | シティクロス作成 | シティ車のメンテナンス | シンコー SR154(JETDAAIii NEUE) | スクーター チューブレスバルブ交換 | スタンド | スポークカット | スライム(パンク防止・修理剤) | タイヤの空気圧 | ドイツ製?軽快車 PEGASUS | ハブダイナモ | バルブ根元パンク | バンドブレーキの鳴き対策 | パッチ・チューブ割れ | パッチ割れ | パナソニック ガチャリンコ 付きジャンク | ピナレロ DOGMA F8 & DA Di2 | フライス盤 DRO化 | フライス盤据付 | フライス盤架台 | フライス盤購入 | ブレーキ | ブロックダイナモ | ペット | ホームページの修正 | ローラーブレーキ | 住まい・インテリア | 住所基盤データベース | 働く自転車の製作 | 太陽光発電の検討 | 日記・コラム・つぶやき | 旧車(シティ車)整備 | 異物パンクコレクション | 籐装飾自転車 | 自転車 探検! サイト複製 | 自転車出張修理 | 自転車技士・安全整備士受験(全般) | 自転車技士・安全整備士受験(学科) | 自転車技士・安全整備士受験(実技) | 自転車組立治具 | 英式米式兼用バルブアダプター | 詐欺メール | 調理 | 軽快車にShimano105アセンブル | 郵便番号データの住所入力データ化 | 金属加工 | 長寿命虫ゴムの検討 | 電動アシスト三輪自転車 | 電動バイク | 26インチ中古自転車 | KAINZ パンクしにくいクロスバイク

スライム(パンク防止・修理剤)被害低減プロジェクト

川越市周辺の自転車屋MAP

埼玉県内出張修理店情報

カテゴリー

川越市自転車シェアリング

Active Safety Project

雨雲

無料ブログはココログ

最近のトラックバック

ブログランキング