Как программно обновить поля на странице после обновления записи в базе данных (с помощью ESQ)
Вопрос
Как программно обновить поля на странице после обновления записи в базе данных (с помощью ESQ)?
Ответ
Программно обновить значение поля можно при помощи метода this.set(‘ColumnName’, ‘NewValue’). Рекомендуем обновлять поле в функции обратного вызова с предварительной проверкой на удачность обновления в базе данных.
Пример кода:
someMethod: function(){ var value = this.get('UsrRequired'); var updateQuery = Ext.create("Terrasoft.UpdateQuery", { rootSchemaName: "UsrRuleTest"}); var filters = updateQuery.filters; filters.addItem(this.Terrasoft.createColumnFilterWithParameter( this.Terrasoft.ComparisonType.EQUAL, "Id", 'IdValue’)); updateQuery.setParameterValue("UsrSomething", value, this.Terrasoft.DataValueType.TEXT); updateQuery.execute(function(result){ if(result.success) this.set('UsrTest0', value); }, this); }
Добрый день! попробовал по вашему коду сделать у себя выходит ошибка( ругается на функцию set
stack: TypeError: this.set is not a function
at https://8-crm-dev.kmf.kz/0/configuration/5e6b668831cc1cda80b5afd046dae2…-
вот мой код
updateQuery.execute(
function(result) {
if(result.success) {this.set("UsrOwner",UsrOwnerVisa);}
}
)
; }, this);