Поиск двойников

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Parabellum_FMJ
Сообщения: 8
Зарегистрирован: 23 авг 2011, 09:40
Контактная информация:

Поиск двойников

Сообщение Parabellum_FMJ »

Хелп! С галактикой начал работать не так давно. Вроде все потихоньку получалось. Но тут меня озадачили. Нужно достать из базы сотрудников всех двойников. Которые числятся на основном и по совместительству + когда-то были уволены, а сейчас снова устроились. Вобщем, всех кто по картотеке сотрудников по 2 и более раза пробегает. В Persons то я залез, пару таблиц явно с ним связанных тоже посмотрел, но никаких толковых идей, как сделать данную выгрузку не появилось :cry: Небольшой косяк еще в том, что база на первасиве крутится, и добрая половина нужных запросов, работающих в нормальном sql, тут просто не работает =(
Понимаю, что вопрос, конечно, глупый, но может поможете начинающему галактисту? :smile:
Самый подходящий момент наступает в самое неподходящее время
Vitaliy
Постоянный обитатель
Сообщения: 101
Зарегистрирован: 27 апр 2005, 09:52
Откуда: Сибирь

Re: Поиск двойников

Сообщение Vitaliy »

что-то типа:

Код: Выделить всё

interface PoiskDv1 Поиск двойников' escclose, Cyan;
  show at (,,80,);
create view
as select *
from
    persons pers
where
((
'С'==pers.ISEMPLOYEE
))
;
HandleEvent
cmInit:
{
var kol_pers: word;
_loop pers
  {
    kol_pers:=0;
    _loop persons where (('с'==persons.ISEMPLOYEE and pers.fio==persons.fio))
      kol_pers:=kol_pers+1;
    if kol_pers>1 LogStrToFile('c:\PoiskDv1.txt', persons.fio)
  }
}
end;
end.
Не проверял, но должно работать.
Выгрузит всех "двойников" в файл c:\PoiskDv1.txt.
Можешь место LogStrToFile поставить заполнение своего прототипа, можешь выгружать в XLS или DBF и т.д.
Parabellum_FMJ
Сообщения: 8
Зарегистрирован: 23 авг 2011, 09:40
Контактная информация:

Re: Поиск двойников

Сообщение Parabellum_FMJ »

Идею понял и спер, но сделал немного по своему. Все отработало =) Спасибо :grin:
Самый подходящий момент наступает в самое неподходящее время
Ответить