Вниз
Скачать: CL | DM;

Как получить список полей в ХП в МС СКЛ 2005   Найти похожие ветки 

← →
Int23   (2009-05-13 12:31) [0]

Есть такая ХП


CREATE PROCEDURE dbo.Test23
  as
if getdate()<"2009-01-01"
 select 123 as F1,  23 as F2
else
 select 13 as F3,  123 as F4


Суть в том, что в зависимости от параметров возвращается разный состав полей. Я вызываю TDataSet.GetFieldNames, но мне возвращается первый список полей (F1,F2). Как получить список всех полей?


← →
Palladin ©   (2009-05-13 12:52) [1]

TDataSet.GetFieldNames получает список полей в вернувшемся наборе данных, на то что происходит в процедуре ему нет никакого дела.


← →
Ega23 ©   (2009-05-13 12:58) [2]


> Суть в том, что в зависимости от параметров возвращается
> разный состав полей. Я вызываю TDataSet.GetFieldNames, но
> мне возвращается первый список полей (F1,F2). Как получить
> список всех полей?


Заведи в ХП входной параметр @DateIn datetime ="2009-01-01"
Выполни её 2 раза - получи разный набор полей.


← →
Int23   (2009-05-13 13:04) [3]

у меня есть своя ИДЕ. Я делаю подстановщик кода. Есть ХП которая может возвращать разный набор полей. Я хочу униф. механизм


← →
Palladin ©   (2009-05-13 13:21) [4]

мало ли что ты хочешь... TDataSet - представляет собой конкретный набор данных от сервера, а не все его разные метафизические ревоплощения и вариации в каких то странных, недоступных понимаю TDataSet, условиях.


← →
Ega23 ©   (2009-05-13 14:24) [5]


> Я хочу униф. механизм


Чудес не бывает.


← →
Ega23 ©   (2009-05-13 14:26) [6]

function Foo(const Value : Integer) : TObject;
begin
 case Value of
   0 : Result := TStringList.Create;
   1 : Result := TADOConnection.Create(nil);
   2 : Result := TBitmap.Create;
   else
     Result := nil;
 end;
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.061 c
2-1267362292
Ufamag
2010-02-28 16:04
2010.08.27
Вывод HTML документа на печать (принтер)


4-1235053242
Franzy
2009-02-19 17:20
2010.08.27
Нужен пример CreateFileMapping()


3-1240484531
harisma
2009-04-23 15:02
2010.08.27
Результат выполнения команды RESTORE VERIFYONLY


11-1215682259
andreil
2008-07-10 13:30
2010.08.27
Как убрать рамку у окна только визуально?


2-1268992876
самдал
2010-03-19 13:01
2010.08.27
подпись Виндовс




   Наверх