整備記録

昨日、CBRの

  • バッテリー:YTX7L-BS

の交換を実施。
実施時の走行距離は、93,008km


今回は、会社の出先で、バッテリーがあがり、非常に困った状態になってしまった。


兆候はあって、月曜日の出社時に、バッテリーが弱ってて、エンジンがかかりきらず、車からブースターケーブルをつないでエンジンをかけたってことがあった。
その時は、まぁ、それなりに走るし、充電されるだろうと軽く思ってたんだけど、その認識が甘かった。


木曜の夜に、ドンキに行って、バッテリーを購入し、翌日に会社に持っていって駐輪場で交換。
無事にエンジンがかかり、事なきを得た。


バッテリー弱りの兆候を甘くてはダメだな。


ちなみに、バッテリーが15,000円近くした。
ネットで買えば、半額以下で買えるのに。
やっぱり、バッテリーは早めの交換を心がけないとなぁ

整備記録

先日、車検を受けたので、その時の記録

の交換を実施。
車検実施のときの走行距離、20,906km。


2回目の車検なんで、そこそこ消耗品の交換となってしまった。
タイヤが痛かった…


ディーラーの見積もりだと、タイヤ:13万、バッテリー:3万 だったんで、それらは
ネットで自分で買って、持込にして、半分以下に出来たのが、唯一の救い。


基本メニューをもうちょっと抑えたかったけど、ディーラーには持ち込みOKにしてもらったんで
そこはもう、ディーラーの案をそのままでOKに。


合計で、約20万円。
必要経費とはいえ、ちょっと痛い。


それにしても、5年で20,000キロぐらいしか走ってないのか。
点検のたびにぼやいてるけど、もう少し、距離を延ばしたいなぁ。

perlでxlsxデータを

仕事で、定型フォーマットのxlsxのデータを抽出する必要があって、
数十個だったら、無理やりコピペで頑張るかと思ったけど、4桁近い数のエクセルファイルだったので
手作業でやるのは諦めモード。


最初はマクロなりVBAでやらないといけないのかと思ってみたけど
perlなら、モジュールが公開されているのでもしやと思い、


適当にネットで調べて、Spreadsheet::ParseXLSX でやれば出来そうだったので
やってみたところ、一部の日本語に読み仮名がついてきてしまう事象が発生。


まさに、このリンク先の人と同じ事象
Perl (CPANモジュール) SpreadSheet::XLSX で読みがなまで読み出されてしまう問題 :: OMIMO.net/デザインとクラフトワークと、写真と映像と、少しのプログラム


この記事を書いたときには、xlsxのモジュールは、SpreadSheet::XLSX がCPANに合ったみたいだけど
結構古くて、2014/01時点では、もうなかった。


仕方がないので、ParseXLSX.pmのソースを追いかけて、以下のように修正したところ
読み仮名が出力されなくなったので、無事、解決。

package Spreadsheet::ParseXLSX;
BEGIN {
  $Spreadsheet::ParseXLSX::AUTHORITY = 'cpan:DOY';
}
{
  $Spreadsheet::ParseXLSX::VERSION = '0.09';
}
…
sub _parse_shared_strings {
    my $self = shift;
    my ($strings) = @_;

    return [
        map {
            my $node = $_;
            # XXX this discards information about formatting within cells
            # not sure how to represent that
            #{ Text => join('', map { $_->text } $node->find_nodes('.//t')) } # コメントアウト
            { Text => &remove_rph_text($node) }                               # 追加 
        } $strings->find_nodes('//si')
    ];
}

#このメソッドを追加
sub remove_rph_text {
    my $node = shift;

    my @t_tag = $node->find_nodes('.//t');
    my @rph_tag = $node->find_nodes('.//rPh');

    my $return_text = "";

    foreach (@t_tag){
        my $t_text = $_->text;

        my $flag = "1";

        LOOP:
        foreach (@rph_tag){
            my $rph_text = $_->text;
            if($rph_text eq $t_text){
                $flag = "0";
                last LOOP;
            }
        }

        $return_text = $return_text.$t_text if($flag);
    }

    return $return_text;
}


もっと綺麗に書ける人はいると思うけど、データ分析しないといけないし、やりたい事は
出来るようになったので満足。


久々に、プログラムを追っかけていったけど、やっぱり面白い。

整備記録

今日は、アテンザの一年点検。

  • エンジンオイル
  • エアコンフィルター

の交換と、もろもろの点検で特に異常なし。
点検時の走行距離、19097km。
この半年の走行距離は、2917km。


今回の点検時で、タイヤのひび割れが目立つんで、交換を勧められた。
けど、見積もりの値段のタイヤ代が、約13万。
サイズが225/45R18なんで、ディーラーの見積もりだと、やっぱりそれぐらいするのは、まぁ納得。


さすがにすぐには厳しいが、次の車検の時には考えないといけない。
ネット通販で買うしかないかなぁ。