Develop and Download Open Source Software

Browse Subversion Repository

Contents of /branches/MoneyImport/Ebank.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 205 - (show annotations) (download) (as text)
Sun May 18 04:21:59 2008 UTC (15 years, 10 months ago) by tmurakam
File MIME type: text/x-c++src
File size: 2696 byte(s)
move older MoneyImport

1 /*
2 * MoneyImport : Convert Bank csv file to MS Money OFX file.
3 *
4 * Copyright (c) 2001-2003 Takuya Murakami. All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 *
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 *
13 * 2. Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the distribution.
16 *
17 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
21 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
22 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
23 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
24 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 *
29 * $Id$
30 */
31
32 #include <vcl.h>
33 #pragma hdrstop
34 #include <stdio.h>
35 #include "Account.h"
36 #include "Transaction.h"
37 #include "Ebank.h"
38
39 //
40 // Ebank �A�J�E���g
41 //
42 EbankAccount::EbankAccount(void)
43 {
44 Ident = "Ebank";
45 BankName = "�C�[�o���N���s";
46 BankId = "0036";
47 }
48
49 TransactionList * EbankAccount::ReadFile(FILE *fp)
50 {
51 TransactionList *list = new EbankTransaction;
52 if (list->ReadCsv(fp) < 0) {
53 delete list;
54 return NULL;
55 }
56 return list;
57 }
58
59 //
60 // Ebank �g�����U�N�V�������X�g
61 //
62 Transaction *EbankTransaction::GenerateTransaction(int nrows, char **rows, int *err)
63 {
64 *err = 0;
65 if (nrows != 4) return NULL;
66
67 Transaction *trans = new Transaction;
68
69 /* ������,���o��(�~),�c��(�~),���o�������e*/
70 int date = atoi(rows[0]);
71 trans->date.year = date / 10000;
72 trans->date.month = (date % 10000) / 100;
73 trans->date.date = date % 100;
74
75 trans->date.hour = 0;
76 trans->date.minutes = 0;
77 trans->date.seconds = 0;
78
79 /* Transaction ID ���A���t���������������������������� */
80 trans->id = GenerateTransactionId(date);
81
82 trans->value = atol(rows[1]);
83 if (trans->value < 0) {
84 trans->SetTransactionType(rows[3], T_OUTGO);
85 } else {
86 trans->SetTransactionType(rows[3], T_INCOME);
87 }
88 trans->desc = utf8(rows[3]);
89 trans->balance = atol(rows[2]);
90
91 return trans;
92 }

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26