client
Last change
on this file since af48a00 was
074fac7,
checked in by Alex Dehnert <adehnert@…>, 15 years ago
|
Refactor mass account adding from add_gl_accounts
|
-
Property mode set to
100644
|
File size:
872 bytes
|
Line | |
---|
1 | import finance_core.models |
---|
2 | |
---|
3 | class NullWrite: |
---|
4 | def write(self, string, ): |
---|
5 | pass |
---|
6 | nullwrite = NullWrite() |
---|
7 | |
---|
8 | def mass_add_accounts(base, accounts, writeto=nullwrite): |
---|
9 | for name, number in accounts: |
---|
10 | try: |
---|
11 | elem = finance_core.models.BudgetArea.get_by_pathstr(name, base=base, ) |
---|
12 | except KeyError: |
---|
13 | writeto.write("Adding %s (%s)\n" % (name, number,),) |
---|
14 | # It doesn't exist |
---|
15 | if '.' in name: |
---|
16 | parts = name.rsplit('.', 1) |
---|
17 | path = parts[0] |
---|
18 | name = parts[1] |
---|
19 | parent = finance_core.models.BudgetArea.get_by_pathstr(path, base=base, ) |
---|
20 | else: |
---|
21 | parent = base |
---|
22 | child = parent.add_child(name=name, account_number=number, always=True, ) |
---|
23 | else: |
---|
24 | writeto.write("%s (%s) already present\n" % (name, number,)) |
---|
25 | |
---|
Note: See
TracBrowser
for help on using the repository browser.