| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Foxpro/Clipper/Dbase > вычитание кол-ва нескольких записей |
| Автор: DANJAH 3.12.2009, 14:11 |
| суть проблемы такова! есть окно с таблицей склад! курсор из sql таблицы склад! есть ниже вторая временная локальная таблица ! в локальную сбрасывается несколько записей из склада! далее при нажатии кнопки все записи должны попадать в таблицу продаж и должен происходить вычет со склада по количеству! у меня все это делалось так в локальной БД 1.скидывалось в таблицу продаж! 2.через DO WHILE EOF() проходил по каждой записи временной таблицы, при этом искало(SEEK) её же на складе и отнимая количество! 3.и очистка таблицы я думаю что в сто раз можно это упростить! вот и спрашиваю можно ли? |
| Автор: Данкинг 3.12.2009, 14:17 |
| Что значит упростить и что именно упростить? Куда проще, чем находить записи через SEEK ? |
| Автор: DANJAH 3.12.2009, 14:28 |
| ну как то пачкой можно это сделать? без поиска записей например! без DO WHILE сделать например отношение один ко многим! т.е. много записей из временной таблицы взять количество и вычесть из склада! чтобы это пачкой как то обрабатывалось что ли! |
| Автор: Данкинг 3.12.2009, 14:39 |
| А, ну, если попробовать связать две таблицы по уникальному полю только, а затем REPLACE'ом заменить. |
| Автор: DANJAH 3.12.2009, 14:57 |
| точняк! буду пробовать! оченьхороший вариант! через SET RELATION ща попробую связать! а как то дальше по коду если один к одному стоит связь, то получается надо REPLACE sklad.kolvo WITH sklad.kolvo-temp.kolvo правильно я понял? |
| Автор: DANJAH 3.12.2009, 15:18 |
| чо то не пойму как связь сделать между ними вручную! склад висит на SQL сервере! таблица темп на локальном компе! через чо их связать то и еще по уникальному полю! |
| Автор: Данкинг 3.12.2009, 15:26 |
| Так если открыть и вьюху и таблицу? Одну в области 5, другую - в области 10, к примеру. |
| Автор: DANJAH 3.12.2009, 16:01 |
| с отношением вроде бы разобрался! при создании отношения он сам находит поля! реплэйс через DO WHILE опять делать или как? ничо не вкурю! |
| Автор: DANJAH 3.12.2009, 17:03 |
| вроде все получилось! |
| Автор: Данкинг 3.12.2009, 17:04 |
Почему? Replace .... all - все записи и заменятся. DANJAH, на здоровье. |