Hi,

I have a complicated problem and I'm running out of ideas to solve it.

I'll try to describe it shortly:

I have a D4 app (which uses BDE and SQL Links to connect to an

Informix DS 7.30 DB Server) wich previews a QuickReport 3.0.8 Prof.

report.

On this app. I have a form for editing table data on which one of its

columns has 2 decimal places. The DB column is of type DECIMAL:

CREATE TABLE informix.rh_rf_item_sopval (

item_sop CHAR(4) NOT NULL,

codrest CHAR(1) NOT NULL,

valor_sop DECIMAL(8,2) NOT NULL,

data_act DATE NOT NULL,

codoper CHAR(8) NOT NULL

) EXTENT SIZE 16 NEXT SIZE 16 LOCK MODE ROW

Delphi and BDE sees this column as:

ODS: SQL Data Out: INFORMIX - Column = 3, Name = valor_sop, Type =

fldFLOAT, Precision = 8, Scale = 2, Data = 0.000000 Process ID:

$00000408.

THE PROBLEM IS:

The decimal places are correctly stored on the DB server. The 2

relevant decimal places appear on DBgrids and DBedits correctly.

After I preview the report (QR 3.0.8) and press a button wich exports

the report to PDF (via Pragnaan export filters) and sends an e-mail

(via MAPI services, MapiLogon, MapiSendMail and MapiLogoff), the

decimal places on DBgrids and DBedits do disappear (values begin to be

retrieved TRUNCATED):

0.01 becomes 0.00, 1.55 becomes 1 and so on.

During this process, there are 3 DLLs being loaded (2 from Pragnaan

and 1 from MAPI services I presume):

CONTAB32.DLL load

ROUT66AB.DLL load

IMM32.DL load

CONTAB32.DLL unload

ROUT66AB.DLL unload

The only way to see the decimal places is to close the program and

reexecute it!

Has anyone experienced such a strange situation like this?

You can e-mail me directly to XXXX@XXXXX.COM after

removing the dashes and the no spam part on this e-mail.

THX in advance for any help on this.

P.Silva

On another NG someone suggested that this could be a display only

problem but it is not the case.

I hope so, because debugging via assembly can be the next step to

go!...

Values on "SQL monitor" come truncated (Precision = 2 but 0.01 on the

DBMS comes as 0.00 and is shown on grids as "0.00").

The problem seems to arise from the client part of Informix (or the

SQL Link SQLINF32.DLL) but I'm running out of ideas. This happens when

the outlook "choose profile" dialog appears. If this dialog fails to

appear the problem won't arise. If the dialog appears and is cancelled

the problem happens. I guess I'll follow someone's advice (break code

or reproduce code on an empty program).

Thx for any feedback.

P. Silva

____________________

P.S.: You can e-mail me directly to XXXX@XXXXX.COM after

removing the dashes and the no spam part on this e-mail.

1. Subtracting two 2-decimal place numbers gives result 13-decimal places?

2. Text box formatted to General Number with 2 decimal places NOT allowing the decimal place.

3. Displaying a decimal with 2 decimal places (ie currency!)

4. FIXED 2 DECIMAL PLACES, MUST ENTER ALL ZEROES AFTER DECIMAL POINT.

5. Subtracting two 2-decimal place numbers gives result 13-decimal pl

6. Does field have to be decimal to store decimal places

7. Commas and decimal places to signify decimal point

8. Exporting Number with Decimals to Text Rounds to 1 decimal place

9. MaskedTextBox - How to input a decimal number with two decimal places

10. Converting 2-place decimal value to floating point decimal number with leading zero

11. Decimal place formatting button doesn't work when some cells already have no decimals

12. Change a # w/decimal places to no decimals, 13 char's, w/leading 0

13. truncating a decimal to 2 decimal places??

14. extra decimal places when merging a currency field with 2 decimal.

15. Formatting a number, placing the decimal in the proper place

2 post • Page:**1** of **1**