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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2008, 09:52   #181
Sm1Le
Форумчанин
 
Аватар для Sm1Le
 
Регистрация: 31.10.2008
Сообщений: 500
По умолчанию

Скажи в каком Квери у тебя Заявка(Корзина), в Каком Склад(откуда минусовать) ...
Skype : UASm1Le.
Sm1Le вне форума Ответить с цитированием
Старый 15.12.2008, 10:12   #182
Mitriy08
Пользователь
 
Регистрация: 11.07.2008
Сообщений: 91
По умолчанию

Ух..... всетаки автор читает через строку....
Код:
With UpdateDelQuery do
begin
     Name := 'UpdateDelQuery';
     Connection:=DataModule1.ADOConnection1;
     Close;
end;
Код:
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add('Update zaiavkiQuery set amount=amount-'DataModule1.zaiavkiQueryamount.AsString +' Where IDSales = 'IntToStr(IDSales);
UpdateDelQuery.ExecSQL;
Код:
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add(''); // между ковычками надо написать запрос на вставку!!!!!!!!!
UpdateDelQuery.ExecSQL;
Код:
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add('delete from ИМЯ_ТАБЛИЦЫ_А_НЕ КВЕРИ!!!!');
UpdateDelQuery.ExecSQL;
ShowMessage('Товар продан');
Mitriy08 вне форума Ответить с цитированием
Старый 15.12.2008, 10:19   #183
opel.omega
Форумчанин
 
Регистрация: 18.11.2008
Сообщений: 188
По умолчанию

ребят счас задумался о вас и хочу вам сказать еще раз огромное человеческое спасибо за то что тратите свое время на меня
СПАСИБО!!!
Хакер - не преступник
Взлом - для искусства
Смысл - в свободе
opel.omega вне форума Ответить с цитированием
Старый 15.12.2008, 10:26   #184
opel.omega
Форумчанин
 
Регистрация: 18.11.2008
Сообщений: 188
По умолчанию

я исправил но ошибки все равно есть

Цитата:

[Error] Sales.pas(201): Undeclared identifier: 'RecordCount'
[Error] Sales.pas(204): Undeclared identifier: 'UpdateDelQuery'
[Error] Sales.pas(204): Missing operator or semicolon
[Error] Sales.pas(205): ')' expected but identifier 'DataModule1' found
[Error] Sales.pas(205): Missing operator or semicolon
[Error] Sales.pas(207): Undeclared identifier: 'Clear'
[Error] Sales.pas(210): Undeclared identifier: 'Next'
[Error] Sales.pas(212): Undeclared identifier: 'Clear'
[Error] Sales.pas(213): '(' expected but identifier 'from' found
[Error] Sales.pas(213): Not enough actual parameters
[Fatal Error] skt.dpr(14): Could not compile used unit 'Sales.pas'
Хакер - не преступник
Взлом - для искусства
Смысл - в свободе
opel.omega вне форума Ответить с цитированием
Старый 15.12.2008, 10:30   #185
Mitriy08
Пользователь
 
Регистрация: 11.07.2008
Сообщений: 91
По умолчанию

выкидывай исходники...

И все таки опиши структуру таблиц.....
Mitriy08 вне форума Ответить с цитированием
Старый 15.12.2008, 10:57   #186
фЁдОр
Форумчанин
 
Аватар для фЁдОр
 
Регистрация: 06.09.2007
Сообщений: 908
По умолчанию

Цитата:
Сообщение от Mitriy08 Посмотреть сообщение
И все таки опиши структуру таблиц.....
это впервую очередь необходимо. я уже писал, что сначала надо грамотно построить структуру БД, иначе потом путаница будет...
фЁдОр вне форума Ответить с цитированием
Старый 15.12.2008, 11:02   #187
opel.omega
Форумчанин
 
Регистрация: 18.11.2008
Сообщений: 188
По умолчанию

вот исходник [ATTACH]7241[/ATTACH]

что касается структуры
есть
виды детаелей
поставщики
склад
заявки
клиенты
продажи
поставщики связаны со складом, склад с заявкам (тоисть при продаже сначала добовляется товар в заявки потом если клиента все устраивает продается) заявка связаны с продажой и клиенты связаны с продажой
Вложения
Тип файла: rar скт.rar (436.5 Кб, 9 просмотров)
Хакер - не преступник
Взлом - для искусства
Смысл - в свободе
opel.omega вне форума Ответить с цитированием
Старый 15.12.2008, 11:11   #188
opel.omega
Форумчанин
 
Регистрация: 18.11.2008
Сообщений: 188
По умолчанию

VidiDetali виды деталей
sklad склад
postavsiki поставщики
zaiavki заявки
klienti клиенты
sales продажи

нужно при нажатии на продаже из заявок перенести все записи в продажу и отнять количество каждой детали от количества такой же детали на складе
Хакер - не преступник
Взлом - для искусства
Смысл - в свободе

Последний раз редактировалось opel.omega; 15.12.2008 в 11:14.
opel.omega вне форума Ответить с цитированием
Старый 15.12.2008, 12:04   #189
Mitriy08
Пользователь
 
Регистрация: 11.07.2008
Сообщений: 91
По умолчанию

Ну что поехали....
Первое:
Код:
for j:=0 to DataModule1.zaiavkiQuery.RecordCount - 1 do
begin
Это означает пробежаться по всем записям которые есть DataModule1.zaiavkiQuery (НЕ ЛЬЗЯ БЕГАТЬ ПО ПОЛЮ У ТЕБЯ БЫЛО zaiavkiQueryamount
Код:
UpdateDelQuery.SQL.Add('Update zaiavki set amount=amount-' +DataModule1.zaiavkiQueryamount.AsString +' Where IDSales = '+
DataModule1.zaiavkiQuery.FieldByName('IDSales').AsString )
У тебя не было объвленно пременной IDSales - так к полю обращаться не льзя!!!!
100 раз писал что в запросах учавствуют РЕАЛЬНЫЕ ТАБЛИЦЫ А НЕ КВЕРИ

Код:
DataModule1.zaiavkiQuery.Next;
Код:
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add('delete from zaiavki');
UpdateDelQuery.ExecSQL;
Код:
UpdateDelQuery.SQL.Clear;
По поводу:
Код:
UpdateDelQuery.SQL.Clear;
UpdateDelQuery.SQL.Add('');
UpdateDelQuery.ExecSQL;
Между ковычек должен быть текст ПРИМЕРНО ТАКОЙ
Код:
Insert Into ИМЯ_ТАБЛИЦЫ_РЕАЛЬНОЙ (ПЕРЕЧИСЛЕНИЕ ПОЛЕЙ ИЗ ТАБЛИЦЫ ПО КОТОРЫМ БУДЕШ ЗАНОСИТЬ ДАННЫЕ ЧЕРЕЗ ЗАПЯТУЮ) Values
(ПЕРЕЧИСЛЕНИЕ ЗНАЧЕНИЙ ПОЛЕЙ ЧЕРЕЗ ЗАПЯТУЮ)
Опиши поля в каждой таблице!!! И составим тебе запрос

И еще для понимая
Компонент TADOQuery - содержит результирующий набор данных, какого либо запроса и в запросах могут учавствовать несколько таблиц (реальных)
к полям можно обращаться по имени поля пример
Код:
DataModule1.MyQuery.FieldByName('МоеПоле').Value
- Сдесь "МоеПоле" - эт ореальное поле из таблицы
Можно обращаться по индексу (начинается с 0) перечисление идет в том порядке в каком ты селектиш поля
Пример
Код:
DataModule1.MyQuery.Fields[1].Value
- Сдес "1" - это второе поле которое учавствует в запросе

Последний раз редактировалось Mitriy08; 15.12.2008 в 12:31.
Mitriy08 вне форума Ответить с цитированием
Старый 15.12.2008, 13:31   #190
opel.omega
Форумчанин
 
Регистрация: 18.11.2008
Сообщений: 188
По умолчанию

так после ваших наиважнейших замечаний получилось

Код:
var
  j : Integer;
  UpdateDelQuery: TADOQuery;
begin
DataModule1.zaiavkiQuery.First;
UpdateDelQuery := TADOQuery.Create(Self);
With UpdateDelQuery do
begin
     Name := 'UpdateDelQuery';
     Connection:=DataModule1.ADOConnection1;
     Close;
end;
for j:=0 to DataModule1.zaiavkiQuery.RecordCount - 1 do
begin

DataModule1.zaiavkiQuery.Next;

UpdateDelQuery.SQL.Add('Update zaiavki set amount=amount-'
+DataModule1.zaiavkiQueryamount.AsString +' Where IDSales = '+
DataModule1.zaiavkiQuery.FieldByName('IDSales').AsString )

UpdateDelQuery.ExecSQL;
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add('zapros');
UpdateDelQuery.ExecSQL;
DataModule1.zaiavkiQuery.Next;
end;
UpdateDelQuery.Clear;
UpdateDelQuery.SQL.Add('delete from zaiavki');
UpdateDelQuery.ExecSQL;
ShowMessage('Товар продан');
UpdateDelQuery.Free;
end;
и несколько ошибок
Цитата:
[Error] Sales.pas(210): Missing operator or semicolon
[Error] Sales.pas(211): Undeclared identifier: 'Clear'
[Error] Sales.pas(216): Undeclared identifier: 'Clear'
[Fatal Error] skt.dpr(14): Could not compile used unit 'Sales.pas'
Хакер - не преступник
Взлом - для искусства
Смысл - в свободе
opel.omega вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi + Acces Artazzz БД в Delphi 5 19.06.2008 14:32
Поиск нескольких записей VenMaster БД в Delphi 1 14.06.2008 22:48
delphi & acces fluer БД в Delphi 4 17.02.2008 12:53
Сохранение нескольких записей из DbGrid в базу Canadec БД в Delphi 5 06.09.2007 14:26
добавления в готовую таблицу Strelka Microsoft Office Excel 1 09.03.2007 17:27