Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];

Вниз

Тип Boolean в InterBase   Найти похожие ветки 

 
Konuhov sergey   (2002-04-18 19:02) [0]

Насколько я понял, в IB6 тоже нет типа Bool.
А можно ли написать внешнюю процедуру, которая будет принимать переменную типа bool в параметрах. Необходимо передать результат выражения типа "a<5".


 
Reindeer Moss Eater   (2002-04-18 19:09) [1]

Передавай
Integer( a < 5 )


 
Konuhov sergey   (2002-04-19 16:35) [2]

А разве в IB будет работать такое приведение типа?


 
Konuhov sergey   (2002-04-19 16:36) [3]

А разве в IB будет работать такое приведение типа?


 
Konuhov sergey   (2002-04-19 16:36) [4]

А разве в IB будет работать такое приведение типа?


 
Reindeer Moss Eater   (2002-04-19 18:34) [5]

А разве спрашивалось про процедуру в IB?


 
Konuhov sergey   (2002-04-22 15:25) [6]

Вопрос был о внешней процедуре для IB.
Но dедь вызывать то ее требуется из SQL.


 
Johnmen   (2002-04-22 16:21) [7]

>..внешней процедуре для IB...

А что же тогда внутренняя ?


 
Konuhov sergey   (2002-04-23 17:35) [8]

Вопрос был о внешних функциях, которые хранятся в отдельном
dll-модуле. Причем тут внутренние.


 
zx   (2002-04-23 17:45) [9]

Вы тут о ib6 или о dll разговариваете???


 
Digitman   (2002-04-24 08:48) [10]

в UDF :

function CompareTwoInteger(var i1, i2: Integer): WordBool;
begin
Result := i1 > i2;
end;

в ISQL :

DECLARE EXTERNAL FUNCTION CompareTwoInteger
INTEGER,
INTEGER
RETURNS SMALLINT
ENTRY_POINT "CompareTwoInteger" MODULE_NAME "myudflib.dll";

CREATE PROCEDURE COMPARE
(I1 INTEGER, I2 INTEGER)
RETURNS (CMPRESULT SMALLINT)
AS
BEGIN
CMPRESULT = CompareTwoInteger(I1, I2);
END


 
Praco   (2002-04-24 10:50) [11]

> Digitman © (24.04.02 08:48)
Не пойдет. Вопрос был "принимать переменную типа bool в параметрах". А в функции CompareTwoInteger нет смысла. Это можно сделать в SQL.
> Konuhov sergey
"А можно ли написать внешнюю процедуру, которая будет принимать переменную типа bool в параметрах. Необходимо передать результат выражения типа "a<5"".

в SQL
IF a < 5 THEN i = 1
ELSE i = 0;
ExternalFunc(i);
...

в UDF
if Boolean(i) then ...

Вопрос был в этом?




 
Digitman   (2002-04-24 14:19) [12]

>Praco
Может, я не понял, но к чему тогда вот это уточнение :
>>"Необходимо передать результат выражения типа "a<5". ??
Какая разница - что с чем сравнивать : "a" с "5" или слона с моськой ? Речь-то не о сравнении чего-то там с чем-то, а о том, как принять/передать/интерпретировать булево значение )

в UDF :

function SomeFunction(var Value: LongBool): WordBool;
begin
...
if Value then
Result := ...
else
Result := ...
end;

в ISQL :

DECLARE EXTERNAL FUNCTION SomeFunction
INTEGER
RETURNS SMALLINT
ENTRY_POINT "SomeFunction" MODULE_NAME "myudflib.dll";

CREATE PROCEDURE SOME_SP
(I1 INTEGER, I2 INTEGER)
RETURNS (CMPRESULT SMALLINT)
AS
BEGIN
CMPRESULT = SomeFunction(I1 - I2);
IF (CMPRESULT <> 0) THEN ...
END







Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
1-64748
gera-killer
2002-05-07 12:24
2002.05.20
Помогите с Tmemo


1-64599
Windeus
2002-05-05 12:13
2002.05.20
Win->Koi, Koi->Win


1-64699
mike.dld
2002-05-06 14:20
2002.05.20
Delphi 3


1-64689
Windeus
2002-05-05 12:14
2002.05.20
Запуск программы открытием файлов


4-64877
Gayrus
2002-03-13 16:29
2002.05.20
ExeName





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский