|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Не знаю, как сделать вот такую штуку: Есть две таблицы: таблица material с колонками code_material(код материала) и the_price(цена), таблица o_order с колонками id_mat(код материала), kol(количество) и id_clients(код клиента). В новую(созданую) таблицу d_order хочу записать два значения: id_clients, собственно из таблицы o_order и total как kol*the_price, если id_mat и code_material - совпадут. Помогите пожалуйста. Вот мои жалкие попытки это сделать: thisform.refresh() t1='' t2='' t3='' t4='' t5='' USE o_order.dbf go bottom t1=ALLTRIM(id_clients) t2=ALLTRIM(id_mat) t3=ALLTRIM(kol) USE USE material.dbf go bottom IF ALLTRIM(code_material)==t2 t4=ALLTRIM(the_price) t5=t3*t4 ENDIF USE USE d_order.dbf append blank replace id_clients with t1 replace total with t5 USE ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 01:19 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Alucard_070892, а вот такое не устроит: SELECT id_client, kol*the_price AS total FROM material,o_order WHERE material.code_material=o_order.id_mat INTO TABLE d_order а? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 02:57 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
А при нажатии на кнопку, как это будет выглядеть? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 11:55 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Alucard_070892, а где у Вас в постановке задачи про "кнопку" ? "Кнопка" - подразумевает форму, и либо grid, либо browse во внешнем окошке - это уже все на Ваше усмотрение, нет? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 12:21 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Alucard_070892Не знаю, как сделать вот такую штуку: Есть две таблицы: таблица material с колонками code_material(код материала) и the_price(цена), таблица o_order с колонками id_mat(код материала), kol(количество) и id_clients(код клиента). В новую(созданую) таблицу d_order хочу записать два значения: id_clients, собственно из таблицы o_order и total как kol*the_price, если id_mat и code_material - совпадут. Помогите пожалуйста. Вот мои жалкие попытки это сделать: thisform.refresh() t1='' t2='' t3='' t4='' t5='' USE o_order.dbf go bottom t1=ALLTRIM(id_clients) t2=ALLTRIM(id_mat) t3=ALLTRIM(kol) USE USE material.dbf go bottom IF ALLTRIM(code_material)==t2 t4=ALLTRIM(the_price) t5=t3*t4 ENDIF USE USE d_order.dbf append blank replace id_clients with t1 replace total with t5 USE 1. Зачем два раза подряд USE? Боитесь, что в одной области отктроется две таблицы? Хелп по команде Use читать не пробовали? А обдумать ее действие? 2. Если все данные строковые, о чем можно судить по бесконечным alltrim(), то какой результат ожидатеся от умножения строк t5=t3*t4 ? 3. Зачем постоянно таблицы открываются/закрываются в одной рабочей области, если областей много и открыть таблицы сожно только один раз и не заниматься мазохизмом? Чтобы команд было попоблльше и программа выглядела посолидней? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 12:40 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
OldChukchi помоги пожалуйста с кнопкой =) Кнопка на форме, нажав на неё будет идти переход на новую форму с Gridom, в который я, потом, выведу таблицу, но её надо ещё заполнить при нажатии этой же кнопки. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 12:56 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Alucard_070892, да нечем тут помогать: в метод click своей кнопки пишете вышеуказанный SELECT, и либо создаете GRID с источником данных на получившуюся таблицу прямо в этой же форме, либо вызываете внешнюю форму с уже созданным в ней гридом, имеющим источником данных эту вновь созданную таблицу. Я просто не понимаю, как можно проще объяснить или чем тут еще помочь? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 13:38 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Оно просто на id_clients ругается: not found ), надо что-то вставить в код, а что я не знаю=) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 13:43 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Alucard_070892Оно просто на id_clients ругается: not found ), надо что-то вставить в код, а что я не знаю=)ОНО - это кто/что? На какой команде? Вам не приходила в голову мысль, что мы не видим Ваш экран и все то, что на нкм написано? И что мы не видим Ваших действий? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 13:46 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
7335> Оно просто на id_clients а! ну так это же у мну ачипатка, вот так правильнее будет: SELECT id_clients, kol*the_price AS total FROM material,o_order WHERE material.code_material=o_order.id_mat INTO TABLE d_order но вообще-то если Вы даже такую ошибку не увидели, то Вам обязательно нужно иметь VFP-специалиста в шаговой доступности, в противном случае толку будет чуть меньше, чем нисколько :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 13:55 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
File d:\lucky\d_order.dbf already exists as part of a data base ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:03 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
> already exists as part of a data base ну вот, а говорил "в новую таблицу" :) ну тогда вот такой вариант: SELECT id_clients, kol*the_price AS total FROM material,o_order WHERE material.code_material=o_order.id_mat INTO CURSOR tmp_order SELECT d_order APPEND FROM tmp_order USE IN tmp_order но это вариант ленивый, правильнее было бы через INSERT ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:14 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
Не пойму почему ругается на то что таблица существует, мне не нужно создавать таблицу, мне нужно забить в неё данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:15 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
tmp_order это что? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:22 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
> мне не нужно создавать таблицу а она есть... как тот суслик :) ну т.е. в Вашей DBC таблица с именем d_order уже присутствует, поэтому и пересоздавать ее Фокс не разрешает. А уж _почему_ она у Вас там присутствует - боюсь, никто подсказать не сможет :) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:24 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
=) да она - присутствует, но я хочу чтобы записи добавлялись в нее ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:27 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
ну так что, вышенаписанный пример с APPEND FROM tmp_order не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:30 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
> Cnnot update the cursor D_ORDER, since it is read-only ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:32 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
так оно у Вас еще и курсор?! ну тогда Вы в него и ручками исправлений не внесете. Нужно что-то в консерватории (в структуре данных, т.е.) поправить :) но я на сегодня откланиваюсь - у меня уже поздний вечер ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:41 |
|
Заполнение таблицы
|
|||
---|---|---|---|
#18+
И на том спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:46 |
|
|
start [/forum/moderation_log.php?user_name=mos4]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
others: | 674ms |
total: | 831ms |
0 / 0 |