Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вывод информации в форму / 20 сообщений из 20, страница 1 из 1
08.04.2010, 09:59
    #36567585
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Доброго дня!
У меня вопрос по выводу информации в форму.
Есть таблица с полями (ost01...ost08,pri01...pri08,ras01...ras08,sklad,tip_ot). Мне необходимо вывести информацию это таблицы в форму в виде таблицы:

_______|остаток|приход|расход|всего___________________________________________
золото |ost01 |pri01 |ras01 |(результат вычисления по формуле ost01+pri01-ras01)|
серебро|ost02 |pri02 |ras02 |(результат вычисления по формуле ost02+pri02-ras02)|
-//-//-//-//-//-

Но при этом поля "Остаток","Приход","Расход" должны быть суммовыми(т.е. все значения табл. с кодом *01 сложится вместе).
Подскажите, пожалуйста, как мне это сделать? Заранее всем спасибо!
P.S. что лучше разместить на форме grid или textbox ???
...
Рейтинг: 0 / 0
08.04.2010, 10:49
    #36567747
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
FoxPro стоит 9
...
Рейтинг: 0 / 0
08.04.2010, 11:03
    #36567810
Ffffffffffffffff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Сначала нужно создать запрос, который обработает данные и выведет их в нужном виде, например, в курсор. На форму можно положить Grid, а его источником данных сделать этот курсор.
...
Рейтинг: 0 / 0
08.04.2010, 12:12
    #36568043
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
FfffffffffffffffСначала нужно создать запрос, который обработает данные и выведет их в нужном виде, например, в курсор.
Запрос создать в программном файле? А потом использовать его при создании формы?
...
Рейтинг: 0 / 0
08.04.2010, 12:34
    #36568131
Ffffffffffffffff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Можно так.
...
Рейтинг: 0 / 0
12.04.2010, 14:58
    #36574242
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR ostatki;
(pri01 N( 16 , 5 ), ras01 N( 16 , 5 ));

SELECT table3;
SUM(table3.sum_pri01) as pri01;
FROM table3;
into cursor ostatki

Мне надо подсчитать сумму всех полей столбца sum_pri01, таблицы table3, и вывести результат в поле pri01, курсора ostatki. Что, я делю не так??? Фокс выдает ошибку: Command contains unrecognized phrase/keyword.
...
Рейтинг: 0 / 0
12.04.2010, 15:02
    #36574258
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
TeddyMUM
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR ostatki;
(pri01 N( 16 , 5 ), ras01 N( 16 , 5 ));

SELECT table3;
SUM(table3.sum_pri01) as pri01;
FROM table3;
into cursor ostatki

