ФИО-Корректор. Программа исправления ошибок в написании ФИО персон

 

Общие сведения

 

Последняя версия

3.3.8 (21 августа 2024)

Автор

Федорец О.В.

Название сборки, проекта

fio.exe, проект fio.

Среда разработки, компилятор,  версия .NET Framework.

Среда Visual Studio 2005 Professional Edition (SP3), компилятор Visual C# 2005 (SP1),  версия .NET Framework version 2.0

Модуль был создан и отлажен в ОС

Windows XP (SP3)

Использование модулей и утилит других разработчиков

Утилита FRText 3.x (автор: Крутиков) до версии 3.1 включительно, утилита FRTControl 4.x (Крутиков) начиная с версии 3.2.

Сборка OlSharp.dll для использования FrText в табличной форме DataGridView (автор: Откидач) используется до версии 3.1 включительно, с версии 3.2 не используется.

Дополнительная информация

Программа установавливается через web-браузер с адреса http://solar/update/fio-correct/publish.htm

Права в базе tbd присвоены роли PERS_CORRECTOR.

Инструкция пользователя в файле "Инструкция_ФИО-корректор.doc".

 

История изменений и дополнений

 

Версия

Дата

Описание

3.3.8

21 августа 2024

Увеличен таймаут в запросе, который отбирает перечень ошибок в табличную форму (после нажатия кнопки «Обновить»). Было 30 секунд, теперь 120 секунд. Таким образом, теперь сообщение «Время ожидания истекло» появится через 2 минуты ожидания результатов выполнения запроса.

3.3.7

8 апреля 2024

Программа пересобрана с опцией компилятора Platform targer = x86 (было Any CPU) и новой версией библиотеки FRTControl.dll 4.9.0.14 (было 4.9.0.7).

3.3.6

15 ноября 2021

Добавлен режим автозамены «текст >> Текст», который поднимает в верхний регистр первую букву строки. Добавлена ссылка на библиотеку Microsoft.Office.Interop.Word.dll, которая копируется локально при установке программы. Библиотека неявно используется компонентом FRTControl 4.x для контроля орфографии, поэтому в предыдущих версиях (в которых библиотека отсутствовала) при закрытии программы появлялось сообщение об ошибке.

3.3.5

13 ноября 2019

В режиме автозамены «точка» проставляется автоматически только после слова, состоящего из одной буквы в верхнем регистре. В предыдущей версии точка ставилась после любого односимвольного слова.

3.3.4

13 ноября 2019

Из References убрана ссылка на сборку stdole, но это не решило проблему: по-прежнему при закрытии программы возникает исключительная ситуация System.IO.FileNotFoundException с сообщением «Невозможно загрузить файл или сборку Microsoft.Office.Interop.Word». К этой сборке обращается FRTControl 4 для контроля орфографии средствами MS Word. Пока непонятно, как отключить загрузку этой сборки.

3.3.3

12 ноября 2019

Добавлен новый режим автозамены, который называется «точка». Автоматически проставляет точку после односимвольного слова (т.е. одиночного символа). Регистр символа не имеет значения. Если ФИО состоит из единственного символа, то точка не проставляется.

3.3.2

27 декабря 2018

После перехода на FRTControl 4 обнаружилась ошибка: после автозамены у последнего ФИО не вычищались коды выделения цветом (~~255,0,000 и т.п.) После исправления этой ошибки обнаружилась другая ошибка: после автозамены нескольких ФИО последнее значение ФИО оставалось неизменным, т.е. сохранялось прежнее значение. В процессе исправления этих ошибок в декабре были выпущены промежуточные версии (3.3, 3.3.1), где ошибки были исправлены частично. Обе ошибки исправлены полностью в версии 3.3.2.

3.2

11 июля 2018

Осуществлён переход с использования утилиты FRText 3.x на использование утилиту FRTControl 4.x.

3.1

16 мая 2013

Сохраняются в базу и восстанавливаются из базы дополнительные настройки: параметры сортировки и установки Checked (галочки) в двухуровневом списке источников поступления и связанных с ними мест хранения.

Исправлена ошибка при формировании отчёта о корректуре. Раньше новый отчёт добавлялся в конец предыдущего (при повторном нажатии кнопки "Отбор данных отчёта"), теперь новый отчёт заменяет предыдущий.

3.0

14 мая 2013

В фильтр по источникам поступления документа добавилась возможность  фильтрации по месту хранения документа. Пока в таблице соответствия asksrv.INS_METHOD_STORAGE коды мест хранения сопоставлены  только источнику поступления с кодом 13.

Если источник поступления не отмечен галочкой, то соответствующие ему места хранения игнорируются (т.е. в фильтрации не участвуют).

