cube1us / IBM1410SMS

Database Program for capturing data from IBM SMS Automated Logic Diagrams and related database layer
GNU General Public License v3.0
0 stars 0 forks source link

Add panel by panel row / column validation information to panel table #54

Closed cube1us closed 4 years ago

cube1us commented 4 years ago

Add panel by panel row / column validation information to panel table.

Currently the panel table just has min/max rows and columns. Experience with class IBMSMSPackaging suggests that instead there ought to be a list of rows instead, that could be used by that class for validation (and perhaps cached in that class). For the columns, a max column is fine, as it currently exists. For rows a changed would be needed. Entry of those rows could be a comma-separated list in the datagrid view to avoid complexity, and either stored that way in the table (for simplicity) or used with a new table called validRows. Probably the former.

The IBM 1410 may be one of the most affected machines by this because of the variance between panels (e.g., some have a panel "8" which is a CE panel, and others do not.

Not currently a high priority item. Changing it would not be terribly complicated, but just isn't a priority right now.

cube1us commented 4 years ago

Also, as part of this, the following should be changed to use IBMSMSPackaging:

EditDiagramLogicBlockForm EditCableEdgeConnectorsBlockForm EditPanelsForm EditTieDownsForm ImportCardLocationChart

cube1us commented 4 years ago

Two new columns were added to the panel table: maxColumn and validRows. EditPanelsForm was changed to support them. EditCableEdgeConnectorsBlockForm was modified to use them. ImportCardLocationChart will NOT be changed - the editing code is being done such that it will accept as valid any existing row. EditTieDowns is NOT being changed - during cell validation it would have to find the corresponding panel - wayyy too much fuss for now.

Still have to do EditDiagramLogicBlockForm.

cube1us commented 4 years ago

EditDiagramLogicBlockForm now edits using this information.