summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authoreinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-05-06 17:32:01 +0000
committereinhverfr <einhverfr@4979c152-3d1c-0410-bac9-87ea11338e46>2007-05-06 17:32:01 +0000
commit330bd3f5550a2d88ffdbded3fb387eaf7310e4e3 (patch)
tree235c468e69fcc1d32e4a59691b671cfa98f9a1ff /utils
parentb7dadc691a6fab6e3e256643921d5952ac4828a8 (diff)
Fixing fixme.pgsql
git-svn-id: https://ledger-smb.svn.sourceforge.net/svnroot/ledger-smb/branches/1.2@1129 4979c152-3d1c-0410-bac9-87ea11338e46
Diffstat (limited to 'utils')
-rw-r--r--utils/fixme/fixme.pgsql17
1 files changed, 10 insertions, 7 deletions
diff --git a/utils/fixme/fixme.pgsql b/utils/fixme/fixme.pgsql
index 7ee23b4d..28ba8183 100644
--- a/utils/fixme/fixme.pgsql
+++ b/utils/fixme/fixme.pgsql
@@ -25,11 +25,11 @@ insert into id_agregator (id, table_name) SELECT id, 'warehouse' from warehouse;
CREATE TEMPORARY VIEW id_view1 AS
SELECT id, count(*) AS num_rows FROM id_agregator
-GROUP BY id HAVING num_rows > 1;
+GROUP BY id HAVING count(*) > 1;
-select setval('id', select max(id) + 1 from id_agregator);
+select setval('id', (select max(id) + 1 from id_agregator));
-create function fix_dupes() RETURNS OPAQUE AS
+create function fix_dupes() RETURNS opaque AS
'
DECLARE
dupe_id id_agregator%ROWTYPE;
@@ -38,20 +38,23 @@ FOR dupe_id IN SELECT id FROM id_agregator
WHERE id IN (SELECT id FROM id_view1)
LOOP
EXECUTE ''UPDATE '' || dupe_id.table_name ||
- SET id = nextval(''''id'''') WHERE
+ '' SET id = nextval(''''id'''') WHERE
id = '' ||dupe_id.id;
UPDATE acc_trans SET trans_id = currval(''id'') WHERE
- id = '' ||dupe_id.id;
+ id = ||dupe_id.id;
INSERT INTO acc_trans (trans_id, amount, chart_id) VALUES (
- currval(''id''), '1', (
+ currval(''id''), ''1'', (
SELECT id FROM chart WHERE accno = ''1000000000''
)
);
INSERT INTO acc_trans (trans_id, amount, chart_id) VALUES (
- currval(''id''), '-1', (
+ currval(''id''), ''-1'', (
SELECT id FROM chart WHERE accno = ''1000000000''
)
);
+
+END LOOP;
+RETURN NULL;
END;
' LANGUAGE PLPGSQL;