2.9.1

7 мая 2013

Исправлена ошибка. Сортировка списка ошибок по дате (начиная со второй попытки) приводила к исключительной ситуации.

2.9

25 апреля 2013

Добавлен пункт меню "Информация\Отчет о корректуре", который вызывает одноимённое окно "Отчет о корректуре". В окне можно задать диапазон  дат и получить отчёт. Отчёт можно просмотреть и распечатать.

2.8

16 апреля 2013

Добавлен фильтр по источникам поступления, коды и названия которых хранятся в словаре asksrv.ART_INS_METHOD. В список фильтра выводятся все источники независимо от их веса в словаре. Пользовательская установка этого фильтра в базу не сохраняется   (в отличие от фильтра по датам и весу ошибок).

2.7

10 апреля 2013

1. Добавлен пункт меню "Удалить все строки" (окно редактирования)

2. Добавлен пункт меню "Статистика ошибок", который вызывает окно, демонстрирующее сообщения об ошибках  и их частоту в журнале ошибок.

3. Запуск хранимой процедуры поиска ошибок по кнопке. Кнопка запуска в том же окне, которое вызывается пунктом меню "Статистика ошибок".

4. Предусмотрена защита от одновременного запуска процедуры 2-й раз.

5. Кнопка "Прервать" позволяет прервать выполнение процедуры, если

6. Она почему-то работает слишком долго, а пользователь не может ждать.

7. Ночью процедура работает менее 5 минут (при проверке ФИО, изменённых за последние 2 дня), днём скорость выполнения обычно снижается.

2.6

28 марта 2013

1. Предоставлена возможность выбора в ComboBox даты, которая будет использоватьсядля отбора ошибочных ФИО. Выбор из двух вариантов: "Дата модификации документа" (по умолчанию) и "Дата обнаружения ошибки". Дата модификации берётся из поля upd_date в таблице askdoc.DOC_INFO. Дата обнаружения - из поля find_date в таблице askaut.PERS_ERROR (журнал ошибк). В предыдущих версиях использовалась только "Дата обнаружения ошибки".

 2. В окне редактирования вместо кнопки "Сохранить" сделана кнопка "Сохранить и закрыть". После сохранения окно закрывается автоматически только в том случае, если кол-во ошибок = 0. Кол-во ошибок выводится в правой верхней части окна.

 

2.6

28 марта 2013

1. Предоставлена возможность выбора в ComboBox даты, которая будет использоваться для отбора ошибочных ФИО. Выбор из двух вариантов: "Дата модификации документа" (по умолчанию) и "Дата обнаружения ошибки". Дата модификации берётся из поля upd_date в таблице askdoc.DOC_INFO. Дата обнаружения - из поля find_date в таблице askaut.PERS_ERROR (журнал ошибк). В предыдущих версиях использовалась только "Дата обнаружения ошибки".

 2. В окне редактирования вместо кнопки "Сохранить" сделана кнопка "Сохранить и закрыть". После сохранения окно закрывается автоматически только в том случае, если кол-во ошибок = 0. Кол-во ошибок выводится в правой верхней части окна.

2.5

27 марта 2013 г.

1. В фильтре увеличен диапазон веса ошибки (с 1 по 9, было до 5

2. В окне редактирования поменялись местами колонки "Дата" и "Проверка отключена".

3. При попытке выделить более 100 строк появляется предупреждающее диалоговое окно.

Первая радио-кнопка в окне редактирования (кнопка --<<) включается при каждом вызове окна.

2.4

27 марта 2013 г.

Было сделано всё то, что выше написано про версию 2.5, но были две ошибки.

 1. Не включалась кнопка --<<

 2. Не был обновлён номер версии в заголовке окна (остался 2.2).

Поэтому была выпущена версия 2.5 с внесёнными исправлениями.

2.3

01 марта 2013 г.

Исправлена ошибка: при поиске по диапазону дат использовалось текущее время компьютера.

Теперь задаётся время 0:00 у начальной даты и время 23:59 у конечной даты диапазона.

2.2

13 февраля 2013

В гриде (в главном окне) отключена сортировка по щелчку мыши на заголовке колонки.

Вместо этого для управления сортировкой добавлены два ComboBox-а.

Один позволяет выбрать название колонки, по которой выполняется сортировка.

Другой позволяет изменить порядок сортировки (по возрастанию или по убыванию).

Изменив параметры сортировки, нужно нажать кнопку "Обновить". При этом в базу отсылается SQL-запрос SELECT с новым ORDER BY.

2.1

11 февраля 2013.

1. В главном окне на гриде можно нажать правую клавишу мышки, появится  меню. В нём два пункта: "Редактировать" и "Копировать ИД_БО в буфер обмена". Редактировать вызывает окно редактирования, т.е. действует идентично пункту  меню "Команды\Редактировать F2".

2. Пункт меню "Автозамена\Выполнить для все" - добавлена горячая клавиша Ctrl+F5.

3. В окно редактирования ФИО добавлена кнопка "Сохранить и выйти" и кнопка "Выход без сохранения"

4. В окно редактирования (в котором выдаётся список ФИО с ошибками для данного ИД_БО) добавлена кнопка "Закрыть", которая закрывает окно (т.е. выполняет  действие, идентичное нажатию крестика на рамке окна).

2.0

24 октября 2012.

В окне редактирования реализован пункт меню "Автозамена" с двумя подпунктами "Выполнить для одного F5" и "Выполнить для всех". Выполняются автозамены четырёх видов (такие же, как в окошке редактирования одного ФИО).

1.9

22 октября 2012 г.

Если выделить более одной строки в журнале ошибок и нажать "F2 Редактирование",то в окно редактирования будут отобраны именно эти персоны (по полю pcode таблицы askaut.PERSON). В данной версии пока нет групповой модификации, т.е. редактировать ФИО можно только по одному.

Если выделена только одна строка в журнале ошибок, то отбор выполняется как раньше - все персоны для данного id_bo и status в таблице askaut.PERSON.

1.8

11 октября 2012 г.

Когда отлаживался в предыдущей версии, поменял базу на tbddvp. Чтобы поменять базу на tbd, пришлось опубликовать следующую версию.

1.7

11 октября 2012 г.

В версию 1.6 внесена ошибка - перестали работать добавление и вставка персон  (не вызывалось окно редактирования новой строки). Ошибка исправлена.

1.6.

11 октября 2012 г.

А) Пункт меню "Исходный текст" в окне редактирования - вызывает редактирование

ФИО через обычный TextBox (т.е. не FRTEXT). FRTEXT там тоже используется -

для контроля правильности алфавита ВИНИТИ и выдачи сообщения о нарушении алфавита.

Б) Под строкой редактирования ФИО (которая вызывается по клавише F2)

появились следующие новые кнопки:

  "Очистить"             очистка строки ввода

  ---<<                         последнее слово переставляется в начало

  >>---                         первое слово переставляется в конец

  Рус >> Лат               русские символы заменяются на латинские

  Лат >> Рус               латинские символы заменяются на русские

 

  Заменяются следующие визуально похожие символы (18 шт.):

             // латиница:

             { 'a', 'e', 'o', 'p', 'c', 'y',

             'x', 'A', 'B', 'E', 'K', 'M',

             'H', 'O', 'P', 'C', 'T', 'X' };

1.5

неизвестно

1. Сохранение и восстановление установок фильтра (ключ - логин пользователя).

2. Текущие установки фильтра (кол-во дней между датами, мин. и макс. вес ошибки)сохраняются в БД каждый раз при нажатии кнопки "Обновить".

3.Значения установок считываются из БД и устанавливаются сразу после присоединения к БД.

1.4

25 июля 2012 г.

Программа опубликована на \\SOLAR\UPDATE\FIO-CORRECT\         URL для инсталляциии с сайта http://solar/update/fio-correct/

1.3

23 июля 2012 г.

Сделан пункт меню "Вставить строку" в окне "Редактирование".

Строка (т.е. новое ФИО) вставляется перед текущей строкой.

1.2

18 июля 2012 г.

Добавлен перехват исключительных ситуаций, которые могут возникнуть при вызове окна редактирования персон.

1.1

12 июля 2012 г.

            а) Добавлено окно, показывающее Exception (в т.ч. стек вызовов).Теперь в случае возникновения исключительной ситуации можно увидеть больше информации (раньше показывалось только сообщение об ошибке)

            b) При добавлении новой персоны автоматически вызывается окно редактирования добавленной персоны. В окне редактирования установлен запрет на ввод пустой строки.

            с) Добавлено использование транзакций. В предыдущей версии обновление, добавление и удаление записей происходило без транзакции.

1.0

11 июля 2012 г.

            Данная версия позволяет просматривать протокол ошибок и выполнять редактирование, удаление и добавление персон. Настройки в файле fio.exe.config, там можно поменять имя SQL-сервера и имя базы (см. параметры Data Source=EAGLE;Initial Catalog=tbddvp)

            Ограничение: вставка персон пока не реализована. Персоны добавляются в конец списка, т.е. получают максимальный порядковый номер в поле ordnum.

            Права: в базе создана роль PERSON_CORRECTOR, этой роли присвоены права, необходимые для работы программы.