Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.04.2014, 19:32   #1
Ericnex
Форумчанин
 
Регистрация: 07.04.2010
Сообщений: 218
По умолчанию Хранимая процедура добавления

Вызываю хранимую процедуру на добаваление. Процедура выполняется, но результат я вижу только после закрытия и открытия формы заново. В чем может быть проблема?
Код:
procedure TForm4.sBitBtn2Click(Sender: TObject);
begin
t:=Length(sEdit2.Text);
t1:=Length(sEdit3.Text);
if (sDBLookupComboBox1.KeyValue<>-1) and (sDBLookupComboBox2.KeyValue<>-1) and(sComboBox1.ItemIndex<>-1) and (sEdit2.Text<>'') and (sEdit3.Text<>'') and (sEdit2.Text[t] in ['0'..'9']) and (sEdit3.Text[t1] in ['0'..'9']) and (sEdit5.Text<>'') and (sEdit6.Text<>'') and (sEdit7.Text<>'') then
begin
if sComboBox1.ItemIndex=0 then
e:=100;
if sComboBox1.ItemIndex=1 then
e:=225;
if sComboBox1.ItemIndex=2 then
e:=325;
if sComboBox1.ItemIndex=3 then
e:=400;
if sComboBox1.ItemIndex=4 then
e:=675;
s:=strtofloat(sedit2.Text)* strtofloat(sedit3.Text);
kz:=strtofloat(sComboBox2.Text);
f:=e*s*kz;
p:=strtofloat(sedit5.Text);
summ:=strtofloat(sedit7.Text);
fs:=strtofloat(sedit6.Text);
n:=round(f/fs);
if (n<1) then
n:=1;
s1:=n*summ;
x:=n*p;
DM.ADOStoredProc7.ProcedureName:='INSERT_RASHET3;1';
DM.ADOStoredProc7.Prepared;
DM.ADOStoredProc7.Parameters.ParamByName('@Name_s').Value:=sDBLookUpComboBox2.Text;
DM.ADOStoredProc7.Parameters.ParamByName('@Osv').Value:=strtofloat(sLabel7.Caption);
DM.ADOStoredProc7.Parameters.ParamByName('@Kolvo_s').Value:=strtoint(sLabel8.Caption);
DM.ADOStoredProc7.Parameters.ParamByName('@Price').Value:=strtofloat(sLabel9.Caption);
DM.ADOStoredProc7.Parameters.ParamByName('@Moshost').Value:=strtofloat(sLabel10.Caption);
DM.ADOStoredProc7.ExecProc;
Form1.AdvAlertWindow1.Show;
Form1.AdvAlertWindow1.AutoSize:=true;
Form1.AdvAlertWindow1.AlertMessages.Add.Text.Text := '  ';
Form1.AdvAlertWindow1.AlertMessages.Items[0].Text.Text := 'Произведен расчет освещенности!';
Form1.AdvAlertWindow1.DisplayTime:=2000;
Form4.Show;
sBitBtn5.Enabled:=true;
sBitBtn6.Enabled:=true;
end
else
Showmessage('Введите  корректные данные во все поля!');
end;
Ericnex вне форума Ответить с цитированием
Старый 13.04.2014, 20:28   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

данные из базы принято загружать
eval вне форума Ответить с цитированием
Старый 13.04.2014, 20:37   #3
Ericnex
Форумчанин
 
Регистрация: 07.04.2010
Сообщений: 218
По умолчанию

Не понял? Я хочу произвести расчет и загрузить данные в таблицу. Что не так то?
Ericnex вне форума Ответить с цитированием
Старый 13.04.2014, 20:47   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Загрузил. А кто их с базы будет тянуть на клиента?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 13.04.2014, 20:57   #5
Ericnex
Форумчанин
 
Регистрация: 07.04.2010
Сообщений: 218
По умолчанию

это обычная процедура добавления. данные должны загрузиться в течении секунды
разобрался:
не хватало
Код:
DM.ADOQuery12.Close;
DM.ADOQuery12.Open;

Последний раз редактировалось Ericnex; 13.04.2014 в 21:03.
Ericnex вне форума Ответить с цитированием
Старый 13.04.2014, 21:02   #6
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
это обычная процедура добавления. данные должны загрузиться в течении секунды
Это здесь не причём. Для того, чтобы увидеть результат, необходимо обновить данные для просмотра. То есть, загрузить из БД на клиент обновлённую версию данных.
Сами по себе обновлённые данные не загрузятся.
Streletz вне форума Ответить с цитированием
Старый 13.04.2014, 21:18   #7
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
данные должны загрузиться в течении секунды
это долго, должно быть практически моментально
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хранимая процедура Muramidaza БД в Delphi 3 03.03.2014 15:01
Хранимая процедура mavlon_m SQL, базы данных 7 07.09.2013 15:15
Хранимая процедура. WizarD.89 SQL, базы данных 13 24.11.2012 16:17
хранимая процедура serg369 SQL, базы данных 4 07.02.2010 14:33
Хранимая процедура. nimf БД в Delphi 2 22.04.2008 13:16