CANPAN ブログ検索
Loading
  • もっと見る
<< 2019年06月 >>
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
カテゴリアーカイブ
最新記事
最新コメント
「AOYAMAカード」の処理 [2016年03月21日(Mon)]
「AOYAMAカード」の処理


 「LIFE-Web Desk」から「AOYAMAカード」の請求が来ました。

 今月は、「カード年会費」のみでした。

 「LIFE-Web Desk」から「AOYAMAカード」の利用代金明細をCSVでダウンロードしました。

 データの一部を書くと、次のようになっていました。

明細No.,契約,回数,利用日,利用先,利用金額,ATM利用料,手数料,支払総額,支払回数/何回目,当月支払金額,支払残高
0000,null,null,,カード年会費,1350,,,,,,

 「FeliCa2Money」の「AOYAMAカード」設定ファイルは、次のようになっています。


AOYAMA_Card
AOYAMAカード
明細No.,契約,回数,利用日,利用先,利用金額,ATM利用料,手数料,支払総額,支払回数/何回目,当月支払金額,支払残高
Dummy,Dummy,Dummy,Date,Desc,Outgo,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy
Ascent


 ところが、「FeliCa2Money」を使って「Money」に取り込むと、取り込むデータが無いと表示しました。

 ダウンロードした「CSVファイル」をよく見ると、「利用日」が空欄になっていました。

 「出光カード」も同じように日付が空欄のデータがあったため、「秀丸エディタのマクロ」で日付を挿入したことを思い出しました。

 ということで、「秀丸エディタのマクロ」を使って、ダウンロードした「CSVファイル」のデータに「利用日」の日付を挿入することにしました。

 私は、「カード年会費」の「利用日」の日付を「2月28日」としましたが、「お支払い日」の前日の「3月某日」でも構わないと思います。

AOYAMAカード.MAC
// ファイル開始
setcompatiblemode 0x0F;
gofiletop;
$hizuke = gettext(0,0,100,0);
$hizuke_Y = midstr($hizuke,7,4);
$hizuke_M = midstr($hizuke,13,2);
if ( $hizuke_M == "03" ) {
$hizuke = $hizuke_Y + "/02/28";
} else {
$hizuke = "";
}

down 20;
while (code != eof)
{
#nowLine = lineno;
$txtline = gettext( 0, #nowLine-1, 100, #nowLine-1 );
$txtline = midstr($txtline,15,1);
if ( $txtline == "," ) {
right 15;
insert $hizuke;
}
golineend;
right;
}
// ファイル終わり
データの例
0000,null,null,,カード年会費,1350,,,,,,

マクロの説明
・マクロ実行時が「3月」ならば、「利用日」が空欄で「カード年会費」の請求があるとみなす
・「カード年会費」の「利用日」を、マクロ実行時の年の「2月28日」(固定)とする
・「利用日」の最初の文字が「,」ならば「利用日」を空欄とみなし、空欄に「某年2月28日」を挿入する

 「if ( $txtline == "," )」の代わりに「if ( $txtline == "カード年会費" )」とすることもできると思います。
 そのためには、「$txtline = midstr($txtline,15,1);」の「,15,1」を変える必要があり、実際に「$txtline」の中身を「message($txtline);」で表示しながら微調整することになります。


Posted by 山田 雄一郎 at 12:25
この記事のURL
http://blog.canpan.info/hofu_nanboku/archive/307
プロフィール

山田 雄一郎さんの画像
山田 雄一郎
プロフィール
ブログ
リンク集
http://blog.canpan.info/hofu_nanboku/index1_0.rdf
http://blog.canpan.info/hofu_nanboku/index2_0.xml