powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выбор значений из таблицы
4 сообщений из 4, страница 1 из 1
Выбор значений из таблицы
    #37281567
Chek_Fedor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то я в ступоре. Нужно выбрать значения из таблице типа:
Код: plaintext
1.
2.
3.
PR  FORMA  FAK  SPEC  IALIZ   KURS   KOL_ST  POLN  CHAST  KOL_GR   KOL_PGR   
         1         200     233       4          2             4 
         3         200     233       5          3             5 
В общем пытался что-то изобразить не получилось подскажите как насамом деле работает код
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
			USE &nfile_k1
			INDEX ON STR(FORMA, 1 )+STR(fak, 4 )+STR(spec, 4 )+STR(ializ, 2 )+STR(kurs, 1 ) TAG ik2 OF ikstud
			kl8=STR(fo0_, 1 )+STR(fak0_, 4 )+STR(spec0_, 4 )+STR(kurs_, 1 )+STR(iial_, 2 )
			SEEK kl8
			IF FOUND()

				kolst_= 1 
				oplp_=poln      && кол-во с полной оплатой
				oplx_=chast      && кол-во с частичной оплатой
				kolgr_=kol_gr    && кол-во групп
				kolpgr_=kol_pgr  && кол-во подгрупп
		ELSE
				kolst_= 2 
				oplp_=poln      && кол-во с полной оплатой
				oplx_=chast      && кол-во с частичной оплатой
				kolgr_=kol_gr    && кол-во групп
				kolpgr_=kol_pgr  && кол-во подгрупп

			ENDIF
Сейчас он находит запись с FORMA=1 и вставляет данные из таблицы с FORMA=3
...
Рейтинг: 0 / 0
Выбор значений из таблицы
    #37281584
Chek_Fedor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. мне будет достаточно Вашего пояснения к
Код: plaintext
1.
2.
3.
4.
INDEX ON STR(FORMA, 1 )+STR(fak, 4 )+STR(spec, 4 )+STR(ializ, 2 )+STR(kurs, 1 ) TAG ik2 OF ikstud
			kl8=STR(fo0_, 1 )+STR(fak0_, 4 )+STR(spec0_, 4 )+STR(kurs_, 1 )+STR(iial_, 2 )
			SEEK kl8
			IF FOUND()
...
Рейтинг: 0 / 0
Выбор значений из таблицы
    #37281669
Chek_Fedor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тему можно удалить разобрался.
...
Рейтинг: 0 / 0
Выбор значений из таблицы
    #37281677
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обратите внимание:
INDEX ON STR(FORMA,1)+STR(fak,4)+STR(spec,4)+STR(ializ,2)+STR(kurs,1) TAG ik2 OF ikstud
kl8=STR(fo0_,1)+STR(fak0_,4)+STR(spec0_,4)+STR(kurs_,1)+STR(iial_,2)

Кроме того, ваша задача решается несколько проще:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
* Этот код должен исполняться один раз
USE (nfile_k1)
INDEX ON STR(FORMA, 1 )+STR(fak, 4 )+STR(spec, 4 )+STR(ializ, 2 )+STR(kurs, 1 ) TAG ik2 OF ikstud
...
* Этот код делает то, что вам нужно:
select (nfile_k1)
SEEK STR(fo0_, 1 )+STR(fak0_, 4 )+STR(spec0_, 4 )+STR(iial_, 2 )+STR(kurs_, 1 ) tag ik2 of ikstud
kolst_=iif(FOUND(), 1 , 2 )
oplp_=poln      && кол-во с полной оплатой
oplx_=chast      && кол-во с частичной оплатой
kolgr_=kol_gr    && кол-во групп
kolpgr_=kol_pgr  && кол-во подгрупп

А если поинтереснее, то можно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
* Никаких индексов!
select poln as oplp_, chast as oplx_, kol_gr as kolgr_, kol_pgr as kolpgr_;
 from (nfile_k1);
 where FORMA=fo0_ .and. FAK=fak0_ .and. SPEC=spec0_ .and. IALIZ=iial_ .and. KURS=kurs_;
 into cursor tmp
kolst_=iif(_tally> 0 , 1 , 2 )
scatter memvar
use
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выбор значений из таблицы
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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