Универсальная замена поиском по подстроке в строковых реквизитах справочников

26.11.09

Задачи пользователя - Поиск данных

Универсальная замена поиском по подстроке в строковых реквизитах справочников

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
-
.1232952516 67,50Kb
325
325 Скачать бесплатно

Случилось так, что были мы "Читинская обл." а стали "Забайкальский край". И вот наконец масса людей меня задолбала и родилась эта (уже не маленькая)), читаем комменты) маленькая обработка.

 - работает на любой конфигурации 7.7, где есть справочники и строковые реквизиты в них

 - при запуске обнаруживает у этих справочников реквизиты типа "Строка" с вхождением слова "АДР" (подстроку поиска реквизитов можно изменить). Реквизиты "Наименование" и "Код" добавляются, если они текстовые и не 0

 - работает запуск из внешней обработки (UChoice.ert с диска ИТС). Для интеграции прописать в файл UCPlugIn.txt строку:

< "служб_спр_ЗаменаЧастиАдреса.ert",  "Замена по подстроке",     "Справочник"> в блок <Для справочников>
При запуске из UChoice.ert устанавливается фильр на справочник, обработка идет только по выбранному виду справочника

 - при замене реквизитов есть возможность "попытки" исправить неуникальный код справочника (в этом случае работает медленно, т.к. без использования транзакции)

ЗЫ: Всем, скачавшим до 27.01.08 14:10 Москвы ,качаем ОБНОВЛЕННУЮ 4-ю версию

См. также

Поиск данных Платформа 1С v7.7 Абонемент ($m)

Если у пользователя конфигурации 1С 7.7 сложный интерфейс (или несколько интерфейсов), в котором проблематично найти нужный элемент метаданных - константу, справочник или документ (журнал документов), отчет или обработку, в этом случае поможет универсальный навигатор - органайзер по элементам метаданных, позволяющий легко найти нужный пользователю вид объекта метаданных в отсортированном по алфавитному порядку списке идентификаторов, синонимов или даже комментариев объектов метаданных. Данная универсальная обработка позволяет выбрать и открыть необходимую форму списка и форму элемента. Для доступа к нужному объекту в конфигурации у пользователя должно быть настроено разрешение в правах пользователя, а ссылка в его интерфейсе пользователя в конфигурации не обязательна.

1 стартмани

09.10.2021    5058    0    ksnik    1    

7

Поиск данных Чистка данных Логистика, склад и ТМЦ Программист Оперативный учет 7.7 1С:Торговля и склад 7.7 Управленческий учет Абонемент ($m)

Простая и удобная обработка предназначена для поиска и исправления задублированных (повторяющихся) номенклатурных штрихкодов справочника Единицы. Также она даёт возможность посмотреть номенклатурные остатки. Полезна в случаях, когда номенклатура сопоставляется по штрихкоду с другими внешними источниками, а именно с модулем "Обмент ГИСМТ".

1 стартмани

19.11.2020    7927    1    Kuzya_brаtsk    4    

8

Корректировка данных Программист Пользователь Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

Обработки можно использовать в любой конфигурации 1С-Предприятия 7.7. Обработки позволяют просмотреть/изменить значения любого реквизита документов/справочников, существующих в базе. В обработках реализован множественный отбор по значениям реквизитов (для табличной части документов тоже). В обработке документов реализованы следующие действия: Перенумерация; проведение; отмена проведения; пометка на удаление; непосредственное удаление; снятие пометки удаления; изменение реквизитов; очистка реквизитов; удаление строк табличной части; вывод на печать и в файлы *.xls,*.csv,*.dbf,*.xml реквизитов шапки и табличной части. В обработке справочников реализованы следующие действия: Перенумерация; пометка на удаление; непосредственное удаление; снятие пометки удаления; изменение реквизитов; очистка реквизитов; очистка истории значений периодического реквизита; перенос справочника в другую базу подобной конфигурации по OLE; вывод на печать реквизитов и истории значений периодических реквизитов; вывод реквизитов в файлы *.xls,*.csv,*.dbf,*.xml; отчет по структуре справочников, вывод и обработка ссылок на выбранные элементы.

1 стартмани

23.11.2016    38880    224    SanchoD    15    

13

Корректировка данных Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

База данных помечается Suspect, когда SQL Server не может читать файлы данных, связанные с базой данных с жесткого диска. В этом случае сделать бекап базы нельзя, но можно попробовать образ диска. После того как возможность читать файлы данных восстановлена, вы можете перезапустить службу SQL Server, и если возможно, произойдет автоматическое восстановление. Что делать, если информационная база 1С7.7 на SQL Server 2000 перешла в состояние suspect? Если это произошло утром и бекап сделан, Вы, конечно, можете грохнуть и раскатать базу заново (вечером это проблематичнее), но не торопитесь - возможно, поможет detach+attach или другие методы, изложенные в данной публикации.

1 стартмани

08.11.2016    23285    ksnik    5    

5

Корректировка данных Программист Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Бухгалтерия для бюджетных учреждений 7.7 Беларусь Бухгалтерский учет Абонемент ($m)

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

1 стартмани

12.06.2016    36454    62    aselik    17    

11

Поиск данных Программист Платформа 1С v7.7 Абонемент ($m)

Обработка + консольная утилита (exe). Работает с использованием FormEx.dll (Алексей Фёдоров aka АЛьФ), strmatch (Ракунов Александр aka skorp) и 1sqlite (Александр Орефков). Выполняет быстрый нечеткий поиск по справочнику (по умолчанию - номенклатуры) с выводом наиболее похожих позиций в выпадающий список. Работает на 1с 7.7. Тестировалось на server 2003 в терминалах, в файловой БД. Предполагаемые достоинства: пример (более) «адекватного» (по меркам автора на данный момент) поведения поисковой строки (реализовано при помощи консольной утилиты, работающей через winapi – исходники прилагаются (писалось в lazarus)) и удобной навигации по списку, во время ввода. Является, скорее, примером для реализаций собственных адаптированных поисковых решений.

1 стартмани

30.12.2013    22241    34    Jill    13    

12
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vcv 89 26.01.09 14:01 Сейчас в теме
"НЕ РАБОТАЕТ с реквизитами типа "Строка неограниченной длины" (из-за Запроса)"
Жалко. Смотрю в свою конфу, которая какое-то время назад была типовым ТиС, и не вижу ни одного адреса, который бы не был строкой неограниченной длины.
2. Dolly_EV 269 27.01.09 04:33 Сейчас в теме
(1) Я когда написал - тоже наткнуля на подобное, и быстренько превратил длинные адреса в "Строка,240", ибо длиннее адрес вряд ли встретишь.
И для базы полезнее, т.к. длинные строки хранятся в отдельном файле.
3. vcv 89 27.01.09 07:49 Сейчас в теме
(2) А ж не про то, что можно переделать конфу под мелкую сервисную обработку. А про то, что лучше бы переделать обработку под типовую конфу, заявленную, кстати, в описании обработки.
А на SQL длинные строки хранятся в одной таблице со справочником. И занимают меньше места, чем Строка240.
4. Dolly_EV 269 27.01.09 08:09 Сейчас в теме
5. Dolly_EV 269 27.01.09 09:18 Сейчас в теме
(2)(3) Переделал, РАБОТАЕТ с длинными строками
6. vcv 89 27.01.09 09:30 Сейчас в теме
Осталось последний, несложный шаг по унификации. Расширить список обрабатываемых справочников. Сделать универсально, анализировать метаданные по всем справочникам, если где обнаружится реквизит "*Адрес*", те и предлагать заменять.
У меня, например, в конфе замена может понадобиться в следующих справочниках (часть типовые, часть нет): Банки, КлассификаторБанков, Пользователи, Фирмы (СвоиЮрЛица), Склады, Контрагенты (ФизЛица, ЮрЛица).
7. Dolly_EV 269 27.01.09 09:45 Сейчас в теме
(6) vcv, и ТОЛЬКО ПОСЛЕ этого ты поставишь "+" ?)))
10. vcv 89 27.01.09 10:03 Сейчас в теме
(7) А вот не поставлю! :-)

