# HG changeset patch # User Raimund Renkert # Date 1481707308 -3600 # Node ID a4c1a9862a88b484b22b1504555d6b386e450d24 # Parent 3d83bcb02ee32370933d8d572b77564ea42b43f9# Parent 26197c2d936230f3f8af46e7f2a57899cc6ec766 merged diff -r 26197c2d9362 -r a4c1a9862a88 app/view/grid/Ortszuordnung.js --- a/app/view/grid/Ortszuordnung.js Thu Dec 08 15:56:41 2016 +0100 +++ b/app/view/grid/Ortszuordnung.js Wed Dec 14 10:21:48 2016 +0100 @@ -31,6 +31,7 @@ allowDeselect: true, initComponent: function() { + var me = this; this.dockedItems = [{ xtype: 'toolbar', dock: 'bottom', @@ -75,6 +76,21 @@ renderer: function(value) { var store = Ext.data.StoreManager.get('orte'); var record = store.getById(value); + if (!record) { + record = Ext.create('Lada.model.Ort'); + record.set('id', value); + store.add(record); + Lada.model.Ort.load(value, { + success: function(rec) { + record.beginEdit(); + for (key in rec.getData()) { + record.set(key, rec.getData()[key]); + } + record.endEdit(); + me.getView().refresh(); + } + }); + } return record.get('ortId'); } }, { @@ -84,8 +100,11 @@ renderer: function(value) { var store = Ext.data.StoreManager.get('orte'); var staaten = Ext.data.StoreManager.get('staaten'); - var record = - staaten.getById(store.getById(value).get('staatId')); + var ortRecord = store.getById(value); + if (!ortRecord || ortRecord.get('staatId') === '') { + return ''; + } + var record = staaten.getById(ortRecord.get('staatId')); return record.get('staatIso'); } }, { @@ -95,6 +114,9 @@ renderer: function(value) { var store = Ext.data.StoreManager.get('orte'); var record = store.getById(value); + if (!record || record.get('gemId') === '') { + return ''; + } return record.get('gemId'); } }, { @@ -106,6 +128,9 @@ var gemeinden = Ext.data.StoreManager.get('verwaltungseinheiten'); var record = store.getById(value); + if (!record || record.get('gemId') === '') { + return ''; + } var gemid = record.get('gemId'); var record2 = gemeinden.getById(gemid); return record2.get('bezeichnung'); @@ -117,6 +142,9 @@ renderer: function(value) { var store = Ext.data.StoreManager.get('orte'); var record = store.getById(value); + if (!record || record.get('anlageId') === '') { + return ''; + } return record.get('anlageId'); } }];