Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
18 апр 2024, 04:34

Перезапись регистра сведений

Автор Kuznetsova, 12 апр 2011, 13:28

0 Пользователей и 1 гость просматривают эту тему.

Kuznetsova

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

Klyacksa

А в чем проблема? Что не получается?
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Kuznetsova

Цитата: Klyacksa от 12 апр 2011, 13:43
А в чем проблема? Что не получается?
Проблема в том, что регистр содержит более 15000 записей. Данные в регистр поступили не обычным путем, а выгрузкой из Foxpro (а в Foxpro из MVS). Адрес в регистре есть, но он не соответствует тому виду, который требует Пенсионный фонд. Например, адрес "МКР-2 ул"  это правильно, а в регистре может быть записано: "2-МКР Ул"   или  "2МКР ул"   или  "МКР-2 Ул"  или  "ул МКР-2"   и  т.д.
Мы сейчас с помощью условного оператора "ЕСЛИ...ТОГДА" перезаписываем адреса, но это практически вручную.(А регистр большой и вариантов адресов море!).
Может быть возможно как-то усовершенствовать этот процесс? Может кто-то как и мы работали раньше в других системах и тоже сталкивались с такой проблемой и решили ее?

cska-fanat-kz

Автоматом поменять можно в том случае если найдете какую нибудь закономерность.
Ее и запрограммировать.

А так. Это только вы знаете что "2-МКР Ул"   или  "2МКР ул"   или  "МКР-2 Ул"  или  "ул МКР-2" - это неправильно ;)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

***Vjacheslav***

В данном случае каждый конкретный случай нужно предусматривать. Машина еще не научилась считать мысли человека который пишет текст. Пример из моего опыта: у нас когда переносили справочник номеклатуру (тоже кстати из FoxPro) в наименовании некоторых стоит слово "In Вulк". Вот эти программисты толи специально или пользователи до это так умудрились буквы В и к написать русские, а u и l - англиские. Вот как после этого можно понять человека.

Kuznetsova

Цитата: ***Vjacheslav*** от 13 апр 2011, 08:07
В данном случае каждый конкретный случай нужно предусматривать. Машина еще не научилась считать мысли человека который пишет текст. Пример из моего опыта: у нас когда переносили справочник номеклатуру (тоже кстати из FoxPro) в наименовании некоторых стоит слово "In Вulк". Вот эти программисты толи специально или пользователи до это так умудрились буквы В и к написать русские, а u и l - англиские. Вот как после этого можно понять человека.
Спасибо за моральную поддержку!

cska-fanat-kz

Посмотрите внимательней. Возможно закономерности есть, просто не у всех элементов.
Тогда каждую отдельную закономерность обрабатывайте отдельно.
В любом случае лучше чем каждый элемент менять...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Kuznetsova

Цитата: cska-fanat-kz от 13 апр 2011, 12:24
Посмотрите внимательней. Возможно закономерности есть, просто не у всех элементов.
Тогда каждую отдельную закономерность обрабатывайте отдельно.
В любом случае лучше чем каждый элемент менять...
Мы так и поступаем. Спасибо за внимание.

Klyacksa

ЦитироватьПроблема в том, что регистр содержит более 15000 записей.
Ну тут уж, как говорится, хоть 1, хоть 1000, хоть 15000 записей - алгоритму безразлично :) Только в плане скорости выполнения.

Можно, обработать только понятные случаи, а остальные руками подправить. То есть, заменить варианты типа "Ул", "уЛ","УЛ" на правильное "ул", если гарантировано оно должно быть в конце, то перенести в конец. А вот с пробелами/тире/цифрами - только искать закономерность. В вашем примере, у нас гарантировано цифра идет после букв и тире, тогда все варианты
"2-МКР", "2МКР", "МКР2" - разбираем, выделяем две составляющие - число 2 и слово МКР, и из этих частей собираем - "МКР-2".
Но для этого нужно быть уверенным, что именно в таком формате всегда должно быть представление...
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Kuznetsova

Цитата: Klyacksa от 13 апр 2011, 14:53
ЦитироватьПроблема в том, что регистр содержит более 15000 записей.
Ну тут уж, как говорится, хоть 1, хоть 1000, хоть 15000 записей - алгоритму безразлично :) Только в плане скорости выполнения...
Полностью с Вами согласна. Спасибо за идею разбивки на составляющие...

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск