powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / HELP!!!
16 сообщений из 16, страница 1 из 1
HELP!!!
    #32550806
novichek1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Nikak ne poluchaetsya, Skajite pojalusta kak eta delat?

Yest 2 polya.

A B

a1 1
a2 3
a3 0
a4 0
a5 2
a6 0



V 3-y pole doljno bit takoy:


A B C

a1 1 a1
a2 3 a2
a3 0 a2
a4 0 a2
a5 2 a5
a6 0 a5


Toyest v 3-y pole a1 1 raz, a2 3 raz, a5 2 raz a4 i a6 ne doljna ucastvovat.
...
Рейтинг: 0 / 0
HELP!!!
    #32550876
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уточняю задачу:

Т.е., необходимо, чтобы третье поле получало значение первого поля этой же записи, если во втором поле этой же записи НЕ 0, или значение первого поля последней записи, у которой второе поле НЕ ноль, если второе поле текущей записи =0?
...
Рейтинг: 0 / 0
HELP!!!
    #32550897
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если так, то вот код

LOCAL lc_c1
SELECT table1
GO top
DO WHILE !EOF()
IF b<>0
lc_c1=table1.a
ENDIF
REPLACE c with lc_c1
SKIP
ENDDO
...
Рейтинг: 0 / 0
HELP!!!
    #32551635
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
Net,ne tak.Yesli 2-ya polya B=0 , toqda 1-ya polya etoy zapisi (A) v 3-m pole (C) ne doljna uchastvovat. (a3 i a4 v 3-m pole ne ucastvuyut, dlya nix B=0)
Yesli 2-ya polya B=N , toqda 1-ya polya etoy zapisi (A) v 3-m pole (C) doljna N raz uchastvovat. (a1 1 raz uchastvuyut v 3-m pole dlya neqo B=1)
(a5 2 raza uchastvuyut v 3 -m pole, dlya neqo B=2)
...
Рейтинг: 0 / 0
HELP!!!
    #32551646
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня вот так получилось:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
LOCAL lc_a
SELECT table1
GO top
DO WHILE !EOF()
	IF b<> 0 
		lc_a=table1.a
	ENDIF 
	FOR i= 1  TO table1.b
		REPLACE  c with lc_a
		SKIP 
	ENDFOR 
ENDDO 
...
Рейтинг: 0 / 0
HELP!!!
    #32551658
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
Rezultat (X2) vot takoy doljna bit. No ne poluchaetsya.
...
Рейтинг: 0 / 0
HELP!!!
    #32551663
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
Rezultat (X2) vot takoy doljna bit. No ne poluchaetsya.

'13' 2 raz (sel=2) , '15' 3 raz (sel=3), '14' 1 raz (sel=1) doljna ucastvovat v x2.
'11' ,'12', '18' ne doljna dlya nix sel=0
...
Рейтинг: 0 / 0
HELP!!!
    #32551665
tf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
tf
Гость
Ne moqu podklyuchaet .dbf fayl
...
Рейтинг: 0 / 0
HELP!!!
    #32551687
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прицепи таблицу, если можно, конечно, посмотрю
...
Рейтинг: 0 / 0
HELP!!!
    #32551694
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
TABLITSA:
...
Рейтинг: 0 / 0
HELP!!!
    #32551765
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, а вот так пойдет?
...
Рейтинг: 0 / 0
HELP!!!
    #32551796
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
NE POLUCHAETSYA IZVLEKAT FAYL IZ ARXIVA
...
Рейтинг: 0 / 0
HELP!!!
    #32551805
Sjfx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
CLOSE ALL 
CREATE TABLE xx (aa char( 2 ), bb int, cc char( 2 ))
INSERT INTO xx (aa,bb) values('a1', 1 )
INSERT INTO xx (aa,bb) values('a2', 3 )
INSERT INTO xx (aa,bb) values('a3', 0 )
INSERT INTO xx (aa,bb) values('a4', 0 )
INSERT INTO xx (aa,bb) values('a_', 0 )
INSERT INTO xx (aa,bb) values('a5', 2 )
INSERT INTO xx (aa,bb) values('a6', 0 )

* решение:
USE xx IN  0  AGAIN ALIAS yy
SCAN
    GO RECNO('xx') IN yy
    REPLACE cc WITH yy.aa NEXT (yy.bb)
ENDSCAN
...
Рейтинг: 0 / 0
HELP!!!
    #32551813
Фотография SAM-FoxPro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, на всякий случай, код:

Код: 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.
LOCAL ln_x1, ln_Recn,lc_PathL
lc_PathL=SYS( 5 )+SYS( 2003 )
SET DEFAULT TO &lc_PathL
IF !USED('gen')
	USE gen IN  0 
ENDIF 
SELECT gen
GO TOP 
REPLACE x2 WITH  0  WHILE !EOF()
GO TOP 
DO WHILE !EOF()
 	IF sel<> 0 
		ln_x1=gen.x1
	ENDIF
	ln_recn=RECNO() 
	FOR i= 1  TO gen.sel
		* Здесь вместо Locate нужно, конечно, использовать SEEK,
		*пердварительно проиндексировав по полю x2
		LOCATE FOR x2= 0 
		REPLACE  x2 with ln_x1
		SKIP 
	ENDFOR 
	GO ln_recn
	SKIP 
ENDDO 
BROWSE 

А вприцепе самораспаковывающийся архив
...
Рейтинг: 0 / 0
HELP!!!
    #32551877
Sjfx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аа, глягул таблицу gen.dbf
Тады мой вариант такой:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CLOSE ALL 
CREATE TABLE tt (x1 int, sel int, x2 int)
INSERT INTO tt (x1,sel) VALUES ( 13 , 2 )
INSERT INTO tt (x1,sel) VALUES ( 15 , 3 )
INSERT INTO tt (x1,sel) VALUES ( 11 , 0 )
INSERT INTO tt (x1,sel) VALUES ( 14 , 1 )
INSERT INTO tt (x1,sel) VALUES ( 12 , 0 )
INSERT INTO tt (x1,sel) VALUES ( 18 , 0 )

USE tt IN  0  AGAIN ALIAS qq
SCAN FOR sel# 0 
    REPLACE qq.x2 WITH tt.x1 NEXT (tt.sel)+ 1  IN qq WHILE !EOF('qq')
ENDSCAN
...
Рейтинг: 0 / 0
HELP!!!
    #32551950
TF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
TF
Гость
Spasibo, poluchilos!
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / HELP!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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