|
Причесать контрагентов |
☑ |
0
Balabass
15.05.13
✎
03:44
|
Есть 4 баз Бух. Везде естественно контрагенты заведены как попало - нет стандарта. ООО"РОГА" ООО "РОГА" ООО РОГА "РОГА" ООО.
По сути - одно и тоже, но в 2х - есть ИНН, в 2х - нет. В 1 есть КПП - в 3х Нет.
Поставили задачу - привести контрагентов в порядок, убрать дубли, сделать няшку из говнишка.
Сижу ломаю голову. Есть велосипед или теория как это делать? Или изобретать?
Сам делаю так - слил всех контрагентов из всех баз в 1 единую.
Объединяю контрагентов по реквизитам опорным, удаляю дубли-бубли.
А вот следующий щаг по выгрузке обратно и замене элементов представляю смутно.
Вообщем советы в студию.
|
|
1
Ursus maritimus
15.05.13
✎
03:48
|
Универсальная обработка на ИТС: ПоискИЗаменаЗначений.
ЗЫ: Контрагентов нужно обувать, а не причесывать.
|
|
2
Balabass
15.05.13
✎
03:51
|
(1) Увы - не на том стуле сижу, чтобы обувать.
Замена и поиск - это финальный этап мне кажется, после причесывания.
Или сначала лучше найти и заменить? а потом причесать остатки?
|
|
3
vJet
15.05.13
✎
04:05
|
По поводу наименования.
Кури регулярные выражения, разбивай наименование на отдельные слова, и ищи соответствия по словам. Text minig же)
|
|
4
Balabass
15.05.13
✎
04:23
|
(3) Думал на эту тему. Спасибо за совет.
|
|
5
vJet
15.05.13
✎
06:22
|
(4)Поделюсь кодом
объектРегЕксп = Новый COMОбъект("VBScript.RegExp");
Функция разобратьТекстРегЕксп(данныеТекст,Шаблон,многоСтрочн,глобальн,игнорироватьРегистр)
Результат = Новый Массив;
ОбъектРегЕксп.MultiLine = МногоСтрочн;
ОбъектРегЕксп.Global = Глобальн;
ОбъектРегЕксп.IgnoreCase = ИгнорироватьРегистр;
ОбъектРегЕксп.Pattern = Шаблон;
результатПоиска = ОбъектРегЕксп.Execute(данныеТекст);
Для сч = 0 по результатПоиска.count-1 Цикл
Для сч1=0 по результатПоиска.item(сч).SubMatches.Count-1 Цикл
Результат.Добавить(результатПоиска.item(сч).SubMatches.item(сч1));
КонецЦикла;
КонецЦикла;
Возврат Результат;
КонецФункции
Функция разобратьТекстНаСлова(пТекст)
обработанныйТекст = черноваяобработкаТекста(пТекст);
результатПоиска = разобратьТекстРегЕксп(обработанныйТекст+" ","(.+?[\s|$])",Ложь,истина,истина);
Возврат результатПоиска;
КонецФункции
|
|
6
andreymongol82
15.05.13
✎
06:52
|
(5) Спасибо. Пригодится. Закладка.
|
|