diff --git a/AlgebraicDataflowArchitectureModel/models/TableUI.model b/AlgebraicDataflowArchitectureModel/models/TableUI.model index 8019ee0..defb520 100644 --- a/AlgebraicDataflowArchitectureModel/models/TableUI.model +++ b/AlgebraicDataflowArchitectureModel/models/TableUI.model @@ -91,7 +91,7 @@ channel EventHandler3(curScId: Str, wid: Str) { in screenTemplates.{curScId="000"}.widgets.{wid="002"}.data(curData: Map, handleEvent3(nextData, wid)) = nextData - out screen.widgets.{wid}.data(curData: Map, handleEvent3(nextData, wid)) = nextData + out screen.widgets.{wid="002"}.data(curData: Map, handleEvent3(nextData, wid)) = nextData } channel addAccount { diff --git a/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/SwingPresenter.java b/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/SwingPresenter.java index ba29908..bdd76dd 100644 --- a/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/SwingPresenter.java +++ b/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/SwingPresenter.java @@ -335,11 +335,21 @@ if(primaryKeyVisible) { tableDatas[dataCount][0] = dataKey; for(int j = 1; j < columns.length; j++) { - tableDatas[dataCount][j] = (String)((Constant) rowData.get(columns[j])).getValue(); + Constant cellValue = (Constant) rowData.get(columns[j]); + if(cellValue == null) { + tableDatas[dataCount][j] = "error"; + } else { + tableDatas[dataCount][j] = (String)((Constant) rowData.get(columns[j])).getValue(); + } } } else { for(int j = 0; j < columns.length; j++) { - tableDatas[dataCount][j] = (String)((Constant) rowData.get(columns[j])).getValue(); + Constant cellValue = (Constant) rowData.get(columns[j]); + if(cellValue == null) { + tableDatas[dataCount][j] = "error"; + } else { + tableDatas[dataCount][j] = (String)((Constant) rowData.get(columns[j])).getValue(); + } } } dataCount++; diff --git a/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/TableDataReceiver.java b/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/TableDataReceiver.java index fc5883b..f2ad1c0 100644 --- a/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/TableDataReceiver.java +++ b/AlgebraicDataflowArchitectureModel/src/simulator/interfaces/swing/TableDataReceiver.java @@ -27,6 +27,7 @@ @Override public void onReceiveFromModel(Event event, SystemState nextSystemState) { Expression message = event.getMessage(); + System.out.println(message); if(message instanceof Term) { MapTerm data = (MapTerm)((Term) message).getChild(0); int colNum = columns.length + (primaryKeyVisible ? 1 : 0);