[Progress Communities] [Progress OpenEdge ABL] Forum Post: Error using DF utility

Status
Not open for further replies.
D

dbeavon

Guest
We have an interesting error using prodict/load_df.p. It is loading in schema that was exported from an 11.6 database, and loading it into an 11.3 database (I mention the versions although I don't think it is particularly relevant as you will see below). The error is like so: OpenEdge keywords can not be object names. It happened when a table was created via a sql92 ddl statement. Then later, for an automated build, the entire database was exported with prodict/dump_df.p, and it was failed to be recreated elsewhere with prodict/load_df.p. Apparently while the related schema was just fine for most purposes, the "load_df.p" utility doesn't like it. I'm not finding the error message in my google searches so I thought I would ask here in the forums. Here is the full error output from load_df.p The following errors and/or warnings occurred while loading ABC.df into database XYZ on 08/07/18 at 12:00. ** Error during ADD FIELD desc ** ** Line 10162 ADD FIELD desc OF brn_bank AS character OpenEdge keywords can not be object names. And here is the table, as created via sql92: CREATE TABLE PUB."brn_bank"( "bank" VARCHAR (20) DEFAULT '' PRO_ORDER 10 PRO_CASE_SENSITIVE 'N' PRO_FORMAT 'x(8)' PRO_LABEL 'BankCode' PRO_COL_LABEL 'Bank' PRO_HELP 'Enter Bank Code' , "branch" VARCHAR (20) DEFAULT '' PRO_ORDER 20 PRO_CASE_SENSITIVE 'N' PRO_FORMAT 'x(4)' PRO_LABEL 'Branch' PRO_COL_LABEL 'Branch' , "ourrecid" VARCHAR (16) DEFAULT '' PRO_ORDER 30 PRO_CASE_SENSITIVE 'N' PRO_FORMAT 'x(16)' PRO_LABEL 'OURRECID' PRO_COL_LABEL 'OURRECID' , "owner" INTEGER DEFAULT '0' PRO_ORDER 40 PRO_FORMAT '99' PRO_LABEL 'OWNER' PRO_COL_LABEL 'OWNER' , "desc" VARCHAR (20) DEFAULT '' PRO_ORDER 50 PRO_CASE_SENSITIVE 'N' PRO_FORMAT 'x(40)' PRO_LABEL 'Desc' PRO_COL_LABEL 'Desc' ) AREA "misc128" PRO_HIDDEN 'N' PRO_DESCRIPTION 'Bank Branch Table' PRO_DUMP_NAME 'brn_bank' ; GRANT ALL ON PUB."brn_bank" TO PUBLIC; CREATE INDEX "ourrecid" ON PUB."brn_bank" ("ourrecid" ASC) AREA "misc128_idx" PRO_DESCRIPTION '' PRO_ACTIVE 'y'; CREATE UNIQUE INDEX "brn_bank_01" ON PUB."brn_bank" ("bank" ASC , "branch" ASC) AREA "misc128_idx" PRO_DESCRIPTION '' PRO_ACTIVE 'y'; ALTER TABLE PUB."brn_bank" SET PRO_DEFAULT_INDEX "brn_bank_01"; COMMIT; And here is the DF, as generated by dump_df: ADD TABLE "brn_bank" AREA "misc128" DESCRIPTION "Bank Branch Table" DUMP-NAME "brn_bank" ADD FIELD "bank" OF "brn_bank" AS character FORMAT "x(8)" INITIAL "" LABEL "BankCode" POSITION 2 MAX-WIDTH 20 COLUMN-LABEL "Bank" HELP "Enter Bank Code" ORDER 10 ADD FIELD "branch" OF "brn_bank" AS character FORMAT "x(4)" INITIAL "" LABEL "Branch" POSITION 3 MAX-WIDTH 20 COLUMN-LABEL "Branch" ORDER 20 ADD FIELD "ourrecid" OF "brn_bank" AS character FORMAT "x(16)" INITIAL "" LABEL "OURRECID" POSITION 4 MAX-WIDTH 16 COLUMN-LABEL "OURRECID" ORDER 30 ADD FIELD "owner" OF "brn_bank" AS integer FORMAT "99" INITIAL "0" LABEL "OWNER" POSITION 5 MAX-WIDTH 4 COLUMN-LABEL "OWNER" ORDER 40 ADD FIELD "desc" OF "brn_bank" AS character FORMAT "x(40)" INITIAL "" LABEL "Desc" POSITION 6 MAX-WIDTH 20 COLUMN-LABEL "Desc" ORDER 50 ADD INDEX "brn_bank_01" ON "brn_bank" AREA "misc128_idx" UNIQUE PRIMARY INDEX-FIELD "bank" ASCENDING INDEX-FIELD "branch" ASCENDING ADD INDEX "ourrecid" ON "brn_bank" AREA "misc128_idx" INDEX-FIELD "ourrecid" ASCENDING Hope this is all clear. I guess the moral of the story is that we should not use reserved keywords for columns in our OpenEdge database. It would be nice if OpenEdge would restrict us earlier so we wouldn't run into unexpected problems down the road...

Continue reading...
 
Status
Not open for further replies.
Top