ESQL/C-SQL-DATE FORMAT PROBLEMS
Posted in 1996
Topics: Stored Procedures & SPL, Connectivity: ESQL/C, 4GL & Embedded SQL, Security, Permissions & Auditing, Platform-Specific Issues
Ref. SPERFORM vs. CPERF (Date format not binding correctly)
From: Mario Estrada / LESCO, S.A., Guatemala City, Central America
lesco@guate.net / (502) 3318116 Fax (502) 3348447
Hi guys!
I have opened the case # 444411 with the informix-tech support =
department, but
i still don't have an answer for the following problem, I've read about =
a bug from the ESQL/C 7.10 when binding a date format, Does anybody can =
help me out with this problem ?
Product(s) and Version :
ESQL/C 7.11 UC2 DEVELOPMENT=20
ONLINE DS 7.12 UC2 DEVELOPMENT=20
I-SQL 6.03 UC1 DEVELOPMENT=20
I-4GL 6.03 UD1 DEVELOPMENT=20
ESQL/C RUNTIME 7.11 UC2
I-4GL 6.03 UC2 RUNTIME=20
I-SQL 6.03 UC1 RUNTIME
ONLINE DSA 7.12 UC3 RUNTIME
Hardware:SPARC MODELS (CLASS G)=20
Operating System and Version SOLARIS 2.5
Having the following table:
batch ( filename char(64, loaddate date, loadtime char(8),
btype smallint, re serial not null constraint "informix".N109_4)
REVOKE ALL ON "INFORMIX".BATCH FROM "PUBLIC";CREATE INDEX "INFORMIX".IX200_4 ON "INFORMIX".BATCH(BTYPE);
CREATE UNIQUE "INFORMIX".BMCLOG_REC ON "INFORMIX".BATCH(REC);
We created the following form :
DATABASE TIS
SCREEN SIZE 24 BY 80
{=20
FILE NAME [F000 ]
[F001 ]
LOADDATE [F002 ]
LOADTIME [F003 ]
BTYPE [F004 ]
REC [F005 ]
}
END
TABLES
BATCH =3D "INFORMIX".BATCH
ATTRIBUTES
F000 =3D BATCH.FILENAME[1,32];
F001 =3D BATCH.FILENAME[1,32];
F002 =3D BATCH.LOADDATE;
F003 =3D BATCH.LOADTIME;
F004 =3D BATCH.BTYPE;
F005 =3D BATCH.REC;
END
THE PROBLEMS ENCOUNTERED SO FAR ARE AS FOLLOWS:
1. IF WE MAKE AN ENTRY INTO THE DATABASE USING
A REGULAR 'SPERFORM' SCREEN, ANY DATE ENTERED
IS DISPLAYED DIFFERENTLY WHEN THE SAME RECORD
IS QUERIED USING THE SAME FORM RUN WITH A=20
'CPERF' PROGRAM. THIS PROBLEM OCCURS IN BOTH
DIRECTIONS.
EG. "02/09/1996" WAS ENTERED IN A DATE FIELD
USING A FORM RUN BY A 'CPERF' PROGRAM.
THIS DATE WAS DISPLAYED AS "02/03/1996"
WHEN QUERIED USING THE SAME SCREEN RUN
WITH 'SPERFORM'.
"03/09/1996" WAS ENTERED IN A DATE FIELD
USING A SCREEN RUN WITH 'SPERFORM'.
THIS DATE WAS DISPLAYED AS "65/13/1996"
WHEN QUERIED USING THE SAME SCREEN RUN
WITH 'CPERF'.
(NOTE: WE USE THE "DDMMYYYY" AND THE DBDATE
ENVIRONMENT VARIABLE IS SET TO DMY4/
WE KNOW THE PROBLEM IS NO WITH THE FORM FILE
SINCE WE USED THE SAME FORM FILE FOR ENTERING
AND VIEWING THE RECORD. THE ONLY THING THAT=20
CHANGED WAS THE METHOD OR RUNNING IT:
'SPERFORM' VS. A 'CPERF' PROGRAM.