マイクロソフトのマネー(Money)に取り込めるOpen Finacial Exchangeファイル(.ofx)を便利に使っていた。りそな銀行明細ダウンロードのofxファイルが廃止されてしまった。

Microsoft Money Plus Sunset Deluxe版もダウンロード出来なくなったようだ。。。

現在使用している銀行やカード会社の内「三井住友銀行」「みずほ銀行」「JCBカード」は、ofxファイルが提供されている。
--- 2022/9/21 追記:三井住友銀行は、2021年7月5日のリニューアルから明細のofxファイルが廃止されていた。。。
「三菱UFJ銀行」「三菱UFJ信託銀行」「郵便貯金」「三井住友VISAカード」「みずほUCカード」「VIEWカード」は、Felica2MoneyのCSV読込を利用してofxファイルに変換してMoneyに取り込んでいる。
りそな銀行の明細もFelica2moneyで変換する為変換定義ファイルを作ってみた。
(1)りそな銀行の「テキストデータダウンロードファイル」
「テキストデータ」って何?と疑問に思いつつダウンロードしてみた。「csv」ファイルだった。
「明細」と「合計」行がある。「合計」行は不要。「明細」行に「支払」と「入金」欄がある。
(2)Felica2moneyのcsv読込定義ファイルを作る
定義ファイルの「format」について詳細な説明が無いので、行頭の「明細」を指定する事で「合計」行の読み飛ばしを期待。2種類の「format」定義を理解できるか不明だが設定してみた。
結果、「合計」行の「取扱日付」欄が空値のため読み込み時に「エラー」が発生する。
「合計」行を削除して読み込むと、2行定義した「format」は、どちらも解釈されていないようで、「明細が一件もありません」エラーが発生する。「format」は、「支払」の「format」とし、明細データの「入金」行は、金額データを「負」に変換する事にした。「format」定義内の「Dummy」は、この欄を読み飛ばすと定義されている。「明細」や「支払」を指定しても解釈されていないようだ。「Dummy」扱いのようだ。
(3)データ変換スクリプト
macOSのコンソールで実行する。
行の先頭に「合計」があったら削除。「取引名」欄に「入金」があったら「金額」欄の値を負に変更。
「三井住友銀行 明細csvファイル用 Felica2moneyのcsv変換定義ファイル」
「ゆうちょ銀行 明細csvファイル用 Felica2moneyのcsv変換定義ファイル」

Microsoft Money Plus Sunset Deluxe版もダウンロード出来なくなったようだ。。。

現在使用している銀行やカード会社の内「
--- 2022/9/21 追記:三井住友銀行は、2021年7月5日のリニューアルから明細のofxファイルが廃止されていた。。。
「三菱UFJ銀行」「三菱UFJ信託銀行」「郵便貯金」「三井住友VISAカード」「みずほUCカード」「VIEWカード」は、Felica2MoneyのCSV読込を利用してofxファイルに変換してMoneyに取り込んでいる。
りそな銀行の明細もFelica2moneyで変換する為変換定義ファイルを作ってみた。
(1)りそな銀行の「テキストデータダウンロードファイル」
「テキストデータ」って何?と疑問に思いつつダウンロードしてみた。「csv」ファイルだった。
20220916160942-sample.csv
レコード区分,年,月,日,時,分,連絡先名,金融機関名,支店名,口座番号区分,口座種別,口座番号,再送表示,取引名,取扱日付 年,取扱日付 月,取扱日付 日,金額,取引後残高,摘要,コメント
明細,2022,09,16,16,09,ナナシノ ゴンベ,りそな銀行,東京中央支店,口座番号,普通,1234567,,支払,2022,08,01,29000,27601618,税金等 固定資産税,
明細,2022,09,16,16,09,ナナシノ ゴンベ,りそな銀行,東京中央支店,口座番号,普通,1234567,,入金,2022,08,13,71,27514280,利息 04-08-12マデ,
明細,2022,09,16,16,09,ナナシノ ゴンベ,りそな銀行,東京中央支店,口座番号,普通,1234567,,入金,2022,08,15,436895,27951175,給与 りそな銀行,
合計,2022,09,16,16,09,ナナシノ ゴンベ,りそな銀行,東京中央支店,口座番号,普通,1234567,,残高,,,,,27809779,,
(2)Felica2moneyのcsv読込定義ファイルを作る
定義ファイルの「format」について詳細な説明が無いので、行頭の「明細」を指定する事で「合計」行の読み飛ばしを期待。2種類の「format」定義を理解できるか不明だが設定してみた。
RisonaCSV.xml
<?xml version="1.0" encoding="UTF-8"?>
<CsvRules>
<Version>20220916.01</Version>
<Rule>
<Ident>RisonaBank</Ident>
<Name>りそな銀行</Name>
<BankId>0010</BankId>
<FirstLine>レコード区分,年,月,日,時,分,連絡先名,金融機関名,支店名,口座番号区分,口座種別,口座番号,再送表示,取引名,取扱日付 年,取扱日付 月,取扱日付 日,金額,取引後残高,摘要,コメント</FirstLine>
<Format>明細,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,支払,Year,Month,Day,Outgo,Balance,Desc,Memo</Format>
<Format>明細,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,Dummy,入金,Year,Month,Day,Income,Balance,Desc,Memo</Format>
<Order>Ascent</Order>
</Rule>
</CsvRules>
「合計」行を削除して読み込むと、2行定義した「format」は、どちらも解釈されていないようで、「明細が一件もありません」エラーが発生する。「format」は、「支払」の「format」とし、明細データの「入金」行は、金額データを「負」に変換する事にした。「format」定義内の「Dummy」は、この欄を読み飛ばすと定義されている。「明細」や「支払」を指定しても解釈されていないようだ。「Dummy」扱いのようだ。
(3)データ変換スクリプト
macOSのコンソールで実行する。
行の先頭に「合計」があったら削除。「取引名」欄に「入金」があったら「金額」欄の値を負に変更。
risona-conv.sh ファイル名.csv
#!/bin/bash
cat $1 | iconv -f sjis -t utf8 | grep -v "^合計" | sed -e "s/^\(.*,入金,[0-9]*,[0-9]*,[0-9]*\),\(.*\),\(.*\)$/\1,-\2,\3/"|iconv -f utf8 -t sjis > mod$1
「三井住友銀行 明細csvファイル用 Felica2moneyのcsv変換定義ファイル」
「ゆうちょ銀行 明細csvファイル用 Felica2moneyのcsv変換定義ファイル」