Во-первых, согласен с Altair777. Добавлю еще, что было бы хорошо делать нечеткое сравнение. С помощью, например, объекта RegExp. Примеров как пользоваться множество. И совершенно не сложно. Зато упростит исправление ошибок и опечаток в адресах.

Во-вторых, если уж планируется толковая утилита, достойная выкладывания в инет, то почему бы не сделать дополнительные фильтры. Для отбора, что же именно хочется менять. В виде множественного фильтра или привязки к UChoice.
9. Altair777 645 27.01.09 09:52 Сейчас в теме
(6) А почему только по реквизиту "*Адрес*"?
Можно сделать поле для ввода маски
11. Dolly_EV 269 27.01.09 10:40 Сейчас в теме
(9) Учтено
(10) Епрст!)) пока переделывал - уже новые пожелания!)))
Ладно, пока остановимся на этом:
-любые справочники,
-любые реквизиты (по подстроке),
-обработка неуникальности кода справочника при записи
Думаю, такое в инет уже можно выложить...
привязку у ЮЧУЙЗ и "мягкий" фильтр сделаю на досуге, сегодня уже некогда...
8. Dolly_EV 269 27.01.09 09:46 Сейчас в теме
Уболтал, напишу универсальную...
12. vcv 89 27.01.09 10:45 Сейчас в теме
Осталось еще чуть чуть и можно будет патентовать торговую марку "1С:Полнотекстовый поиск и замена 7.7" :-)
13. Altair777 645 27.01.09 11:55 Сейчас в теме
Пожелание - Поле ввода "СтрПоискаРекв" - написать формулу лЗаполнитьРеквизиты()

Неточность - у справочников есть еще предопределенный реквизит "Наименование" :-)
он не отрабатывается "Метаданные.Справочник(й).Реквизит()"
Точно также, как и "Код"
16. Dolly_EV 269 27.01.09 13:45 Сейчас в теме
(13) учтено
(14) Спасибо))
(15) Согласен, САМ ОТОРВАЛСЯ от текущей работы, чтоб сие ДОДЕЛАТЬ!))
Так и рождается "нетленка" )))
(12) ЮЧУЙЗ привязал, остался мягкий фильр, но это попозже...
14. PeRom 51 27.01.09 12:33 Сейчас в теме
За 5, 8, 11 и конечно за саму обработку. А то накинулись на человека, а благодарности никакой. :)
15. Altair777 645 27.01.09 12:46 Сейчас в теме
(14) Мы не накинулись
Наоборот, помогаем сделать ее лучше :-)
Так что еще вопрос, кому плюсики надо ставить ;-)

п.с. отрываюсь от своей разработки что бы человек помочь.
17. vcv 89 27.01.09 13:55 Сейчас в теме
"Так и рождается "нетленка" )))"
А может так рождается продукт, идеальный для своего применения?
Посмотри, например, на молоток. Иголку. Табуретку. Сильно они изменились за последние пару тысяч лет? Тот же UChoice. Прошло уже лет... семь? Восемь? И что, сильно устарел?
P.S. прошу вышесказанное не воспринимать серьезно. А так, в порядке бреда. Под конец тяжелого дня.
18. Dolly_EV 269 27.01.09 14:07 Сейчас в теме
(17) Угу, софистика поперла))
19. qwerfv 12.01.10 18:36 Сейчас в теме
В качестве пожелания - нужен промежуточный этап когда список того что будет меняться сформирован, но замена ещё не произошла - и кнопка подтвердить внизу - а то я сильно номенклатуру покоцал по первому разу - слава богу бэкап был.
а ещё доавить возможность выделений (всё\ничего\наоборот)
20. Dolly_EV 269 13.01.10 04:14 Сейчас в теме
(19) Если когда-нибудь вернусь к этому - учту ;)
Оставьте свое сообщение