Report error when there's too few data columns
authorKarl O. Pinc <kop@karlpinc.com>
Mon, 18 Jan 2021 20:53:20 +0000 (14:53 -0600)
committerKarl O. Pinc <kop@karlpinc.com>
Mon, 18 Jan 2021 20:53:20 +0000 (14:53 -0600)
src/pgwui_bulk_upload/views/bulk_upload.py

index ae13dd1a145fb59f5d727b48cf951a96c8265ff5..9d0c9bf6110b3255bcf587a580c7fa87edc18a22 100644 (file)
@@ -37,6 +37,7 @@ import pgwui_core.exceptions as core_ex
 from pgwui_core.core import (
     UploadNullFileWTForm,
     UploadEngine,
+    ParameterExecutor,
     DataLineProcessor,
     UploadNullMixin,
     UploadDoubleFileForm,
@@ -89,7 +90,7 @@ class BulkUploadForm(UploadNullMixin, UploadDoubleFileForm):
         return super().write_response(response)
 
 
-class SaveBulkLine(DataLineProcessor):
+class SaveBulkLine(DataLineProcessor, ParameterExecutor):
     def __init__(self, ue, uh, insert_map):
         '''
         ue             UploadEngine instance
@@ -112,14 +113,12 @@ class SaveBulkLine(DataLineProcessor):
         filepath = data.filepath
         try:
             udl = thunk()
+            self.param_execute(self.insert_map[filepath], udl)
         except (core_ex.DataLineError, core_ex.DBError) as exp:
             relation = data.relation
             exp.color(map_description(filepath, relation),
                       filepath, relation)
             raise exp
-        try:
-            self.cur.execute(
-                self.insert_map[filepath], udl.tuples)
         except psycopg2.DatabaseError as exp:
             relation = data.relation
             myexp = core_ex.DBDataLineError(udl, exp)