Истребитель
|
|
1 | |
Дубликаты контрагентов, замена ссылок на контрагентов в документах04.05.2011, 15:45. Показов 29423. Ответов 16
Метки нет Все метки)
(
Добрый день!
Стоит задача поправить в базе контрагентов. По различным причинам (импорт из 7.7, обмен данными с другой базой 8.1) в базе образовались дубликаты одного и того-же контрагента. Нужно сделать так, чтобы остался только один. При этом если скажем на обоих контрагентов есть счёт или реализация товаров и услуг - нужно поменять там ссылки на того, который остаётся. Я планирую написать обработку, которая позволит выбирать из пар дубликатов того, который остаётся, а для того, который удаляется, сделает поиск по базе, и для каждой найденной ссылки заменит её на того, который остаётся, сохранит, а затем когда всё обойдёт, проведёт всё, что заменялось и было проводимым. Вопрос первый - правильно ли я мыслю? Так ли стоит делать? Быть может есть ошибка, или есть какой-то известный способ сделать проще, или готовая обработка? Вопрос второй - как получить список всего, что ссылается на объект? Как например при удалении обработка показывает - какие есть ссылки, как мне сделать такой запрос? Конкретно - мне нужны все ссылки на контрагента, но ведь удалялка 1С для любых объектов показывает это, интересно, как это делается? Спасибо!
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь |
|
04.05.2011, 15:45 | |
Ответы с готовыми решениями:
16
Выгрузка контрагентов
Выборка контрагентов по собственнику |
1 / 1 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
04.05.2011, 16:03 | 2 |
логика у тебя верная, ИМХО. тебе поможет
НайтиСсылки(<?>,); Синтаксис: НайтиСсылки(<Объекты>,<Ссылки>) Назначение: Находит ссылки на объекты, переданные в списке значений. Параметры: <Объекты> - конкретное значение искомого объекта или значение типа СписокЗначений, в котором данной процедуре передаются объекты, по которым надо найти ссылки. <Ссылки> - идентификатор объекта типа ТаблицаЗначений, в который данная процедура помещает найденные ссылки на объекты. Таблица значений состоит из 3 колонок: 1. объект на который ссылаются; 2. объект, который содержит ссылку; 3. комментарий к ссылке.
0
|
Истребитель
|
|
04.05.2011, 20:04 | 3 |
Спасибо, видимо это то, что нужно.
Не будет ли базе "плохо" от перепроведения такого количества документов? Нет ли какого-то "закрытия года" или что-то типа того, что подразумевает, что документы в той части уже не должны меняться больше? Добавлено: Эмм, функции "НайтиСсылки" нет. У меня восьмерка, а не семерка... |
Истребитель
|
|
04.05.2011, 20:23 | 4 |
Разобрался, называется немного иначе и работает немного иначе но всё равно работает
Как и подозревал, есть дубликаты, участвующие аж во вводе начальных остатков. Вопрос - нормально ли их трясти? (т.е. заменять контрагента в документе ввод начальных остатков и перепроводить документ, по сути, задним числом)? |
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
|
|
05.05.2011, 04:56 | 5 |
Вы ребята молодцы, что готовы это писать! Но не надо)
Гуглите "Поиск и замена значений". Можно на ИТС. И перепроводить не надо ничего.
0
|
Истребитель
|
|
05.05.2011, 09:28 | 6 |
Благодарю! Именно это, вероятно, и искал. Но как же не перепроводить?
Допустим есть документ - продажа товара. Он делает проводку - вешает "долг" на покупателя и в плюс пишет сумму проданного. Если я сменю покупателя - как же я могу не перепровести документ, ведь пока я не перепровёл, проводка останется на того, предыдущего контрагента? Или я не прав? |
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
05.05.2011, 09:46 | 7 |
0
|
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
|
|
05.05.2011, 10:06 | 8 |
![]() Но если, например, аванс висел на одном, реализация на другом, то зачет аванса надо перерассчитывать... ну вы поняли.
0
|
1 / 1 / 0
Регистрация: 15.11.2009
Сообщений: 947
|
|
05.05.2011, 10:13 | 9 |
Перепроведение - это смерть.
Обработка "Поиск и замена значений" может заменить Клиента в регистрах и проводках.
0
|
1 / 1 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
05.05.2011, 10:35 | 10 |
а обработка меняет только контрагента или же договор тоже? в смысле можно такой обработкой воспользоваться если мне нужно не контрагента поменять а один договор на другой?
0
|
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
|
|
05.05.2011, 11:12 | 11 |
Она все, что угодно меняет...
0
|
Истребитель
|
|
05.05.2011, 12:55 | 12 |
То есть если у меня есть контрагент, на него документы - счет на оплату, реализация товаров и услуг, договор, счет в банке, и их записи в регистрах, то эта обработка заменит всё везде одновременно, счет перейдет на другого контрагента, договор тоже, и записи в регистрах. Как она это сделает в обход функций "при записи" и без отмены проведения документа, разве в 1С не автоматически документ при записи отменяет проведение?
|
0 / 0 / 0
Регистрация: 07.07.2008
Сообщений: 1,401
|
|
05.05.2011, 13:02 | 13 |
0
|
0 / 0 / 0
Регистрация: 24.12.2008
Сообщений: 1,399
|
|
05.05.2011, 19:20 | 14 |
![]()
0
|
1 / 1 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
05.07.2012, 12:45 | 15 |
а от какого числа на диске ИТС есть эта обработка? или ее на сайте можно скачать?
0
|
1 / 1 / 0
Регистрация: 15.11.2009
Сообщений: 947
|
|
05.07.2012, 13:08 | 16 |
![]()
0
|
1 / 1 / 0
Регистрация: 04.12.2005
Сообщений: 1,588
|
|
05.07.2012, 13:22 | 17 |
ой, и в правду есть. вот только стоит пользоваться виндовым поиском вместо итс!
Дайнеко, пасиба агромное!
0
|
05.07.2012, 13:22 | |
Помогаю со студенческими работами здесь
17
Выгрузка Контрагентов. телефоны Загрузка контрагентов из ТиС в УТ Поиск дублей контрагентов в БД Изменение скидки у Контрагентов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |