summaryrefslogtreecommitdiffstats
authorDon Pellegrino <don@drexel.edu>2009-06-17 17:57:11 (GMT)
committer Don Pellegrino <don@drexel.edu>2009-06-17 17:57:11 (GMT)
commitd2d6dbcd7cce68b96c314dabe6f6fc9fd8990704 (patch) (unidiff)
tree3eb67adcc036d2830c956407b8573c8632acc66d
parent7fad2411ea4b5c1deb93541ea658079f8d148931 (diff)
downloadexp005-d2d6dbcd7cce68b96c314dabe6f6fc9fd8990704.zip
exp005-d2d6dbcd7cce68b96c314dabe6f6fc9fd8990704.tar.gz
exp005-d2d6dbcd7cce68b96c314dabe6f6fc9fd8990704.tar.bz2
Renamed selection_to_db to selsave to reduce the filename to eight
characters. This is necessary due to the limitation of the package name in DB2 for the binding. It will conflict with selection_from_db otherwise.
-rw-r--r--src/controller/selection_to_db.h9
-rw-r--r--src/controller/selection_to_db.sqc9
-rw-r--r--src/controller/selsave.h9
-rw-r--r--src/controller/selsave.sqc41
4 files changed, 56 insertions, 12 deletions
diff --git a/src/controller/selection_to_db.h b/src/controller/selection_to_db.h
deleted file mode 100644
index 4344e0b..0000000
--- a/src/controller/selection_to_db.h
+++ b/dev/null
@@ -1,9 +0,0 @@
1#ifndef SELECTION_TO_DB_H
2#define SELECTION_TO_DB_H
3
4/*
5 * Send the current selection from memory to the database.
6 */
7void selection_to_db (void);
8
9#endif // SELECTION_TO_DB_H
diff --git a/src/controller/selection_to_db.sqc b/src/controller/selection_to_db.sqc
index a6c91b9..0d7de7f 100644
--- a/src/controller/selection_to_db.sqc
+++ b/src/controller/selection_to_db.sqc
@@ -1,8 +1,9 @@
1#include "selection_to_db.h"1#include "selection_to_db.h"
2#include "../view/exp004state0.h"2#include "../view/exp004state0.h"
3#include <string.h>3#include <string.h>
44#include "../util/check_error.h"
5EXEC SQL INCLUDE sqlca;5#include "sqlca.h"
6extern struct sqlca sqlca;
67
7/*8/*
8 * A simple alias to make the code more readable.9 * A simple alias to make the code more readable.
@@ -22,7 +23,8 @@ selection_to_db (void)
22 * gi is defined as NOT NULL this will clear the entire table.23 * gi is defined as NOT NULL this will clear the entire table.
23 */24 */
24 EXEC SQL DELETE FROM vis_selection WHERE gi IS NOT NULL;25 EXEC SQL DELETE FROM vis_selection WHERE gi IS NOT NULL;
25 26 check_error (__FILE__, __LINE__);
27
26 for (unsigned int i = 0; i < ROWS; i++)28 for (unsigned int i = 0; i < ROWS; i++)
27 {29 {
28 if (S.selection[i] == true)30 if (S.selection[i] == true)
@@ -33,6 +35,7 @@ selection_to_db (void)
33 }35 }
3436
35 EXEC SQL COMMIT;37 EXEC SQL COMMIT;
38 check_error (__FILE__, __LINE__);
3639
37 return;40 return;
38}41}
diff --git a/src/controller/selsave.h b/src/controller/selsave.h
new file mode 100644
index 0000000..f5b8fa7
--- a/dev/null
+++ b/src/controller/selsave.h
@@ -0,0 +1,9 @@
1#ifndef SELSAVE_H
2#define SELSAVE_H
3
4/*
5 * Send the current selection from memory to the database.
6 */
7void selsave (void);
8
9#endif // SELSAVE_H
diff --git a/src/controller/selsave.sqc b/src/controller/selsave.sqc
new file mode 100644
index 0000000..97a73b2
--- a/dev/null
+++ b/src/controller/selsave.sqc
@@ -0,0 +1,41 @@
1#include "../util/check_error.h"
2#include "../view/exp004state0.h"
3#include "selsave.h"
4#include "sqlca.h"
5#include <string.h>
6extern struct sqlca sqlca;
7
8/*
9 * A simple alias to make the code more readable.
10 */
11#define S exp004state0
12
13void
14selsave (void)
15{
16 EXEC SQL BEGIN DECLARE SECTION;
17 char gi[255];
18 EXEC SQL END DECLARE SECTION;
19
20 /*
21 * WHERE gi IS NOT NULL is added to prevent the PRECOMPILE command
22 * from throwing a warning about modifying an entire table. Since
23 * gi is defined as NOT NULL this will clear the entire table.
24 */
25 EXEC SQL DELETE FROM vis_selection WHERE gi IS NOT NULL;
26 check_error (__FILE__, __LINE__);
27
28 for (unsigned int i = 0; i < ROWS; i++)
29 {
30 if (S.selection[i] == true)
31 {
32 strncpy (gi, S.gi_data[i] + 3, sizeof(gi));
33 EXEC SQL INSERT INTO vis_selection VALUES (:gi);
34 }
35 }
36
37 EXEC SQL COMMIT;
38 check_error (__FILE__, __LINE__);
39
40 return;
41}

Valid XHTML 1.0 Strict

Copyright © 2009 Don Pellegrino All Rights Reserved.