Главная » про WinTariff

Изменение ширины полей файла со звонками

22 августа 2011

Файл Calls.dbf, используемый для хранения данных о звонках, имеет определенную структуру. Например, для хранения внутреннего номера (EXTENSION) и внешней линии (CO) отводятся поля шириной по 6 знаков. Обычно этого достаточно, однако в некоторых случаях требуется увеличить ширину поля — например, если в качестве идентификатора абонента выступает 7-значный городской номер. Для изменения ширины полей:

  • закройте модуль записи (PbxCollect.exe или PbxCollect_NTservice.exe) и основной Tariff32.exe
  • удалите (лучше — переместите в backup) файл со звонками. Путь к папке со звонками можно посмотреть в настройках программы — см. главный модуль программы, окно ‘Настройки->Главные параметры’, далее закладка ‘Папки’
  • найдите файл PbxCollect.ini – в зависимости от версий Windows и WinTariff’a он может находиться в одной из папок:
    Program files\WinTariff32
    ProgramData\WinTariff32
    Documents and Settings\All users\WinTariff32
  • откройте его в любом текстовом редакторе и исправьте строчку для параметра CallsDbfCorrections (уберите ‘звёздочку’ в начале строки!). Например, чтобы увеличить размер полей EXTENSION и CO до 10 знаков строка должна иметь вид
    CallsDbfCorrections=EXTENSION:10;CO:10
  • сохраните файл и снова запустите PbxCollect.exe – он создаст новый (пустой) файл с изменённой структурой.

Замечание 1. В некоторых случаях ограничение на размер поля накладывает не WinTariff, а сама телефонная станция. Например, станция Panasonic KX-TDA/KX-TDE для набранного номера в формате ‘A’ отводит поле размером в 25 символов, а WinTariff для хранения номера резервирует 35 символов. В подобной ситуации следует в настройках станции выбрать другой формат (если это возможно) — в той же станции KX-TDA/KX-TDE есть еще форматы ‘B’ и ‘C’ .

Замечание 2. Более сложных действий требует поле STATUS (колонка ‘Статус’ списка звонков; по умолчанию ширина этого поля 20 знаков). Например, чтобы увеличить до 40 знаков:

  1. сначала нужно изменить структуру файла Calls.dbf, как описано выше:
    CallsDbfCorrections=STATUS:40
  2. затем в файле Tariff32.ini (это настройки для главного модуля Tariff32.exe; файл можно найти в той же папке, что и PbxCollect.ini) изменить параметр StatusFieldWidth:

    StatusFieldWidth=40

  3. Потребность в изменении поля STATUS обычно возникает из-за желания увеличить размер поля для хранения названия города в параметрах тарифа. Поэтому потребуется еще и отредактировать структуру файла Codes.dbf в папке \Prices (поле NAME). Не рекомендуется делать это самостоятельно, лучше напишите в поддержку WinTariff’a, но для любопытных вот краткая инструкция:
    • для изменения структуры DBF-файла можно воспользоваться, например программой ‘Dbf Desktop’ из пакета Halcyon.
    • после настройки размеров полей обязательно нужно перестроить индексный файл Codes.mdx Для этого можно использовать ту же программу ‘Dbf Desktop’, либо просто запустить программу ‘Ремонт DBF файлов’ из состава WinTariff’a – на первой закладке следует проверить пути к папкам и нажать кнопку ‘Pack&reindex’