|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Dima TAPPEND BLANK зачем вставил? Убери все заработает как ты написал.Только из моего кода надо убирать - в коде ТСа не хватает двух переходов по областям :) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 07:55 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
tanglirDima TAPPEND BLANK зачем вставил? Убери все заработает как ты написал.Только из моего кода надо убирать - в коде ТСа не хватает двух переходов по областям :) Не путай ТС, он и сам хорошо запутывается. Я его код смотрел. Нормально там все с переходами. SCAN по таблице Blok, поиск и изменение в таблице p5080100. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 08:20 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
К моему сожалению мой код не работает как нужно т.е. после того как убрал APPEND... блоки вставляются только единожды если находим p5080100.Pred>1 после "0" блок ставится следующий поставится только после повторения p5080100.Pred="0" и т.д. Но вот то что мне предложили Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 10:31 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Нет желания засорять еще одной темой форум поэтому отпишу здесь Есть возможность присвоить некой переменной значение типа String т.е. убрать имя p5080100.dbf в переменную и использовать ее там где "нужно" Код: plaintext 1. 2. 3.
перед объявлением пробовал объявить как PUBLIC Predm ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 10:59 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_Fedor, это называется "макроподстановки", и это, по мнению многих, ЕстЬ АбсолютноеЪ ЗлоЪ. Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 11:08 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Вот блин ни слова в книге об этом ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 11:14 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorВот блин ни слова в книге об этом & называется макроподстановка и в книге наверно есть. Пользоваться макроподстановками желательно в тех случаях когда без них никак не обойтись. Если есть другие варианты, то лучше не пользоваться, т.к. при активном использовании макроподстановок ошибки в программе искать очень сложно. попробуй Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 11:58 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorНо вот то что мне предложили Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Как я выше уже писал, в этом "работающем" по твоим словам коде заложено предположение о том, что в таблице BLOK.DBF есть все значения для поиска. Как только условие IF вернет false, то в приведенном тобой коде нет возврата в область перебора по SCAN. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 12:01 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
fore5taКак только условие IF вернет false, то в приведенном тобой коде нет возврата в область перебора по SCAN.Я, конечно, мало что помню уже про фпд, но скан ведь сканит свою рабочую область, независимо от того, какая является активной, разве нет? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 12:05 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
tanglirfore5taКак только условие IF вернет false, то в приведенном тобой коде нет возврата в область перебора по SCAN.Я, конечно, мало что помню уже про фпд, но скан ведь сканит свою рабочую область, независимо от того, какая является активной, разве нет? Правильно, всегда так было, SCAN работает в той области которая была на момент начала цикла, изменение рабочей области внутри скана никак не влияет на него, т.е. возвращаться в область скана ненужно. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 12:12 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorК моему сожалению мой код не работает как нужно т.е. после того как убрал APPEND... блоки вставляются только единожды если находим p5080100.Pred>1 после "0" блок ставится следующий поставится только после повторения p5080100.Pred="0" и т.д. Но вот то что мне предложили Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Спасибо. locate - довольно медленная команда, т.к. каждый раз перебирает все записи с начала до подходящей условию. Если книга есть - почитай про использование индексов. например если в таблице Blok есть индекс по полю blok5 с именем ix_blok5 то можно так написать: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 14:31 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Посоветуйте справочную инфу. Опять вас мучить пришел. Как исключить дубликаты например по столбцу "X" for .... ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 15:05 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Chek_FedorПосоветуйте справочную инфу. Опять вас мучить пришел. Как исключить дубликаты например по столбцу "X" for .... Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 15:32 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
По поводу литературы, если память не подводит, была неплохая книга Программирование в FoxPro 2.x автор Попов ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 15:36 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Кстати, советую обратить внимание на опцию IN команды REPLACE. Из личного опыта знаю, что если алиас, в котором делается замена значений полей, не активен, указания имени области в виде префикса ( например: имя алиаса.имя поля ) может оказаться недостаточно. Рекомендую всегда явно указывать имя алиаса в опции IN. Простите, если вдруг "открыл Америку". ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 15:55 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Юрий Р.Кстати, советую обратить внимание на опцию IN команды REPLACE. Из личного опыта знаю, что если алиас, в котором делается замена значений полей, не активен, указания имени области в виде префикса ( например: имя алиаса.имя поля ) может оказаться недостаточно. Рекомендую всегда явно указывать имя алиаса в опции IN. Простите, если вдруг "открыл Америку". Америку открыли гораздо позже, в FoxPro 2.x этого не было. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 16:07 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Dima T, Sorry! Не досмотрел. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2011, 17:09 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Господа помогите с вопросом. Мне необходимо заменить значение в столбце Gr_z на 'III' если выполняется условие, что F_h_1='M21.4' и Inv=1. Пробую такую конструкцию, но Fox ругается...REPLACE ALL Gr_z WITH 'III' FOR F_h_1='M21.4' AND Inv=1 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 17:23 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Илья_Кот, И как ругается? Матом? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 17:45 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
IgorNG, почти матом. да еще и с вот таким знаком /. возможно в Foxe сложное условие выполнить с помощью команды replace? или чтото другое надо использовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 17:49 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Программисты обычно приводят текст сообщения. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 18:02 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Ffffffffffffffff, Operator/operand type mismatch. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 19:20 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Илья_КотFfffffffffffffff, Operator/operand type mismatch.Ну и что непонятно в этом сообщении? Откуда мысль возможно в Foxe сложное условие выполнить с помощью команды replace?? На чем она основана? На вере в свою безошибочность? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 19:43 |
|
Синтаксис Replace в Fox Pro
|
|||
---|---|---|---|
#18+
Sergey Sizov, омг...что ж вы тут все как звери... Два вопроса. Оператор replace может выполнить сложное логическое условие или нет? Если да то как? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2013, 19:47 |
|
|
start [/forum/topic.php?fid=41&msg=38111355&tid=1583223]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 275ms |
total: | 433ms |
0 / 0 |