FldTypeHTML.ibeblock
execute ibeblock (
FType integer,
FSubType integer,
FLen integer,
FScale integer,
FSegmentSize integer,
FCharLen integer,
FPrecision integer,
SQLDialect integer = 3)
returns (TypeAsString varchar(200))
as
begin
TypeAsString = ´´;
if ((FCharLen = 0) or (FCharLen is NULL)) then
FCharLen = FLen;
if (FType = 261) then
TypeAsString = '<B>BLOB SUB_TYPE</B> ' || FSubType || ' <B>SEGMENT SIZE</B> ' || FSegmentSize;
else if (FType = 14) then
TypeAsString = '<B>CHAR</B>(' || FCharLen || ')';
else if (FType = 37) then
TypeAsString = '<B>VARCHAR</B>(' || FCharLen || ')';
else if (FType = 12) then
TypeAsString = '<B>DATE</B>';
else if (FType = 13) then
TypeAsString = '<B>TIME</B>';
else if (FType = 35) then
begin
if (SQLDialect = 3) then
TypeAsString = '<B>TIMESTAMP</B>';
else
TypeAsString = '<B>DATE</B>';
end
else if (FType in (7, 8, 27, 16)) then
begin
if ((FScale < 0) or (FSubType = 1) or (FSubType = 2)) then
begin
if (FSubType = 2) then
TypeAsString = '<B>DECIMAL</B>';
else
TypeAsString = '<B>NUMERIC</B>';
sPrec = FPrecision;
if (FPrecision is NULL) then
begin
if (FType = 7) then
sPrec = '4';
else if (FType = 8) then
sPrec = '9';
else if (FType = 27) then
sPrec = '15';
else if (FType = 16) then
sPrec = '18';
end
else
sPrec = FPrecision;
TypeAsString = TypeAsString || '(' || sPrec || ',' || (FScale * -1) || ')';
end
else if (FType = 7) then
TypeAsString = '<B>SMALLINT</B>';
else if (FType = 8) then
TypeAsString = '<B>INTEGER</B>';
else if (FType = 27) then
TypeAsString = '<B>DOUBLE PRECISION</B>';
else if (FType = 16) then
TypeAsString = '<B>BIGINT</B>';
end
else if (FType = 10) then
TypeAsString = '<B>FLOAT</B>';
suspend;
end
See also:
User Form functions
back to top of page
<< IBEBlock User Forms | IBEBlock | InputForm.ibeblock >>







