Версия 0.000.0000 от 13.11.01 14:56 Назначение программы -------------------- Существует очень много тарификационных форматов и соответственно программ для их обработки. Некоторые продвинутые программы поддерживают не один, а несколько форматов тарификации (вплоть до 80). Программа select.exe не пре- доставляет пользователю просто набор форматов, а дает ему возможность самому создавать форматы (текстовые или двоичные), по неким общим правилам построе- ния. Поэтому с ее помощью можно конвертировать теоретически все что угодно во все что угодно (реально конечно все несколько скромнее). Примите все же пока на веру, что читать и созавать программа может очень и очень многое, вернее, ее можно этому научить, описав нужные Вам форматы на языке ее интерпретатора. Встроенные возможности невелики - чтение/создание тарификационных файлов s12 от fastcopy или в формате 800, и чтение/создание текстовых файлов, похожих на те, что создает dtb97.exe. Ну и преобразование одного в другое, а также фильтрация и сортировка без ограничений, хоть по всем параметрам одновременно. Ну, и работа с архивами rar, arj, zip. Ну, и ... Для того, чтобы программа работала быстро, она должна быть либо приложением DOS, либо консольным приложением Windows (экзотики не касаемся). Пока что - DOS. Реклама ------- Программа select.exe является приложением DOS и может применяться для : 1.Быстрого поиска в тарификационных файлах. При этом Вы можете задать сколь угодно сложное условие поиска. Максимальная длина поисковой команды 1000 символов, но строк может быть много. Скорость поиска практически не зависит от сложности условия и для не очень крутого Pentium'а 233 MGz составляет примерно 2 Mb/s при запуске из-под Нортона и при максимальном ускорении в параметрах задачи windows. Скорость может заметно упасть (раз в 6), если s12-файл находится на другом компьютере. Падение скорости будет существенным и при большом проценте найденных записей. Кстати, поиск по маске сделан. Результатом работы программы может быть текстовый, двоичный или s12-файл. S12-файл : имитируются все 3 формата fastcopy.exe (с 'Сохранять только данные', без 'Сохранять только данные', с 'Сохранять метку ленты'). Формат выдачи в текстовый или двоичный файл может практически неограниченно изменяться пользователем. 2.Поиска в текстовых файлах, в том числе в тех, которые программа порож- дает сама. То есть результат своей работы она может использовать для даль- нейшей обработки. Результатом обработки текстового файла может быть s12- или новый текстовый файл (к примеру с другим форматом текста), или дво- ичный. Возможен поиск и в неродных текстовых тарификационных файлах с самым экзотическим форматом, а также в произвольных двоичных файлах, надо только их описать. 3.Одновременного (т.е. за один запуск) поиска в s12- ,двоичных, текстовых файлах и архивах, формат файла-источника программа определяет сама. При этом конечно обработка всех типов воспринимаемых программой текстовых файлов и архивов должны быть предварительно описаны Вами. Не надо описывать только порождаемые самой программой текстовые файлы и архивы *.rar, *.arj и *.zip - это уже сделано. При поиске в архиве надо вести себя так, будто он уже распакован, то есть указывать маску не *.rar, а скажем *.s12 4.Выполнения задач суммирования и усреднения, заданных пользователем. Задачи могут быть разнообразными, например 'Звонки с таксофонов' или 'Неверные определения номера' или 'Длительные разговоры', короче говоря статистика по тарификации. Смотри также select.hl1, в котором приведены примеры как серьезных, так и и юмористических задач. Теоретическое число разных задач очень большое. Понятно, что подавляющее большинство этих задач практического смысла не имеет, однако программа позволяет запускать и бессмысленные задания. 5.Восстановления s12 из файла в формате ленты, либо из вообще поврежденного файла. 6.Склеивания и разбиения s12-файлов. 7.Предусмотрена возможность сдвига времени вперед или назад. Может применя- ться для приведения к московскому или, напротив, местному времени, для s12, двоичных и текстовых файлов. 8.Предыдущий пункт является лишь частным случаем возможностей манипуляции с тарификационными записями. На самом деле можно изменить любое поле любым образом и по любому условию. Самый невинный вариант : добавить 8 если звонок зональный или междугородный, добавить 810 если звонок международный, добавить цифру если она проглочена декадной или коорди- натной станцией, убрать зональный префикс у вызывающего. 9.Cпециальная возможность - расширение списка поиска. Может применяться на- пример для выяснения, кто из знакомых абонента звонил с его телефона по межгороду. Алгоритм: все встреченные на n-1 проходе телефоны включаются в список поиска на n проходе. 10.Фактически программа представляет из себя произвольный двоично-текстовый форматтер с некоторыми встроенными возможностями специально для обработки тарификации s12, так что Вы можете ее использовать для преобразования и нетарификационных двоичных файлов в текстовые и наоборот, но без сортиров- ки и задач. 11.А также Вы можете минимально зашифровать свои не обязательно тарификацион- ные файлы каким-нибудь диковинным двоичным форматом собственного изобрете- ния, хотя конечно серьезные люди все это легко расшифруют. Программа предназначена в основном для тех, кому довольно часто приходит- ся иметь дело с тарификационными файлами. У нас (непосредственно на станции) ей пользуются нечасто - когда надо перелопатить большой объем информации, то есть когда высокая скорость поиска и обработки перевешивает неудобства пользования приложением DOS. Зато программистам-тарификационщикам она при- шлась по душе : очень уж много у них разных форматов. Собственно, программа во многом и писалась по их запросам, только переведенным в абстрактную сферу. Оценка трудозатрат при пользовании select.exe --------------------------------------------- Несмотря на некоторую монстрообразность программы, решение простейших задач с помощью select.exe не требует больших усилий. Например чтобы найти исходящие звонки с телефона, надо из-под Нортона набрать строку select.exe файл_источник.s12 и ответить на вопрос простейшей командой на языке интерпретатора : inc clg=<8-значный номер> <2 раза Enter> (это сработает если каталог select.exe включен в путь поиска в файле autoexec.bat) Состав ------ В корневом каталоге содержатся : select.exe - драйвер для обработки тарификации select.cfg - правила обработки файлов по умолчанию select.cf0 - опции (флаги) при вызове select.exe, по умолчанию *.cfg (кроме select.cfg) - файлы аббревиатур select.hlp - файл подробного описания select.hl1 - некоторые примеры извращений с программой rar.exe, rar.cfg, arj.exe, pkzip.exe, pkunzip.exe - архиваторы для работы с архивами _readme.txt - этот файл В каталоге dj содержатся 3 типа файлов : *.dj - файлы задания *.d1 - файлы двоичных форматов ввода-вывода *.d2 - строки констант В каталоге tests приведены многочисленные примеры. Файл tests.bat я запускаю после внесения изменений в select.exe, чтобы убедиться что она по-прежнему работает корректно. Каталог s12 предназначен для файлов протокола. Изначально в нем находятся файлы-эталоны для тестов. Не удаляйте их, иначе тесты по п.6 из tests\$readme.txt перестанут проходить. Как пользоваться драйвером -------------------------- (все действия предлагается производить из-под Norton Commander'а) 1.Создайте директорию, например c:\sel. 2.Раскройте в ней архив select.rar вместе с поддиректориями командой rar.exe x select.rar 3.Зайдите в каталог tests и запустите $tests.bat. Результаты всех тестов должны быть "FC : различия не найдены". Только тогда можно быть уверенным, что программа корректно работает в Вашей среде. (FC означает Files Comparation) 4.Далее читайте select.hlp п.IV. Best regards, Бородин Игорь Соликамск (34253)70668 borodin@sol.usi.r