Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Недостающие записи (Fox Pro 2.6) / 3 сообщений из 3, страница 1 из 1
06.02.2007, 14:12
    #34309399
AlexanderKR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Недостающие записи (Fox Pro 2.6)
Подскажите пожалуйста, как сделать следующую вещь.
Мне необходимо перенести данные из одного файла (predp.dbf) в другой (dogovor.dbf). Общее поле в этих таблицах - kod. Вся загвоздка состоит в том, что перед переносом нужно проверить, нет ли новых кодов в файле predp, и если есть, добавить их в файл dogovor. Мне их нужно хотя бы вывести через "?" на экран, а дальше уже сам разберусь. Не знаю, как правильно написать цикл:
============================
set date to german
set century on
set talk on
set deleted on
select 1
use sys(2003)+"\dogovor.dbf"
set order to kod
goto top
****
select 2
use "A:\predp.dbf"
set order to kod
goto top

sele 1
scan

kod_d=kod
sele 2 && PREDP

kod_p=kod
locate for kod_p<>kod_d
if found()
? kod_p
endif
sele 1
endscan
restore screen
clear
close all
========================
Цикл крутится на одной записи.
Помогите вывести все записи из файла predp, которые отсутствуют в файле dogovor.
У меня Fox 2.6 (DOS)
Спасибо.
...
Рейтинг: 0 / 0
06.02.2007, 14:22
    #34309442
Недостающие записи (Fox Pro 2.6)
AlexanderKRПодскажите пожалуйста, как сделать следующую вещь.
Мне необходимо перенести данные из одного файла (predp.dbf) в другой (dogovor.dbf). Общее поле в этих таблицах - kod. Вся загвоздка состоит в том, что перед переносом нужно проверить, нет ли новых кодов в файле predp, и если есть, добавить их в файл dogovor. Мне их нужно хотя бы вывести через "?" на экран, а дальше уже сам разберусь. Не знаю, как правильно написать цикл:
============================
set date to german
set century on
set talk on
set deleted on
select 1
use sys(2003)+"\dogovor.dbf"
set order to kod
goto top
****
select 2
use "A:\predp.dbf"
set order to kod
goto top

sele 1
scan

kod_d=kod
sele 2 && PREDP

kod_p=kod
locate for kod_p<>kod_d
if found()
? kod_p
endif
sele 1
endscan
restore screen
clear
close all
========================
Цикл крутится на одной записи.
Помогите вывести все записи из файла predp, которые отсутствуют в файле dogovor.
У меня Fox 2.6 (DOS)
Спасибо.
Ну, например, так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
set date to german
set century on
set talk on
set deleted on
select  1 
use sys( 2003 )+"\dogovor.dbf"
set order to kod
goto top
****
select  2 
use "A:\predp.dbf"
set order to kod
goto top 

select a.* from predp a;
into cursor query;
where a.kod not in (select kod from dogovor) ;
order by kod 

select query

brow norm
Учите SQL
...
Рейтинг: 0 / 0
06.02.2007, 22:11
    #34310759
AlexanderKR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Недостающие записи (Fox Pro 2.6)
Благодарю.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Недостающие записи (Fox Pro 2.6) / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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