Record data exceeding 32000

TomBascom

Curmudgeon
If it really needs to be that long use a BLOB or a CLOB for the field (or fields) which are taking up all of the space..
 

TomBascom

Curmudgeon
Binary Large Object or Character Large Object.

Use "blob" or "clob" as the data type when adding a field and you will be prompted for additional information...
 

tamhas

ProgressTalk.com Sponsor
LONGCHAR is the program datatype which corresponds to CLOB database field type. Don't remember if that is in 9.1e since that was so long ago.
 
I have only these data types to play with;

CHARACTER CHARACTER data consists of numbers, letters, and special characters.
COM-HANDLE A COM-HANDLE is a handle to a COM object (ActiveX Automation object or ActiveX Control).
DATE DATE fields contain dates.
DECIMAL DECIMAL data consists of decimal numbers up to 50 digits in length including up to 10 digits to the right of the decimal point.
HANDLE A HANDLE is a pointer to a Progress object. NOTE: HANDLE and WIDGET-HANDLE can be assigned to each other and used interchangeably.
INTEGER INTEGER data consists of whole numbers.
LOGICAL LOGICAL data evaluates to TRUE or FALSE (or YES or NO).
MEMPTR A MEMPTR contains the handle of a memory location.
RAW RAW data can be any kind of data, even data from non-Progress databases. It is not converted in any way.
RECID A RECID is an unique internal identifier of the current database record. NOTE: RECID is supported mainly for backward compatibility. For most applications, use ROWID instead.
ROWID A ROWID is an unique internal identifier of the current database record.
WIDGET-HANDLE A WIDGET-HANDLE is a pointer to a Progress widget.NOTE: HANDLE and WIDGET-HANDLE can be assigned to each other and used interchangeably.
 

tamhas

ProgressTalk.com Sponsor
Like I say, I don't remember when it got added ... based on the BLOB support which is supposedly in 9.1e, I would have thought it was there, but it may have been later. Look in the DB for the datatypes supported there.

If you don't have LONGCHAR, you can't have a character variable longer than 32K. Period. End of Story. You only option at that point is to divide up the desired contents into multiple 30K pieces. But, you can't store multiple 30K pieces in one record, either. So, each of those pieces will have to be in its own record.

Another reason to move to a reasonably modern version of Progress.
 

TomBascom

Curmudgeon
And the sum of the sizes of all of your variables is limited to 32000 as well.

Which means that splitting a 60k variable into 3 20k variables will not work. You will need to put the values into database or temp-table fields.
 
Top