Вход | Регистрация


Выборка из 2 Дбф и вывод таблицу.

Выборка из 2 Дбф и вывод  таблицу.
Я
   work92
 
30.09.16 - 15:48
Есть 2 дбф нужно сравнить 2 значения  если совпали тогда не выводить в таблицу  если не совпали тогда вывести. Выводит все значения.
Процедура Выполнить()
 
Файл = создатьОбъект("XBASE");
Новфайл = создатьОбъект("XBASE"); 
Файл.ОткрытьФайл("D:\Бухгалтерия от 29.09.2016\Расчетная\ЖРЭО.dbf");
Новфайл.ОткрытьФайл("D:\Бухгалтерия от 29.09.2016\Расчетная\ВД.dbf");
Таб=СоздатьОбъект("Таблица");  

Таб.ИсходнаяТаблица("Таблица");
Таб.ВЫвестиСекцию("Шапка");    
    
Пока файл.ВКонце()=0 Цикл 

  Новфайл.Первая();
  
  Пока Новфайл.ВКонце()=0 Цикл 
      
    Если СокрЛП(Файл.ID1)=СокрЛП(Новфайл.ID) Тогда 
        
    Сообщить("Пропуск") ;
     Прервать
    Иначе   
     НОмерИД=СокрЛП(Файл.ID1);
     Фам=СокрЛП(Файл.F1);
     Им=СокрЛП(Файл.I1);
     От=СокрЛП(Файл.O1);
     Год=СокрЛП(Файл.Gog1);
     Адрес=СокрЛП(Файл.Adres);
       

    КонецЕсли;
    Новфайл.Следующая();
        
  КонецЦикла;
       Таб.ВывестиСекцию("Строка")  ;
  Файл.Следующая();
КонецЦикла; 
Таб.Показать();
КонецПроцедуры
 
 
   Boleev
 
1 - 30.09.16 - 15:52
Дичь. Грузишь предварительно данные в две ТЗ, потом ТЗ в запрос, там внутреннее соединение по ID.
На выходе получаешь нужный тебе результат
   work92
 
2 - 30.09.16 - 15:54
Может кто подскажет как сделать  без ТЗ.
   Boleev
 
3 - 30.09.16 - 15:54
(2) Без ТЗ - 100$
   NorthWind
 
4 - 30.09.16 - 15:56
(2) внешними источниками данных можно попробовать. Но есть ли смысл - не знаю
   Это_mike
 
5 - 30.09.16 - 15:56
Запросом.
Если клюшки - то хоть фокс, хоть 1скульлайт,
если снеговик - то внешние источники
   Это_mike
 
6 - 30.09.16 - 15:57
Хотя судя по (0) - клюшки
   NorthWind
 
7 - 30.09.16 - 15:57
(6) точно
   NorthWind
 
8 - 30.09.16 - 16:01
(5) есть еще вариант подключиться через ADO+ODBC к папке с DBFами и сделать SQL-запрос к двум таблицам сразу. http://gsbelarus.com/gs/wiki/index.php/Работа_с_DBF_файлами_через_ADO
   work92
 
9 - 30.09.16 - 16:04
А на текущем коде может кто подскажет как сделать
   Boleev
 
10 - 30.09.16 - 16:08
(9) вот упертый какой. См.(3)
 
 Рекламное место пустует
   Boleev
 
11 - 30.09.16 - 16:13
Таб.ВывестиСекцию("Строка")  ;
Перенеси в условие
   work92
 
12 - 30.09.16 - 16:20
Тоже выводит все
   Garykom
 
13 - 30.09.16 - 16:33
Объясни тебе нужно по номерам строк сравнивать "значения" 1=1, 2=2 и т.д. или на нахождение каждого значения из 1 в 2 и наоборот?
   Garykom
 
14 - 30.09.16 - 16:34
Таблица 1
1
2
3

Таблица 2
3
4
5

Что нуна вывести?
   work92
 
15 - 30.09.16 - 16:43
Из таблицы 1 Нужно вывести  1 2 так как 3 есть 2 таблице
   work92
 
16 - 30.09.16 - 16:44
Garykom  очень нужна подсказка
   Garykom
 
17 - 30.09.16 - 16:50
Подсказка уже дана в (3)

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует