~openerp-community/openobject-addons/extra-trunk-esale_joomla

« back to all changes in this revision

Viewing changes to cci_account/report/aged_trial_balance.py

  • Committer: eLBati - Albatos
  • Date: 2010-08-31 07:17:33 UTC
  • mfrom: (4621.2.251)
  • Revision ID: lorenzo.battistini@albatos.com-20100831071733-fqhuh8oj4h6qv5n6
MERGED from extra-trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
40
40
 
41
41
    def _get_lines(self, form):
42
42
        res = []
43
 
 
44
 
        if form['category'] == 'Customer' or form['category'] == 'Supplier' :
45
 
            cat_id=pooler.get_pool(self.cr.dbname).get('res.partner.category').search(self.cr,self.uid,[('name','=',form['category'])])
46
 
            cat_id+=pooler.get_pool(self.cr.dbname).get('res.partner.category').search(self.cr,self.uid,[('parent_id','child_of',cat_id)])
47
 
        else:
48
 
            cat_id=pooler.get_pool(self.cr.dbname).get('res.partner.category').search(self.cr,self.uid,[('name','in',['Customer','Supplier'])])
49
 
            cat_id+=pooler.get_pool(self.cr.dbname).get('res.partner.category').search(self.cr,self.uid,[('parent_id','child_of',cat_id)])
50
 
 
51
 
        self.cr.execute('SELECT partner_id from res_partner_category_rel where category_id in ('+','.join(map(str,cat_id))+')')
52
 
        data=self.cr.fetchall()
53
 
        self.partner_ids=[]
54
 
        self.partner_ids=list(set([x[0] for x in data]))
55
 
 
56
43
        account_move_line_obj = pooler.get_pool(self.cr.dbname).get('account.move.line')
57
44
        line_query = account_move_line_obj._query_get(self.cr, self.uid, obj='line',
58
45
                context={'fiscalyear': form['fiscalyear']})
 
46
        cat = form['category']
 
47
        self.acc_type  = (cat == 'Supplier' and "('payable')") or (cat == 'Customer' and "('receivable')") or "'payable', 'receivable'"
59
48
        self.cr.execute("SELECT DISTINCT res_partner.id AS id, " \
60
49
                    "res_partner.name AS name " \
61
50
                "FROM res_partner, account_move_line AS line, account_account " \
62
51
                "WHERE (line.account_id=account_account.id) " \
63
 
                    "AND (line.reconcile_id IS NULL) " \
 
52
               #     "AND (line.reconcile_id IS NULL) " \
64
53
                    "AND (line.partner_id=res_partner.id) " \
65
54
                    "AND " + line_query + " " \
66
55
                    "AND (account_account.company_id = %s) " \
67
56
                    "AND account_account.active " \
68
 
                    "AND partner_id in ("+','.join(map(str,self.partner_ids))+")" \
69
57
                "ORDER BY res_partner.name", (form['company_id'],))
70
58
        partners = self.cr.dictfetchall()
71
59
        for partner in partners:
