Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Firebird, Interbase > Количество символов в переменной


Автор: Akella 13.4.2006, 10:46
smile НУЖНО УСТРОИТЬ ПРОВЕРКУ КОЛИЧЕСТВА СИМВОЛОВ В ВЫХОДНОМ ПАРАМЕТРЕ TELS_LIST


Код

SET TERM ^ ;

CREATE PROCEDURE SP_TELS_LIST_MEDIATORS (
    ID INTEGER)
RETURNS (
    TELS_LIST VARCHAR(255))
AS
DECLARE VARIABLE TEMP VARCHAR(20) CHARACTER SET WIN1251;
begin
  /* Procedure Text */
  TELS_LIST = '';
  For select TEL FROM PHONES where ID_MEDIATOR = :ID into :TEMP do
   begin



  //НУЖНО УСТРОИТЬ ПРОВЕРКУ КОЛИЧЕСТВА СИМВОЛОВ В ВЫХОДНОМ ПАРАМЕТРЕ TELS_LIST
    if ?????(:TELS_LIST) >= 255 then exit;



    TELS_LIST = :TEMP || ';' || :TELS_LIST;
    TEMP = '';
   end
   suspend;
end^

SET TERM ; ^

GRANT EXECUTE ON PROCEDURE SP_TELS_LIST_MEDIATORS TO SYSDBA;

Автор: Alex 13.4.2006, 11:02
Код

DECLARE EXTERNAL FUNCTION STRLEN
    CSTRING(32767)
RETURNS INTEGER BY VALUE
ENTRY_POINT 'IB_UDF_strlen' MODULE_NAME 'ib_udf'

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)