Форум: "Начинающим";
Текущий архив: 2008.07.27;
Скачать: [xml.tar.bz2];
ВнизЗаписи в таблице Найти похожие ветки
← →
Муслик (2008-06-27 13:48) [0]Помогите разобратся с проблемой.
Есть три таблицы.
С первой таблицы я по двойному клику добавляю во вторую позиции и количество(позиции все разные) после того как всё сделано мне нужно в третью добавить данные из второй(это без проблем)
Проблема:
после я таблицу очищаю и заполняю новую, как мне добавить кол-во товара к существующему товару если товар из второй таблицы равен третьей, если товара не существует в третьей таблице добавить новый
← →
Sergey13 © (2008-06-27 13:53) [1]> [0] Муслик (27.06.08 13:48)
> Помогите разобратся с проблемой.
Это уголовное дело. 8-)
← →
clickmaker © (2008-06-27 13:54) [2]if Table3.Locate("TovarID", TovarID, []) then
увеличить количество
else
добавить товар
← →
Муслик (2008-06-27 14:10) [3]а если товар уже есть там
← →
Palladin © (2008-06-27 14:50) [4]тогда увеличить количество
тебе с lewka-serdceed надо скооперироваться, вы с ним вдвоем горы свернете...
← →
Муслик (2008-06-27 15:02) [5]почесу не срабатывает
if form6.Table1.Locate("Naimen", "Naimen", [loPartialKey]) then
showmessage("Существует");
← →
Поросенок Винни-Пух © (2008-06-27 15:06) [6]срабатывает
← →
Поросенок Винни-Пух © (2008-06-27 15:08) [7]шоумессаджа не видишь?
это потому что локейт срабатывает как надо.
← →
Муслик (2008-06-27 15:32) [8]но если я добавляю другое наименование которое не существует он всё равно не срабатывает
← →
Поросенок Винни-Пух © (2008-06-27 15:34) [9]ты хочешь чтобы локейт всегда возвращал true вне зависимости от того, найдена запись или нет?
← →
Поросенок Винни-Пух © (2008-06-27 15:35) [10]if True or form6.Table1.Locate("Naimen", "Naimen", [loPartialKey]) then
showmessage("Существует");
← →
Игорь Шевченко © (2008-06-27 16:36) [11]Поросенок Винни-Пух © (27.06.08 15:35) [10]
locate можно смело убрать
← →
Поросенок Винни-Пух © (2008-06-27 16:38) [12]if form6.Table1.Locate("Naimen", "Naimen", [loPartialKey]) or True then
showmessage("Существует");
Вдруг по честному найдет
:)
← →
Муслик (2008-06-30 10:34) [13]в последнем случае теперь прилюбом раскладе возвращает истину, даже если нет там такой позиции:(
← →
Поросенок Винни-Пух © (2008-06-30 10:37) [14]А ты не этого хотел?
← →
Муслик (2008-06-30 10:38) [15]Ye Ну впринципе мне нужно добится того что если товар в списке уже есть то брибавить только количество а если нет прибавить и товар и количество
← →
Поросенок Винни-Пух © (2008-06-30 10:39) [16]почесу не срабатывает
if form6.Table1.Locate("Naimen", "Naimen", [loPartialKey]) then
showmessage("Существует");
Потому что локейт ничего не нашел.
← →
Муслик (2008-06-30 10:43) [17]Та колучается
if form6.Table1.Locate("Naimen", "Naimen", [loPartialKey]) or True then
showmessage("Не существует"); end;
Хотя я добавляю товар который там уже есть но всё равно пишет
← →
Поросенок Винни-Пух © (2008-06-30 10:47) [18]Если ты силой мысли определяешь, что запись там точно есть, то ты локейт зачем используешь?
Если же те программист, то используй локейт, но только верь тому что он возвращает.
Если же ты маг и волшебник то тебе локейт не нужен.
← →
Муслик (2008-06-30 10:52) [19]не ну полчается я локейтом проверку то делаю, и почему он мне возвращает что нет записи а она то есть
← →
Поросенок Винни-Пух © (2008-06-30 10:55) [20]Ну о чем я и говорю.
Зачем тебе тупой и неправильный локейт, если ты сам наперед знаешь, что запись там точно есть?
← →
Муслик (2008-06-30 10:56) [21]проблема в том:
к примеру там 3 наименования товара как мне к определённому товару добавить количество а не ко всему вот что яф не могу разобратся вот и использую локейт
← →
Поросенок Винни-Пух © (2008-06-30 10:57) [22]В той таблице есть запись, содержащая в поле "Naimen" значение "Naimen"?
Ты вне зависимости от того, что там было добавлено ранее всегда ищешь строку "Naimen" ???
Голова!
← →
Муслик (2008-06-30 11:00) [23]я предпологаю что так надо?
if form6.Table1.Locate("Naimen", table1.Fields.Fields[1].Value, [loPartialKey]) or True then
showmessage("Не Существует"); end;
← →
Поросенок Винни-Пух © (2008-06-30 11:02) [24]я предпологаю что так надо?
Надо верить локейту, если используешь локейт.
Вот это точно надо.
← →
Dennis I. Komarov © (2008-06-30 11:11) [25]Пора орешник возраждать... Соскучился я по падающим шарам :)
← →
Поросенок Винни-Пух © (2008-06-30 11:11) [26]if form6.Table1.Locate("Naimen", table1.Fields.Fields[1].Value, [loPartialKey]) then
showmessage("Не Существует");
else
with form6.Table1 do
begin
ShowMessage("Нету там такой записи");
First;
while not eof do
begin
ShowMessage("Ищу это:" + table1.Fields.Fields[1].Value + #13#10 + "а там это :" + FieldByName("Naimen").AsString)
Next;
end;
end;
← →
Dennis I. Komarov © (2008-06-30 11:13) [27]> [26] Поросенок Винни-Пух © (30.06.08 11:11)
> showmessage("Не Существует");
Тут ты погорячился :)
← →
Муслик (2008-06-30 11:17) [28]Не срабатывает, почему?
if form6.Table1.Locate("Naimen", table1.Fields.Fields[2].Value, [loPartialKey]) or True then
begin
showmessage("Ñóùåñòâóåò");
form6.Table1.Edit;
form6.Table1.Append;
form6.table1.fields.fields[2].value:=table3.fields.fields[2].value;
form6.Table1.Post;
end
else
form6.Table1.Edit;
form6.table1.fields.fields[2].value:=table3.fields.fields[2].value;
form6.table1.fields.fields[3].value:=table3.fields.fields[3].value;
form6.Table1.post;
end;
← →
Поросенок Винни-Пух © (2008-06-30 11:18) [29]Удалено модератором
← →
Муслик (2008-06-30 11:20) [30]Удалено модератором
← →
Муслик (2008-06-30 11:21) [31]Поросенок Винни-Пух ©
Спасибо за пример... вроде бы разобрался
← →
Dennis I. Komarov © (2008-06-30 11:23) [32]> [30] Муслик (30.06.08 11:20)
> в делфи нулёвый не отрицаю
Так за каким тогда тебе таблицы? Ищи букварь...
← →
Муслик (2008-06-30 11:26) [33]Dennis I. Komarov © ну вот потихоньку и учу.
Поросенок Винни-Пух ©
Скажи а почему шаумесадж показывает только слово до пробела полностью строку не показывает тоесть
"кабель силовой" покажет только кабель
← →
Муслик (2008-06-30 11:31) [34]ой извеняюсь! всё нормально
← →
Поросенок Винни-Пух © (2008-06-30 11:32) [35]потому что после пробела в строке ничего нет
← →
Dennis I. Komarov © (2008-06-30 11:39) [36]> ну вот потихоньку и учу.
не верю
← →
Муслик (2008-06-30 12:17) [37]ну почему несрабатывает вотэтот код
if form6.Table1.Locate("Naimen", table1.Fields.Fields[1].Value, [loPartialKey]) then
begin
with form6.Table1 do
begin
if form6.Table1.Fields.Fields[3].IsNull then
exit
else
begin
ShowMessage("Åñòü òàêàÿ çàïèñü");
edit;
fields[4].Value:=form1.Table3.Fields.Fields[4].Value;;
post;
end;
end;
end
else
with form6.Table1 do
begin
edit;
append;
fields[2].Value:=form1.Table3.Fields.Fields[2].Value;
fields[4].Value:=form1.Table3.Fields.Fields[4].Value;
post;
while not eof do
begin
ShowMessage("Èùó ýòî:" + form1.table3.Fields.Fields[2].Value + #13#10 + "à òàì ýòî :" + FieldByName("Naimen").AsString);
Next;
end;
end
end;
← →
Dennis I. Komarov © (2008-06-30 12:23) [38]> [37] Муслик (30.06.08 12:17)
Чем докажешь?
← →
Муслик (2008-06-30 12:24) [39]впринципе срабатывает но неправильно срабатывает а ошибку найти не могу
← →
ЮЮ © (2008-06-30 12:25) [40]поставь брэкпоинт и пройдись по коду с плмощью F8.
И что значит "не спабатывает"? Кот должен работать, а не срабатывать.
Страницы: 1 2 3 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.07.27;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.008 c