Очередной раз столкнулся с проблемой временной таблицы возвращаемых CDR записей при заполнении истории в панели телефонии.
Реализован фильтр истории по номерам из списка отслеживаемых линий.
Ситуация:
Запрашиваем историю по номерам 101, 102. Получаем ответ.
ОК. Меняем фильтр на номер 333. Снова запрашиваем историю. Получаем пустые строки CRD (звонков в эту дату не было), в панели истории по-прежнему отображаются предыдущие записи истории.
Решение - в процедуре ЗаполнитьТаблицуИсторииЗвонков
Ситуация №2.
Запрашиваем истории звонков на дату, скажем, 20.10.2014. Вернулись записи, в таблице истории все красиво.
Передумали, сдвигаем дату истории на 25.10.2014. Получаем все те же записи истории, что и были ранее. Ситуация проявлялась при повторном обновлении истории с датой позднее выбранной ранее. Приходилось обозначать переменную при выборе даты из календаря и потом фильтровать таблицу истории
Но сейчас посмотрел фикс подошел и к данной ситуации
Реализован фильтр истории по номерам из списка отслеживаемых линий.
Ситуация:
Запрашиваем историю по номерам 101, 102. Получаем ответ.
ОК. Меняем фильтр на номер 333. Снова запрашиваем историю. Получаем пустые строки CRD (звонков в эту дату не было), в панели истории по-прежнему отображаются предыдущие записи истории.
Решение - в процедуре ЗаполнитьТаблицуИсторииЗвонков
Код |
---|
Если (ТЗИсторииЗвонковВременная <> Неопределено) И (ТЗ = Неопределено) Тогда ТЗИсторииЗвонковВременная.Очистить(); КонецЕсли; |
Ситуация №2.
Запрашиваем истории звонков на дату, скажем, 20.10.2014. Вернулись записи, в таблице истории все красиво.
Передумали, сдвигаем дату истории на 25.10.2014. Получаем все те же записи истории, что и были ранее. Ситуация проявлялась при повторном обновлении истории с датой позднее выбранной ранее. Приходилось обозначать переменную при выборе даты из календаря и потом фильтровать таблицу истории
Код |
---|
Если ТЗ[к].calldate < ПериодЗвонковНачало Тогда Продолжить; КонецЕсли; |