Добрый час суток! Имеется деталь,в таблице есть 1 запись при загрузке детали - все ок отображается. Когда добавляется новая запись в таблицу,нужно,чтобы это (вторая) запись тоже появилась(первая остается). Подскажите как это можно сделать? пока привязался к
this.getView().fireEvent("startrefresh", this); Но работает оно не совсем так,как нужно(не затрагивается все методы,при просто заходе на детали и много чего теряется). Переопределять все это дело довольно таки долго. Подскажите пожалуйста,какая альтернатива этому? Деталь своя. Пока пробую искать подобный функционал на стандартной детали,но пока не нахожу события,которое необходимо.(динамически добавлять запись ). Спасибо!
Нравится
me.fireAction('refresh', [me], 'doRefresh'); вот это тоже не совсем помогло... оно добавило новую запись(которая появилась в базе),но предыдущая информация введенная(на старой,самой первой записи) не подтягивается,генерируется просто новая такая запись по шаблону и добавляется та,которая добавилась в базу. они оба "чистые"(при том что в базе информация хранится).
Никита, здравствуйте!
А чем Вам не нравится свайп вниз? Я правильно понял, что Вы хотите автообновление детали при добавлении новой записи?
Вильшанский Дмитрий пишет:
Никита, здравствуйте!
А чем Вам не нравится свайп вниз? Я правильно понял, что Вы хотите автообновление детали при добавлении новой записи?
Добрый! Дело в том,что мне нужно чтобы при нажатии на клавишу добавлялась запись в бд,и сразу же появлялась на странице,добавлять то она добавляется но свайпить вниз не хочется,я попробовал "взять" функционал оттуда,но он не емулируется.. А вообще да,автообновление детали при добавлении новой записи. Деталь кодом добавлял свою,не стандартная(+GridPage+ PreviewPage так же
)
Никита Гальченко,
В базовой версии уже реализовано обновление записи при базовых действиях (например, сохранение или удаление).
Для примера можете посмотреть как реализовано при сохранении (нужный "кусок" кода выделил):
completeDataSaving: function(operation) {
this.callParent(arguments);
var pageHistoryItem = this.getPageHistoryItem();
var pageConfig = pageHistoryItem.getRawConfig();
var record = this.record;
var operationConfig = this.createPageOperationConfig(operation);
var useOptimisticEditing = this.useOptimisticEditing();
if (useOptimisticEditing) {
Terrasoft.PageNavigator.refreshPreviousPages(operationConfig, pageHistoryItem);
} else {
Terrasoft.PageNavigator.markPreviousPagesAsDirty(operationConfig);
}
var shouldOpenPreviewPageOnSave = this.shouldOpenPreviewPageOnSave();
if (shouldOpenPreviewPageOnSave) {
Terrasoft.util.openPreviewPage(this.self.Model, {recordId: record.getId(), isStartRecord: true,
direction: "right", operationConfig: operationConfig});
} else {
Terrasoft.Router.back();
}
if (pageConfig) {
Ext.callback(pageConfig.onDataSaved, this, [record]);
}
},
Вильшанский Дмитрий,
Спасибо большое! Буду разбираться!