Мне надо подсчитать сумму всех полей столбца sum_pri01, таблицы table3, и вывести результат в поле pri01, курсора ostatki. Что, я делю не так??? Фокс выдает ошибку: Command contains unrecognized phrase/keyword.А не пробовали отдельные поля в списке выбора отделять друг от друга запятыми?
...
Рейтинг: 0 / 0
13.04.2010, 11:06
    #36575783
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Fox ругется именно на эту строчку:
Код: plaintext
SUM(table3.sum_pri01) as pri01;
Как быть? Как её оформить?
...
Рейтинг: 0 / 0
13.04.2010, 11:16
    #36575811
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
TeddyMUMFox ругется именно на эту строчку:
Код: plaintext
1.
2.
3.
4.
SELECT table3;
SUM(table3.sum_pri01) as pri01;
FROM table3;
into cursor ostatki
Как быть? Как её оформить?
Запятая забыта:
Код: plaintext
1.
2.
3.
SELECT table3;
, SUM(table3.sum_pri01) as pri01;
FROM table3;
into cursor ostatki
С уважением, Алексей
...
Рейтинг: 0 / 0
16.04.2010, 14:07
    #36582473
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
всё равно ругается!!! =(
...
Рейтинг: 0 / 0
16.04.2010, 14:20
    #36582524
Вывод информации в форму
Что такое Select Table3? Если нужны все колонки, то надо писать
Select * from table3
...
Рейтинг: 0 / 0
16.04.2010, 14:48
    #36582609
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Теперь другая проблема, Fox просто вставляет все данные из столбца Sum_pri01 табл. table3, а мне надо что бы была сумма всех полей столбца, т.е. в курсоре должна появится 1 запись. Почему не получается???
...
Рейтинг: 0 / 0
16.04.2010, 15:12
    #36582677
Aleksey-K
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
TeddyMUM
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE CURSOR ostatki;
(pri01 N( 16 , 5 ), ras01 N( 16 , 5 ));

SELECT table3;
SUM(table3.sum_pri01) as pri01;
FROM table3;
into cursor ostatki

Мне надо подсчитать сумму всех полей столбца sum_pri01, таблицы table3, и вывести результат в поле pri01, курсора ostatki. Что, я делю не так??? Фокс выдает ошибку: Command contains unrecognized phrase/keyword.
Это не очень разумно, что сначала создаете курсор через CREATE, а затем его уничтожаете через SELECT .... INTO
Теперь по существу вопроса. Как я понял, вам надо из колонок сделать строки, т.е. проделать операцию UNPIVOT.
Боюсь, что в VFP эту операцию вам придеться выполнять через цикл. А в исходной таблице у вас несколько строк с разными sklad и tip_ot? Если так, то в выходной таблице где они должны присутствовать?
С уважением, Алексей.
...
Рейтинг: 0 / 0
19.04.2010, 10:42
    #36585033
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Aleksey-K, а можно попросить Вас на примере показать?
...
Рейтинг: 0 / 0
28.04.2010, 11:27
    #36602453
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
ln_sklad=thisform.text1.Value

SELECT table3
COPY TO ARRAY ar2 FIELDS sklad,tip_ot,sum_pri01,sum_pri02,sum_pri03,sum_pri04,sum_pri05,sum_pri06,sum_pri07,sum_pri08,sum_ras01,sum_ras02,sum_ras03,sum_ras04,sum_ras05,sum_ras06,sum_ras07,sum_ras08 for sklad=ln_sklad
SELECT table_vrem
APPEND FROM ARRAY ar2 FIELDS sklad,tip_ot,pri01,pri02,pri03,pri04,pri05,pri06,pri07,pri08,ras01,ras02,ras03,ras04,ras05,ras06,ras07,ras08
Release ar2

CREATE CURSOR ostatki;
(pri01 N( 16 , 5 ), pri02 N( 16 , 5 ), pri03 N( 16 , 5 ), pri04 N( 16 , 5 ), pri05 N( 16 , 5 ), pri06 N( 16 , 5 ), pri07 N( 16 , 5 ), pri08 N( 16 , 5 ),ras01 N( 16 , 5 ),ras02 N( 16 , 5 ),ras03 N( 16 , 5 ),ras04 N( 16 , 5 ),ras05 N( 16 , 5 ),ras06 N( 16 , 5 ),ras07 N( 16 , 5 ),ras08 N( 16 , 5 ),osti01 N( 16 , 5 ),osti02 N( 16 , 5 ),osti03 N( 16 , 5 ),osti04 N( 16 , 5 ),osti05 N( 16 , 5 ),osti06 N( 16 , 5 ),osti07 N( 16 , 5 ),osti08 N( 16 , 5 ),sklad C( 4 ),tip_ot C( 1 ));

SELECT;
 table_vrem.sklad,;
 table_vrem.tip_ot,;	
	SUM(table_vrem.pri01),;
	SUM(table_vrem.pri02), ;
	SUM(table_vrem.pri03), ;
	SUM(table_vrem.pri04), ;
	SUM(table_vrem.pri05), ;
	SUM(table_vrem.pri06), ;
	SUM(table_vrem.pri07), ;
	SUM(table_vrem.pri08), ;
	SUM(table_vrem.ras01), ;
	SUM(table_vrem.ras02), ;
	SUM(table_vrem.ras03), ;
	SUM(table_vrem.ras04), ;
	SUM(table_vrem.ras05), ;
	SUM(table_vrem.ras06), ;
	SUM(table_vrem.ras07), ;
	SUM(table_vrem.ras08), ;
	SUM(pri01-ras01) as osti01, ;
	SUM(pri02-ras02) as osti02, ;
	SUM(pri03-ras03) as osti03, ;
	SUM(pri04-ras04) as osti04, ;
	SUM(pri05-ras05) as osti05, ;
	SUM(pri06-ras06) as osti06, ;
	SUM(pri07-ras07) as osti07, ;
	SUM(pri08-ras08) as osti08 ;
	FROM table_vrem ;
	GROUP BY table_vrem.sklad ;
	into cursor ostatki
Подскажите пожалуйста, почему Fox говорит, что предложение GROUP BY содержит ошибку? Что не так??
...
Рейтинг: 0 / 0
28.04.2010, 11:34
    #36602470
Ffffffffffffffff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
В Group by должны присутствовать все поля, выбранные select, кроме тех, к которым применены агрегатные функции.
...
Рейтинг: 0 / 0
28.04.2010, 11:39
    #36602490
Вывод информации в форму
TeddyMUM,

надо применить агрегирующую функцию к полю table_vrem.tip_ot .
...
Рейтинг: 0 / 0
28.04.2010, 13:47
    #36602897
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
Подскажите ещё пожалуйста, как в textbox (который на форме) поместить данные из курсора??? Например: text1 = pri01 ... и т.д.
...
Рейтинг: 0 / 0
28.04.2010, 17:15
    #36603637
tanglir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
TeddyMUM,

textbox.value=cursorname.fieldname

ещё есть свойство controlsource
...
Рейтинг: 0 / 0
29.04.2010, 07:29
    #36604407
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод информации в форму
tanglir, огромное спасибо!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ВСЕМ =)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вывод информации в форму / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]