73
61
            self.cr.execute("SELECT SUM(debit-credit) " \
74
62
                    "FROM account_move_line AS line, account_account " \
75
63
                    "WHERE (line.account_id=account_account.id) " \
76
 
                        "AND (account_account.type IN ('payable','receivable')) " \
 
64
                        "AND (account_account.type IN (" + self.acc_type + ")) " \
77
65
                        "AND (date < %s) AND (partner_id=%s) " \
78
 
                        "AND (reconcile_id IS NULL) " \
 
66
#                        "AND (reconcile_id IS NULL) " \
79
67
                        "AND " + line_query + " " \
80
68
                        "AND (account_account.company_id = %s) " \
81
69
                        "AND account_account.active",
86
74
                self.cr.execute("SELECT SUM(debit-credit) " \
87
75
                        "FROM account_move_line AS line, account_account " \
88
76
                        "WHERE (line.account_id=account_account.id) " \
89
 
                            "AND (account_account.type IN ('payable','receivable')) " \
 
77
                            "AND (account_account.type IN (" + self.acc_type + ")) " \
90
78
                            "AND (date >= %s) AND (date <= %s) " \
91
79
                            "AND (partner_id = %s) " \
92
 
                            "AND (reconcile_id IS NULL) " \
 
80
#                            "AND (reconcile_id IS NULL) " \
93
81
                            "AND " + line_query + " " \
94
82
                            "AND (account_account.company_id = %s) " \
95
83
                            "AND account_account.active",
101
89
            self.cr.execute("SELECT SUM(debit-credit) " \
102
90
                    "FROM account_move_line AS line, account_account " \
103
91
                    "WHERE (line.account_id = account_account.id) " \
104
 
                        "AND (account_account.type IN ('payable','receivable')) " \
 
92
                        "AND (account_account.type IN (" + self.acc_type + ")) " \
105
93
                        "AND (partner_id = %s) " \
106
 
                        "AND (reconcile_id IS NULL) " \
 
94
#                        "AND (reconcile_id IS NULL) " \
107
95
                        "AND " + line_query + " " \
108
96
                        "AND (account_account.company_id = %s) " \
109
97
                        "AND account_account.active",
132
120
        self.cr.execute("SELECT SUM(debit - credit) " \
133
121
                "FROM account_move_line AS line, account_account " \
134
122
                "WHERE (line.account_id = account_account.id) " \
135
 
                    "AND (account_account.type IN ('payable', 'receivable')) "\
136
 
                    "AND reconcile_id IS NULL " \
 
123
                    "AND (account_account.type IN (" + self.acc_type + ")) " \
 
124
#                    "AND reconcile_id IS NULL " \
137
125
                    "AND partner_id is NOT NULL " \
138
126
                    "AND " + line_query + " " \
139
127
                    "AND (account_account.company_id = %s) " \
140
 
                    "AND partner_id in ("+','.join(map(str,self.partner_ids))+")" \
141
128
                    "AND account_account.active",
142
129
                    (company_id,))
143
130
        total = self.cr.fetchone()
150
137
        self.cr.execute("SELECT SUM(debit - credit) " \
151
138
                "FROM account_move_line AS line, account_account " \
152
139
                "WHERE (line.account_id = account_account.id) " \
153
 
                    "AND (account_account.type IN ('payable', 'receivable')) " \
154
 
                    "AND reconcile_id IS NULL " \
 
140
                    "AND (account_account.type IN (" + self.acc_type + ")) " \
 
141
#                    "AND reconcile_id IS NULL " \
155
142
                    "AND (date < %s) " \
156
143
                    "AND partner_id IS NOT NULL " \
157
144
                    "AND " + line_query + " " \
158
145
                    "AND (account_account.company_id = %s) " \
159
 
                    "AND partner_id in ("+','.join(map(str,self.partner_ids))+")" \
160
146
                    "AND account_account.active",
161
147
                    (date, company_id))
162
148
        before = self.cr.fetchone()
169
155
        self.cr.execute("SELECT SUM(debit - credit) " \
170
156
                "FROM account_move_line AS line, account_account " \
171
157
                "WHERE (line.account_id = account_account.id) " \
172
 
                    "AND (account_account.type IN ('payable', 'receivable')) " \
173
 
                    "AND reconcile_id IS NULL " \
 
158
                    "AND (account_account.type IN (" + self.acc_type + ")) " \
 
159
#                    "AND reconcile_id IS NULL " \
174
160
                    "AND (date >= %s) " \
175
161
                    "AND (date <= %s) " \
176
162
                    "AND partner_id IS NOT NULL " \
177
163
                    "AND " + line_query + " " \
178
164
                    "AND (account_account.company_id = %s) " \
179
 
                    "AND partner_id in ("+','.join(map(str,self.partner_ids))+")" \
180
165
                    "AND account_account.active",
181
166
                    (period['start'], period['stop'], company_id))
182
167
        period = self.cr.fetchone()