По непонятным причинам okof.txt из ИТС диска для 7.7 не содержит правильных данных. Например, для кодов 14_3313143, 14_3313341 указана четвертая группа ОС а надо вторая. Поставили задачу написать загрузку из 8ки, так и родились эти две обработки, которыми хочу поделиться.
Разбор ХML проводится через V7PLUS.DLL ВК должен лежать в КаталогИБ()+»v7plus.dll»
-
ИмпортОКОФ_Обновление_существующих.ert обновляет существующие элементы не затрагивая структуру справочника и не требует изменения конфигурации.
-
ИмпортОКОФ.ert делает справочник Общероссийский Классификатор Основных Фондов максимально похожим на восьмерочный но требует в конфигурации увеличить количество уровней до 10.
Алгоритм работы довольно прост и тривиален — сначала помечаем весь справочник на удаление, далее зачитываем ХМЛ и обновляем.
V7PLUS.DLL на всякий случай в архиве прилагается.
По непонятным причинам okof.txt из ИТС диска для 7.7 не содержит правильных данных. Например, для кодов 14_3313143, 14_3313341 указана четвертая группа ОС а надо вторая. Поставили задачу написать загрузку из 8ки, так и родились эти две обработки, которыми хочу поделиться.
Перейти к публикации
оригинальное решение, только почему это в семерочном справочнике расхождение с восмерочным, странно
зачем далеко ходить код 14_3313143 группы отличаются 4 и 2.
okof.txt от 18.08.2011
«14_0000000», «14_3313000», «14_3313010», «14_3313143», «Анализаторы аэрозолей, твердых и сыпучих веществ (пылемеры, дымномеры, туманомеры и прочие)», «9», «ЧетвертаяГруппа», «М4»
okof.xml 20.09.2011
— <CatalogObject.ОбщероссийскийКлассификаторОсновныхФондов>
<Ref>edb70f14-11ce-11e0-a532-e0cb4ed5f5fb</Ref>
<IsFolder>false</IsFolder>
<DeletionMark>false</DeletionMark>
<Parent>edb70f13-11ce-11e0-a532-e0cb4ed5f5fb</Parent>
<Code >14 3313143< /Code>
<Description>Анализаторы аэрозолей, твердых и сыпучих веществ (пылемеры, дымномеры, туманомеры и прочие)</Description>
<КонтрольноеЧисло>9</КонтрольноеЧисло>
<НаименованиеГруппировки>Анализаторы аэрозолей, твердых и сыпучих веществ (пылемеры, дымномеры, туманомеры и прочие)</НаименованиеГруппировки>
<АмортизационнаяГруппа>ВтораяГруппа</АмортизационнаяГруппа>
</CatalogObject.ОбщероссийскийКлассификаторОсновныхФондов>
PS спасибо Вам за Ваш голос
А у меня ошибка
Файл.Загрузить(ИмяФайла);
{C:1CBAZAEXTREPORTОБНОВЛЕНИЕОКОФ77ИМПОРТОКОФ.ERT(95)}: : Type ‘{urn:uuid:4c9a8080-e11c-11dc-a7e6-0002a5d5c51b}LegalRefWithRevisionsType’ is not found in Schema.
[ <legal-ref xmlns=»urn:uuid:4c9a8080-e11c-11dc-a7e6-0002a5d5c51b» xsi:type=»LegalRefWithRevisionsType»> (error position = 105)]
проверьте что бы v7plus.dll лежал в КаталогИБ()+»v7plus.dll»
а также воспользуйтесь файлом okof.zip, добавил специально для Вас
небольшое добавление
после увеличения количества уровней до 10 Обработку ИмпортОКОФ.ert НЕОБХОДИМО запускать в монопольном режиме.
Спасибо за данную обработку! Как раз мне сейчас нужна была!
(6) Fruit83,
пожалуйста, очень приятно
думаю со временем таких «костылей» будет все больше
Спасибо за обработку, действительно в 8-ке все группы указаны верно, а в 7 старые классификаторы…
Эта обработка актуальна для версии 8.2. В версии 8.3. есть подгруппы, т.е. один номер ОКОФ может принимать несколько значений Амортизационных групп, в зависимости от типа ОС.
Пример: Дома щитовые:
1. жилища каркасно-камышитовые и другие облегченные — Шестая группа (свыше 10 лет до 15 лет включительно)
2. жилища, кроме включенных в другие группы — Десятая группа (свыше 30 лет)
Так что на данный момент, эта обработка не актуальна)))
Нужно допиливать версию 7.7 для выбора аморт. групп из списка. А это изменение конфы, как минимум.
Эта обработка актуальна для версии 8.2.
не совсем так, эта обработка актуальна для 7.7 🙂
а вот okof.xml нужно брать тот что идет для 8.2
(11)
Обработка работает правильно, я не об этом.
Все течет и развивается))
Если в 8.2 ОКОФ код 12 4526551 имеет только одну группу — четвертую, то в 8.3 группа может принимать 2 значения, в зависимости от типа ОС.
1. мачты деревянные 4 группа
2. воздушные линии электросвязи; кабельные линии электросвязи; оптоволоконные линии связи; тракт волноводный — 6 группа.
Бухгалтер по вашей обработке выберет 4 группу, что может быть не правильно.
По этому я и говорю, что эта обработка для 7.7 не актуальна. Надо развиваться))
(12) Vaskoba, Обработка работает правильно
значит пора переходить на 8+
Файл.Загрузить(ИмяФайла);
УЩЕСТВУЮЩИХ.ERT(90)}: : xsi:nil attribute on element ‘legal-ref’ is invalid.
{\FILERARTLIFE1СККУЗАГРУЗКА ОКОФ — БП 77ОБНОВЛЕНИЕОКОФ77ОБНОВЛЕНИЕОКОФ77ИМПОРТОКОФ_ОБНОВЛЕНИЕ_С
[ <legal-ref xmlns=»urn:uuid:4c9a8080-e11c-11dc-a7e6-0002a5d5c51b» xsi:nil=»true»/> (error position = 84)]
(15) смотрите в сторону v7plus.dll и xml файла, судя по ошибке
xml, для проверки тут же выкладывал
Сделал загрузку типовыми средствами:
1) Зашел монопольно
2) Открыл справочник «Общероссийский классификатор основных фондов»
3) Нажал «Загрузить»
4) Указал свежий файл ОКОФ.txt (во вложении)
если в OKOF.TXT поправили значения групп которые обсуждались выше, то почему бы и нет
(18)Новый окоф 2017 года с новыми кодами также можно загрузить? Спасибо!
уже давно не работаю с 7.7, не скажу
посмотрите если структура okof.xml совпадает с выложенным здесь, то загрузиться