Что делать, если вы нечаянно удалили сотрудника из справочника в DocsVision

Наталья Анохина

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

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

К счастью, помимо перевыбора сотрудника во всех тысячах карточек, есть другое решение. Порядок действий следующий:

1. Найти идентификатор старого сотрудника. Это можно сделать, открыв xml карточки (Экспорт и печать - XML карточки) и из поля, в котором был указан данный сотрудник, скопировать идентификатор. Например, если сотрудник был указан в поле Зарегистровал, в xml нужно искать RegisteredBy в секции MainInfo.
Названия полей карточек вы можете узнать из документа "Описание полей стандартных карточек", входящего в комплект разработчика.

2. В базе DocsVision в таблице dvtable_{DBC8AE9D-C1D2-4D5E-978B-339D22B32482} найти вновь созданного сотрудника и заменить идентификатор в столбце RowID на ID, скопированный из xml.
Либо можно сделать то же самое, выполнив SQL запрос

UPDATE [dvtable_{DBC8AE9D-C1D2-4D5E-978B-339D22B32482}]
SET RowID='Старый ID'
WHERE LastName='Фамилия сотрудника'

где Старый ID - скопированный из xml идентификатор.

(Данный запрос подойдет только в том случае, если сотрудник с такой фамилией один. Если их несколько, необходимо использовать другое условие WHERE).


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=22004