Добрый день.
У меня такая задача. Мне нужно посчитать суму оплаты из разделов счета, для конкретной заявки и поместить в соответствующие поле в разделе заявки. Для этого я при в методе init вызываю метод, который с помощью esq по id заявки проводит подсчет соответствующего поля.
Проблема заключается в том, что я не могу получить id заявки.
Вот код методов:
init: function() {
// Вызов родительской реализации метода init.
this.callParent(arguments);
// Инициализация миксина управления мультивалютностью.
this.mixins.MultiCurrencyEditUtilities.init.call(this);
debugger;
this.test1();
},
test1: function() {
debugger;
var scope = this;
var idApplication = this.get("Id");////здесь ошибка
var esqPaymentAmount = this.Ext.create("Terrasoft.EntitySchemaQuery", {
rootSchemaName: "Invoice"
});
esqPaymentAmount.addAggregationSchemaColumn("PaymentAmount", Terrasoft.AggregationType.SUM, "PaymentAmount", Terrasoft.AggregationEvalType.ALL);
var esqPaymentAmountFilter = esqPaymentAmount.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "CHApplicationId", "idApplication");
esqPaymentAmount.filters.add("esqPaymentAmountFilter", esqPaymentAmountFilter);
esqPaymentAmount.getEntityCollection(function (result) {
if (result.success) {
result.collection.each(function (item) {
this.set("CHPaymentAmount", item.get("PaymentAmount"));
});
}
}, this);
}
Подскажите, пожалуйста решение данной проблемы. Заранее благодарен за помощь)
Нравится
Добрый день, Вадим!
А почему вы решили именно в init вставлять свой метод для заполнения поля?
Мне кажется лучше будет переопределить не init, а onEntityInitialized. onEntityInitialized отрабатывает тогда, когда уже точно все поля прогрузились с заполненными значениями (если они есть, конечно).
У себя проверил, в init также не показывает id, а вот в onEntityInitialized все без проблем.