|
v7: НайтиПоНаименованию() | ☑ | ||
---|---|---|---|---|
0
Franchiser
26.10.23
✎
20:45
|
В справочнике есть дубли наименований. Есть предположение что найтипонаименованию() находит элемент с минимальным кодом а не случайный элемент. Это верное утверждение?
|
|||
1
Franchiser
26.10.23
✎
20:46
|
База sql
|
|||
2
Злопчинский
26.10.23
✎
20:47
|
мои наблюдения говорят что это утверждение неверное.
похоже, что определяется элемент, введенный хронологически первым. Даже если и так, то это необязательно всегда так ;-) Но я могу ошибаться |
|||
3
Злопчинский
26.10.23
✎
20:48
|
надо глянуть как индекс построен
|
|||
4
Franchiser
26.10.23
✎
20:48
|
Profiler может отловить запрос генерируемый через найтипонаименованию()?
|
|||
5
Смотрящий
26.10.23
✎
21:09
|
По минимальному ИД ищется
|
|||
6
Franchiser
26.10.23
✎
21:11
|
Это точно? Проверили профайлером?
|
|||
7
Franchiser
26.10.23
✎
21:12
|
То есть если находится сейчас, то это так будет постоянно?
|
|||
8
Злопчинский
26.10.23
✎
21:29
|
(7) не факт.
|
|||
9
Злопчинский
26.10.23
✎
21:30
|
(7) не надо на этом принципе строить базу последующих алгоритмических выводов ;-)
|
|||
10
Sserj
27.10.23
✎
05:25
|
В SQL базе у справочников индекс DESCR состоит из двух полей DESCR,Row_id.
Так что вероятнее метод найдет первую добавленную в таблицу строку. |
|||
11
Bigbro
27.10.23
✎
05:30
|
почему бы не избавиться от дублей вместо изобретения костылей которые могут в любой момент подвести.
|
|||
12
DJ Anthon
27.10.23
✎
05:45
|
(11) как вы это в семерке сможете сделать? когда я решал эту проблему лет 15 назад, пришлось написать целый механизм, разбирающий и собирающий конфигурацию заново, потому что семерка не умеет писать в регистры накоплений и регистры расчетов, а прямые запросы у нас были запрещены.
|
|||
13
Kigo_Kigo
27.10.23
✎
08:45
|
(12) Переимновать дубли, не?
|
|||
14
DJ Anthon
27.10.23
✎
09:16
|
(13) избавиться от дублей - это не переименование.
|
|||
15
Kigo_Kigo
27.10.23
✎
09:22
|
(14) да это если перелопачивать базу и передоставлять ссылки, а это ох как не просто, проще переименовать и похоронить, оставив только один
|
|||
16
Bigbro
27.10.23
✎
09:23
|
(12) когда я решал эту проблему лет 15 назад - мы делали отдельный механизм глобальных и локальных контрагентов и материалов для распределенной базы с порядка 80к контрагентов и 190к материалов. по итогу был отдельный человек который администрировал центральный глобальный справочник, устранял дубли. а мы сделали для него все инструменты с заменами, заявками на новые элементы, автоматической заменой ссылок новых элементов на глобальные после их добавления и так далее.
конструкция получилась шикарная. в каждой из локальных баз хранилось примерно 10-15% от объема всего глобального справочника. |
|||
17
DJ Anthon
27.10.23
✎
09:39
|
(16) если не секрет, как меняли дубли в регистрах? перепроводили документы?
|
|||
18
vicof
27.10.23
✎
09:40
|
Переходите на 8-ку
|
|||
19
DJ Anthon
27.10.23
✎
09:52
|
(18) как будто там эта проблема решена ))
|
|||
20
Смотрящий
27.10.23
✎
10:01
|
(17) В клюшках только перепроведением регистры меняются.
|
|||
21
Андрей_Андреич
naïve
27.10.23
✎
10:04
|
(20) А Update + пересчет итогов?
|
|||
22
Смотрящий
27.10.23
✎
10:12
|
(21) В свое время делал так - написал обработку которая пробежалась по всем документам базы и насоздавала файликов ТипДокументаДатаНомер.txt в отдельном каталоге выгрузив туда движения документов, в модули обработки проведения воткнул код который при нахождении файла читал движения с него и проводил документы с этими движениями, в случае ненахождения - проводил документ как обычно.
Вышел в выходные и типовым поиском и заменой дублей подменил все с перепроведением. Подправил ГП. Перевыгрузил все РИБы. |
|||
23
Смотрящий
27.10.23
✎
10:15
|
Таблицу подмены номенклатуры еще в файл загнал, с нее процедурка подменяла номенклатуру.
17к+ файлов насоздавала обработка, 7 видов документов. Так что все реально |
|||
24
Андрей_Андреич
naïve
27.10.23
✎
10:22
|
(23) Ну и закинул бы таблицу подмены номенклатуры в табличку в базе и сделал Update нужных регистров RA и табличных частей документов и затем пересчет итогов. Хотя сделал - работает - отлично.
|
|||
25
Смотрящий
27.10.23
✎
10:24
|
(24) На тот момен ТиС была файловая
|
|||
26
DJ Anthon
27.10.23
✎
11:45
|
(20) так я поэтому и спрашиваю. Потому что надо перепровести документ так, чтобы ни одно движение не изменилось, только ссылки на дубли изменились. Я выгружал конфигу в файлы, делал изменения модулей (подменял вызов проведения на свой, который читал все движения и подменял ссылки), собирал конфигу, перепроводил, потом возвращал бэкап конфигурации обратно.
|
|||
27
Bigbro
27.10.23
✎
12:12
|
(26) нет, такого колдовства точно не было, видимо перепроводились, точно уже не помню.
|
|||
28
DJ Anthon
27.10.23
✎
12:57
|
(27) а вот она https://infostart.ru/1c/tools/96745/
однако я там замахнулся на многие задачи, а оттестировать на большом количестве баз не удалось, как бета работает хорошо. как замена дублей работает точно. плохо работает в случае переноса между разными конфигурациями. |
|||
29
Bigbro
27.10.23
✎
13:16
|
(28) это прекрасно, но с опозданием лет на 8-9 от момента когда нам требовалось решать свои задачи))
|
|||
30
AAA
27.10.23
✎
13:23
|
(26)а зачем модули менять, можно было обработкой перебирать документы, выбирать их движения и менять в них ?
|
|||
31
Bigbro
27.10.23
✎
13:42
|
(30) а разве это не в 8ке только дали возможность движения документа пихать куда не попадя хоть к другому документу хоть вообще к удаленному?
|
|||
32
AAA
27.10.23
✎
13:55
|
(31)не понял ко мне вопроса ) в 8-ке дали )
|
|||
33
Bigbro
27.10.23
✎
14:24
|
(32) так тут про клюшки разговор)
|
|||
34
AAA
27.10.23
✎
14:41
|
(32)да, принимаю
я почему то подумал, что DJ в 8-ке делал. Каюсь )) |
|||
35
FN
27.10.23
✎
14:42
|
||||
36
DJ Anthon
27.10.23
✎
18:11
|
(34) в восьмерке тоже не все гладко. допустим, удаление дублей работает, но конечный результат - просто сообщение в конце работы - у вас могут быть проблемы с дублями в связанных справочниках, и все. а то, что при этом теряется список всех объектов - пофиг, иди всю базу проверяй. Но это фигня, есть ведь ещё скрытые объекты, которые можно увидеть только специнструментом, например, в ерп после объединения номенклатуры надо объединять ключи аналитики, после объединений контрагентов - объекты расчетов, плюс куча дополнительных проблем в регистрах журналов, а если ещё навешано куча расширений типа битрикса, там вообще могут даже битые ссылки образоваться. не говоря уже про ситуации, которые программно вообще невозможно учесть - например, если вы объединили виды расчетов в зп, ошибок технически у вас не будет, пока, например, вы не решите уволить человека - ведь у него будут дубли в регистрах сведений типа Плановые начисления. Об этом объединение дублей вообще ничего не говорит. И руками править ничего нельзя...
|
|||
37
AAA
27.10.23
✎
19:41
|
(36)а кто с этим спорит?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |