2013年9月18日水曜日

XMLがわからん

タイトルのとおりです。

                〈 ̄ヽ 
            ,、____|  |____,、
           〈  _________  ヽ,
           | |          | |
           ヽ' 〈^ー―――^ 〉 |/ 
              ,、二二二二二_、 
             〈__  _  __〉
                | | |  | 
                / / | |   |\ 
            ___/ /  | |___| ヽ 
            \ __/   ヽ_____)



…いえ、ウソです。真面目にやります。


政府系公共機関には、オンラインの場合XML形式で提出しなさい、という仕様の書類が幾らかあるようなんですね。

昨年辺りから扱う係になったんですが、なんせソフトがテキトーで、と言うかウチ独自仕様にカスタムし過ぎたものだそうで、扱えることは扱えるんだけど「修正するときは生データになります」というネ申仕様。なんだそれ。

で、更にひどいことに、一般団体にも同じデータを扱うトコがあるんですが、そこは国が定めた仕様を無視して「CSVで」とか更には「桁指定テキストで」とかいうんですね。いつの時代だよ!と言いたいところなんですが、冒頭のとおり、実は助かってしまうのであまり強くも言えないと来ている。

しかしまあそんなのはString型融通利きすぎワロタおじさんとしては心底どうでもいいんです。問題はね、その団体の一つが「あ、請求書要りません、代行請求しますんで任せてくださいw おたくに直接振り込みしてもらうんでーwww」な事なんです。

普通に企業勤めしてれば請求書の大切さって分かりますよね?自分トコの売上、ひいては企業活動の根拠となるものですよあーた。こちらとしても出さしてくれなきゃマトモに上司に報告もできねえっつうのホント。

でも他の取引先はその仕様でやってるし、ウチももう契約しちゃってるし…という話でありまして、あとは内訳書を強引にでっち上げて先方に送りつけないと私の責任問題という事になっちまうわけです。やったね!

で、提出の必要がないとはいえ国が定めた仕様で集計する事るんですが、これがまたそのXML形式のイヤらしいところで、請求書はオンライン提出時に内訳表とか明細書として生成されるため業務ソフトにはそういう機能が一切ない。だから結局XML生データをいじるしかないという。トホホ。

で、XMLについてググってみたりして、多少XSLTだとか知ったんですが、やってみても一向にうまく表示が出来ず、ハマってしまいました。で、唸りながら改めてソース眺めてたらアナタ、要素内にデータがない。えええええ?空タグってこと?でもオンラインで提出した時のデータ、表形式で印刷できるよ?どうなってんの?→タグ内に数値がある!なんだこの仕様!!どこググってもそんなのの表示の仕方出てこないんですけどwwww

もうここで真顔ですよ。もうタグごとString型で読み込んで切り出しますよいいですよーだ!小学生状態ですよ。締め切り日迫ってますし。


幸い、タグの名前は決まってますので文字数を調べて「"(ダブルコーテーション)」のバイト位置あたりで切り出して整形すれば良い、ということで力技の対処をいたしました。勿論Excelマクロ(VBA)です。ソース書くのもアレなので一応処理の内容だけ最後に書きますが、まぁなんというかね。こんなもん本当にXML化する必要あったのかなとか。そういう風に思わざるを得ないですねもう。統計をとったりする方には便利なのかも知れませんが、生データも所謂Content部分でなく空タグの中身にデータが入ってるとか一般的に使いやすい仕様なのかそれ。個人情報が絡むからわざと汎用性を落としてるっていうことなんでしょうかねぇ…よくわかりません。

でもこれもXMLの仕様に沿った利用方法である可能性もありますので、反論するため(いや、できたからと言ってどうにもならないんですけど)にも、もっと基礎から勉強しようと思いました。できるかわかんないけど。勉強してわかったことがあれば報告します…いつになるかわかんないけど…



(以下、一応処理の流れですが見たからって言ってどうという事もないと思いますので自己満ってことで追記に隠しときますね)

2013年9月15日日曜日

2台持ちの詳細

昨日の記事で書ききれなかった料金に関してです。

実は、契約するまでに結構苦労しております(笑) なんせ田舎です。2台持ち、いることはいるんでしょうが、あまり数は多くないんじゃないかな?docomoスタッフのおにいさんおねいさんたちもしばしば軽くフリーズしつつ(笑)、一緒に検討してくれました(※総じて皆さん親切・丁寧に対応していただきました。アタマが下がります)


1台目

これまで契約機だったスマホ・ソニエリの初代Xperia(SO-01B)はSIM(FOMA)カードを外し、WiFi専用の豆タブレット扱いにします。ここで、彼女はdocomoと実質上縁が切れます。バイバイ、ペリアたん。

ともなって、自宅で発掘したガラケーにFOMAカードを差しiモードを付け、PC/スマホのデータ通信プロバイダであるmoperaUを外します。おー?もうこれだけでいんじゃねー!?

と、言いたいところなんですが、2台目の割引を適用するには、通話プランを「バリュー」(1~2年の縛りがある契約プラン)、データ通信を「パケ・ホーダイ」(定額通信プラン;上限額あり従量制もあり)の2つ契約することが条件です。大体、iモード付けたらこれつけないとダメ…ていうか実際にはこっちの条件があるからiモードつけましょうやという事なんですけど。

でこの場合、メールでの通信しか想定していませんから上限額あり従量制でもいいんですが、多少おトクな無料通信分がついてる「パケ・ホーダイダブル」というプランを既に使っていましたので、それを継続します。最低は月額390円、上限額はスマホなら5,985円でしたがiモードなら4,410円!これが良い!

という訳で、一台目契約内容は以下。
  • 通話:SSバリュー(※2年縛り割引適用後) 980円
  • データ:iモード 315円 + パケ・ホーダイダブル 390~4,410円
ここで余談なんですが、実は発掘したガラケー(N701i)がどうやらマイク破損しているらしく、相手の声は聞こえるのにこちらの声をお届けできない!という事態になってしまいました。おいおい困るじゃねーか。

ということで急遽中古のガラケーを探しに走り、F01Bという機種を調達。6,000円弱という手痛い出費…まぁでもしょうがないですね。しかもこの機種、フルブラウザがついてるので上限額はスマホと一緒になってしまい5,985円。なんだよー。
でも現在docomoの店頭にはスマホしかないというクソ戦略状況ですし、通販だと送料だってわりとバカにならないので、即入手できただけマシだと思いましょう。トホホ。

(長いので、以下"続き"に)


2013年9月14日土曜日

満を持してガラケー

ガラケーに変えました。


いや、正確には2台持ちになったってことなんですが。

実は結構前から構想はしていて、ここ2週間くらいでガッと動いたっつう感じです。まぁ色々記録として役に立てばいいかなと思い、まとめてみます。

----

まず、動機です。

箇条書きすると以下の感じ。
実家・旅行先でPC使いたい
普段巡回してる会員制サイトやSNSがある、ブログ等更新できたほうが良い。
この辺は例えばクライアントアプリが後述するOSのせいで対応してないとかもかなりあったかなと。
 
職場でアクセスする時間帯はトラフィックが集中しすぎる
もう読み込み時間が長くてバッテリーの消費量が半端なかったです。もともと建物がでかいせいもありますし。
まぁこんなに従業員増えてすげぇなあ、と複雑な感慨があったりもしますが…。
てなことで、まずモバイルルータを持とうじゃないかと思ったわけです。

で、調べたところWiMAXだとか、モバイルルータ使った通信サービスがあると。で安いんですが、携帯キャリア(うちはdocomo)だとまとめて請求が届きますね。あまりあちこちから請求書が届くのもアレだし、そもそも複数の事業者といちいち契約をして気にかけて、ってのは面倒なので、できることなら一本にまとめたい。

そんな中、自宅の引き出しの隅っこに古いガラケーを発見!

もともと、
スマホが古く(ソニエリのXperia SO-01B)、動作重く通話に支障が出る
(まぁその他でも重めだったんで、使い方の問題もあったんだと思います。でもOSもAndroid 2.1以降バージョンアップしないしね…)
という問題もあり、

「じゃ、通話はこのガラケーにすりゃいんじゃね?」


ということに。ここで「2台持ち」を思いつくに至ったわけです。

(長いので、以下”続き”参照!)



2013年9月5日木曜日

Ubuntuで休止状態を使えるようにした

小ネタです。



ハイバーネート、窓七八及びXPで言うところの『休止状態』が使えないな、と思っていたんですが、正直シャットダウンもHDDなのにかなり速いんですね、Ubuntu。だから今まで"バッテリーを消費しまくるサスペンドモード"(スリープではないところがミソであります)を使うかシャットダウンしていました。


でもやっぱスリープしないというのは不便。正直ちょっとキツイ。

例えば、仕事を早く上がれたので、子どもたちがテレビ観てる横でちょっと調べ物でも、とPC起動したは良いもののカミさんは手際が良いのですぐ夕飯になってしまう。そんなとき窓七ならスリープさせとけば!!!みたいな状況で、やはりサスペンドしかないわけですが、楽しく食事しつつ談笑する自分の隣で刻一刻とバッテリーが減っていくのがわかっていながらスクリーンセーバーを眺めるしかない!みたいなのはやはり精神衛生上あまりよろしく無いですし、長く続けると家族関係にもヒビが入りかねません(ホントかよ)。


ということで、以下を参照してハイバーネートを利用できるようにしました。ええ、また孫引きですいません。

Ubuntu 12.04 LTS でハイバネートを有効にする方法


...まぁなんて言うか簡単です。ほぼ端末オンリーで済みます。

この記事自体、自分用のメモですね、メモ。どうせリンク先が検索のトップページら辺に来るんだから、あまり役に立たないねぇ。(身も蓋もないこと書くな!)

2013年9月1日日曜日

キヤノンプリンタドライバをUbuntuにインストール

たまたま娘たちと花札のルールを調べていて、説明書も紛失してしまったことだし印刷しておこうという事になったんですが、そういえばキヤノン製ネットワーク対応のちょっとイイ複合機が来てから、Ubuntuはまだ印刷というものをしていなかったんです。

ということでドライバをインストールしようとググったわけです。


昔は、どのメーカーのものでもユーザーフォーラムとかにパッケージ化されたドライバへのリンクがあって、場合によっちゃあ置いてあるのがソースコードだったりして、一旦自前でビルドしたりしてたもんですが、もう大手メーカーは普通にLinux対応してる。しかもパッケージもディストリビューションに合わせて何種類か置いてあったりすることもある。まったくいい時代になりました。有り難く使わせて頂きます南無南無。


ということで手順です。


  1. http://cweb.canon.jp/e-support/software/index.html にアクセスし、商品カテゴリを選ぶ。
  2. うちの場合MGシリーズだったので、複合機を選ぶ。
  3. 『インクジェット複合機の機種一覧』から該当機種を選ぶ。
  4. 一番下に『Linux』があるのでそれを選択。
  5. ドライバ選択ページになるので、順番にやれば良い(今回はとりあえずプリンタだけ)
  6. 『使用許諾契約書』があるので読み、右カラムから都合のいいパッケージ(rpmかdebian)を選んでダウンロードする。
  7. ダウンロードした「cnijfilter-云々〜.tar.gz」とかなんとかいうファイルを展開して、中の「install.sh」を端末内で実行する。
  8. プリンタはローカルなのかネットワークにあるのか聞いてきます。我が家はネットワーク対応して(IPアドレスを割り当てて)ますので、"ネットワーク[2]"だったかな。入力しました。
  9. 入力に従いPCがプリンタを検索したら、またしても色々聞いてきてくれます。「電源を入れたらEnterしてください」とか「名前を決めてください」挙句「印刷する際は名前を選んでください」とか到れり尽くせりアル・ピトレリ。

という訳で、さくっと印刷出来てしまいます。しかも設定も自動でやってくれるという、なんというプラグ・アンド・プレイライクな。

とにかくこんな風に簡単なので、ググる手間が面倒だと思わない方は是非Ubuntuはじめとする今ドキのLinuxを試してみて欲しいところですね。