Изменение ширины полей файла со звонками
Файл 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 знаков:
- сначала нужно изменить структуру файла Calls.dbf, как описано выше:
CallsDbfCorrections=STATUS:40
- затем в файле Tariff32.ini (это настройки для главного модуля Tariff32.exe; файл можно найти в той же папке, что и PbxCollect.ini) изменить параметр StatusFieldWidth:
StatusFieldWidth=40
- Потребность в изменении поля STATUS обычно возникает из-за желания увеличить размер поля для хранения названия города в параметрах тарифа. Поэтому потребуется еще и отредактировать структуру файла Codes.dbf в папке \Prices (поле NAME). Не рекомендуется делать это самостоятельно, лучше напишите в поддержку WinTariff’a, но для любопытных вот краткая инструкция:
- для изменения структуры DBF-файла можно воспользоваться, например программой ‘Dbf Desktop’ из пакета Halcyon.
- после настройки размеров полей обязательно нужно перестроить индексный файл Codes.mdx Для этого можно использовать ту же программу ‘Dbf Desktop’, либо просто запустить программу ‘Ремонт DBF файлов’ из состава WinTariff’a – на первой закладке следует проверить пути к папкам и нажать кнопку ‘Pack&reindex’