powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / repl all
15 сообщений из 15, страница 1 из 1
repl all
    #32733198
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pomaqite pojalusta! Problema takaya: yest tablitsa :nn.dbf. Mne nado cdelat tak chto, napirmer t=1 (t-slucayno)
V tablitse qde yest 1 ravnyalos =0,yesli t==25 v tablitse qde yest 25 budet =0.
Kak eto sdelat ? Yesli mojno obyasnite nad primerom.
...
Рейтинг: 0 / 0
repl all
    #32733200
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TABLITSA:TT.DBF
...
Рейтинг: 0 / 0
repl all
    #32733206
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TABLITSA:TT.DBF
...
Рейтинг: 0 / 0
repl all
    #32733295
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ничего не понял. Что на что надо заменить? Надо смотреть значение поля t и заменять значение этого же поля? Тогда так:

Код: plaintext
1.
select MyTab
REPLACE t WITH  0  FOR t= 25  
...
Рейтинг: 0 / 0
repl all
    #32733304
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтото вроде:

PROCEDURE MyREPL
PARAMETERS m_field, m_value
=AFields(a_fiels)
IF AScan(a_fields, m_field) > 0
m_repl='REPLACE '+m_field+' WITH 0 '+'FOR '+m_field+' == '+Str(m_value)
&m_repl
ENDIF
RETURN
...
Рейтинг: 0 / 0
repl all
    #32734075
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Net, t -zdes sluchaynoe chislo, mojet menyatsa ot 1 do 60. I kajdiy raz (napirmer t=12) nado proverit v tablitse poley ot “N1” do “N10” I qde yest 12 nado zamenit na 0.
...
Рейтинг: 0 / 0
repl all
    #32734179
PolarFox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1 присваиваешь переменной твое случайное число
2 в массив помещаешь список всех полей в таблице
3 цикл по количеству элементов массива
4 replace all for поле из массива = переменной
все помоемому (если я правильно понял вопрос)
...
Рейтинг: 0 / 0
repl all
    #32734184
PolarFox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Burn правильно написал... только добавить случайную переменную...
...
Рейтинг: 0 / 0
repl all
    #32734204
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BurnЧтото вроде:

PROCEDURE MyREPL
PARAMETERS m_field, m_value
=AFields(a_fiels)
IF AScan(a_fields, m_field) > 0
m_repl='REPLACE '+m_field+' WITH 0 '+'FOR '+m_field+' == '+Str(m_value)
&m_repl
ENDIF
RETURN

a_fiels chto takoy?
...
Рейтинг: 0 / 0
repl all
    #32734217
PolarFox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
a_fiels chto takoy?
массив куда залезут поля из таблицы
...
Рейтинг: 0 / 0
repl all
    #32734241
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zdes u menya chto to oshibka dayut
...
Рейтинг: 0 / 0
repl all
    #32734505
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, можно и попроще

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
* Значение
LOCAL lnValue
lnValue =  25 

* Организуем перебор всех полей таблицы
LOCAL lnI, lcFieldName
select MyTab
FOR m.lnI= 1  TO FCOUNT()
	lcFieldName = FIELD(m.lnI)
	REPLACE &lcFieldName WITH  0  FOR &lcFieldName = m.lnValue
ENDFOR
...
Рейтинг: 0 / 0
repl all
    #32735127
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>только добавить случайную переменную...
Формулировка задачи непонятная - так что можно напридумывать всяких вариантов... Лично я понял что нужна функция для произвольного поля

>zdes u menya chto to oshibka dayut
Что за ошибка? Как вызываешь? А ваще, всякое может быть - писалось на коленке
...
Рейтинг: 0 / 0
repl all
    #32735272
sasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Spasibo, poluchilos!
Umenya yeshyo 1 vopros:
Kak mojno proverit vse pole tablitsi na odnom zapise ,nacinaya napirmer ot ‘N1’ do ‘N10’ ravno =0 ili net?
Znayu chto mojno delat napirmer tak:
repl all mM with n1+n2+n3+n4+n5+n6+n7+n8+n9+n10
potom proverit ‘mm’ ravno =0 ili net? No mejet kakaya to funksiya yest dlya etoqo?
...
Рейтинг: 0 / 0
repl all
    #32735420
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SET FILTER TO n1+n2+n3+n4+n5+n6+n7+n8+n9+n10=0
GO top
IF EOF().AND.BOF()
? 'Нулевых полей нет'
ENDIF
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / repl all
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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