[ADD]Possibility to select no journal and/or no period
bzr revid: dle@openerp.com-20121122142859-dornyupukdeaya5y
This commit is contained in:
parent
a880787a84
commit
0a5e921dff
|
@ -1428,7 +1428,6 @@ class account_move_line(osv.osv):
|
|||
ng = dict(self.pool.get('account.journal').name_search(cr,uid,'',[]))
|
||||
ids = ng.keys()
|
||||
result = []
|
||||
print ng
|
||||
for journal in self.pool.get('account.journal').browse(cr, uid, ids, context=context):
|
||||
result.append((journal.id,ng[journal.id],journal.type,
|
||||
bool(journal.currency),bool(journal.analytic_journal_id)))
|
||||
|
|
|
@ -991,6 +991,8 @@
|
|||
<field eval="4" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="red:state == 'draft';black:state == 'valid'" string="Journal Items" create="true" on_write="on_create_write" version="7.0" editable="top">
|
||||
<field name="journal_id" invisible="context.get('journal_id',False)"/>
|
||||
<field name="period_id" invisible="context.get('period_id',False)"/>
|
||||
<field name="date"/>
|
||||
<field name="name"/>
|
||||
<field name="ref"/>
|
||||
|
@ -1008,8 +1010,6 @@
|
|||
<field name="amount_currency" readonly="True" invisible="not context.get('currency',False)"/>
|
||||
<field name="currency_id" readonly="True" invisible="not context.get('currency',False)" />
|
||||
<field name="state" />
|
||||
<field name="journal_id" invisible="1"/>
|
||||
<field name="period_id" invisible="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
@ -28,11 +28,11 @@ openerp.account.quickadd = function (instance) {
|
|||
this.$el.parent().prepend(QWeb.render("AccountMoveLineQuickAdd", {widget: this}));
|
||||
|
||||
this.$el.parent().find('.oe_account_select_journal').change(function() {
|
||||
self.current_journal = parseInt(this.value);
|
||||
self.current_journal = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.$el.parent().find('.oe_account_select_period').change(function() {
|
||||
self.current_period = parseInt(this.value);
|
||||
self.current_period = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.on('edit:after', this, function () {
|
||||
|
@ -43,6 +43,11 @@ openerp.account.quickadd = function (instance) {
|
|||
self.$el.parent().find('.oe_account_select_journal').removeAttr('disabled');
|
||||
self.$el.parent().find('.oe_account_select_period').removeAttr('disabled');
|
||||
});
|
||||
var mod = new instance.web.Model("account.move.line", self.dataset.context, self.dataset.domain);
|
||||
mod.call("default_get", [['journal_id','period_id'],self.dataset.context]).then(function(result) {
|
||||
self.current_period = result['period_id'];
|
||||
self.current_journal = result['journal_id'];
|
||||
});
|
||||
return tmp;
|
||||
},
|
||||
do_search: function(domain, context, group_by) {
|
||||
|
@ -56,15 +61,10 @@ openerp.account.quickadd = function (instance) {
|
|||
self.journals = result;
|
||||
}),mod.call("list_periods", []).then(function(result) {
|
||||
self.periods = result;
|
||||
}),mod.call("default_get", [['journal_id','period_id'],self.last_context]).then(function(result) {
|
||||
self.default_period = result['period_id'];
|
||||
self.default_journal = result['journal_id'];
|
||||
})).then(function () {
|
||||
self.current_journal = self.current_journal === null ? self.default_journal : self.current_journal;
|
||||
self.current_period = self.current_period === null ? self.default_period :self.current_period;
|
||||
var o;
|
||||
//self.$('.oe_account_select_journal',self.$el.parent())[0].children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_journal').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_journal').append(new Option('', ''));
|
||||
for (var i = 0;i < self.journals.length;i++){
|
||||
o = new Option(self.journals[i][1], self.journals[i][0]);
|
||||
if (self.journals[i][0] === self.current_journal){
|
||||
|
@ -76,6 +76,7 @@ openerp.account.quickadd = function (instance) {
|
|||
self.$el.parent().find('.oe_account_select_journal').append(o);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_period').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_period').append(new Option('', ''));
|
||||
for (var i = 0;i < self.periods.length;i++){
|
||||
o = new Option(self.periods[i][1], self.periods[i][0]);
|
||||
self.$el.parent().find('.oe_account_select_period').append(o);
|
||||
|
@ -86,19 +87,15 @@ openerp.account.quickadd = function (instance) {
|
|||
},
|
||||
search_by_journal_period: function() {
|
||||
var self = this;
|
||||
|
||||
var compoundDomain = new instance.web.CompoundDomain(self.last_domain,
|
||||
[
|
||||
["journal_id", "=", self.current_journal],
|
||||
["period_id", "=", self.current_period]
|
||||
]);
|
||||
self.last_context["journal_id"] = self.current_journal;
|
||||
self.last_context["period_id"] = self.current_period;
|
||||
var domain = [];
|
||||
if (self.current_journal !== null) domain.push(["journal_id", "=", self.current_journal]);
|
||||
if (self.current_period !== null) domain.push(["period_id", "=", self.current_period]);
|
||||
self.last_context["journal_id"] = self.current_journal === null ? false : self.current_journal;
|
||||
self.last_context["period_id"] = self.current_period === null ? false : self.current_period;
|
||||
self.last_context["journal_type"] = self.current_journal_type;
|
||||
self.last_context["currency"] = self.current_journal_currency;
|
||||
self.last_context["analytic_journal_id"] = self.current_journal_analytic;
|
||||
var compoundContext = self.last_context;
|
||||
return self.old_search(compoundDomain, compoundContext, self.last_group_by);
|
||||
return self.old_search(new instance.web.CompoundDomain(self.last_domain, domain), self.last_context, self.last_group_by);
|
||||
},
|
||||
});
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue