Имя: Пароль:
1C
1С v8
Так как участились случаи переименования Контрагентов, разрабатываем историю наи
0 Anastasiy
 
20.06.12
09:23
Так как участились случаи переименования Контрагентов, разрабатываем  ИсториюНаименования по Контрагенту:
1. Создала регистр сведений ИсторияНаименованийКонтрагентов;
периодичность 1 год;
Измерение: Контарагент

ресурс: Дата

реквизиты:  Наименование(СправочникСсылкаКонтрагенты)
как связать со сравочником контрагенты?
1 IamAlexy2
 
20.06.12
09:24
все уже разработано до вас
называется "Версионирование"
2 Попытка1С
 
20.06.12
09:24
"Контарагент"

ыы
3 Нуф-Нуф
 
20.06.12
09:24
или журнал регистрации
4 zak555
 
20.06.12
09:24
(0) переименовывают из ООО "Рога и Коты" в Рога и Копыта ООО ?
5 Нуф-Нуф
 
20.06.12
09:25
Как думаете, просить у Анастасия фотку?
6 Anastasiy
 
20.06.12
09:25
))
7 МихаилМ
 
20.06.12
09:25
важно разделять сущности юрлиц и контрагентов.

почему периодичность год ?
8 Anastasiy
 
20.06.12
09:25
всяко бывает(0)
9 kotletka
 
20.06.12
09:26
а ИНН у контриков меняестя?
10 Anastasiy
 
20.06.12
09:26
Ой, периодичность 1 день
11 Anastasiy
 
20.06.12
09:27
Тоже по разному
12 Волесвет
 
20.06.12
09:27
как обычно, проблема организации работы, но всем пофиг)
13 VladZ
 
20.06.12
09:27
(5) Будь мужиком! :)
Даже не проси, а требуй!
14 VladZ
 
20.06.12
09:27
Фотку! Фотку! :)
15 Anastasiy
 
20.06.12
09:28
Не получится, я на работе - позже
16 VladZ
 
20.06.12
09:29
(15) Ты не поверишь - мы тоже на работе! :)
17 Anastasiy
 
20.06.12
09:30
В идеале нужно создать периодический реквизит, но это в 77, а как в 8.2, только через регистр сведений?
18 Нуф-Нуф
 
20.06.12
09:30
+(16) однако передернуть на красивую фотку всегда время найдется :))))
19 Anastasiy
 
20.06.12
09:31
пока не дома не могу)
20 kotletka
 
20.06.12
09:33
я так понял (19)к (18)  )))
21 eduspec82
 
20.06.12
09:33
анастасия пол мужской сейчас это модно ...
22 MadHead
 
20.06.12
09:34
Анастасия нормальный пацан )
23 Anastasiy
 
20.06.12
09:34
Не... женский)
А версионирование эт как?
24 zak555
 
20.06.12
09:35
Anastasiy пример переименования контрагента
25 Maxus43
 
20.06.12
09:37
конфигурация какая?
26 Anastasiy
 
20.06.12
09:39
УПП 1.2
27 Anastasiy
 
20.06.12
09:40
из 8.1 перевели
28 Anastasiy
 
20.06.12
09:40
косяки полезли...
29 Maxus43
 
20.06.12
09:44
(26) тогда версионирование включить для контрагентов
30 Maxus43
 
20.06.12
09:45
Настройка программы - Версионирование
31 Anastasiy
 
20.06.12
09:46
спасибо
32 zak555
 
20.06.12
09:48
так у контра что меняется и как ????
33 Tata001
 
20.06.12
09:48
(31) Регламент напишите и права на справочник определённому кругу дайте....что б левые не лезли, а будут лезть-по рукам =)))
34 Anastasiy
 
20.06.12
09:51
Включила версионирование по контагентам, посмотрим...
35 Anastasiy
 
20.06.12
09:52
А регламент напишу)))
36 Feanor
 
20.06.12
09:52
(33) +100500

Буквально недавно сделал в УПП группу пользователей "Адекватные". Пользователи, не входящие в эту группу, не могут менять критичные реквизиты контрагентов.
37 Anastasiy
 
20.06.12
09:53
)))Тоже вариант))Только меняют название сами контрагенты))
38 Feanor
 
20.06.12
09:54
(37) сами контрагенты меняют себя в базе? О.о
39 Anastasiy
 
20.06.12
09:54
(zakk555) Меняется название
40 Vladal
 
20.06.12
09:56
Anastasiy? не так, (zakk555) не получится, получится zak555
41 Vladal
 
20.06.12
09:56
А что вы пристали? с фоткой?
Анастасий - мужик,
Анастасия - не мужик.
42 Anastasiy
 
20.06.12
09:56
Нет, не в базе=))) В базе наменяли до меня =) Мне бы теперь отследить все эти изменения :)))
43 rphosts
 
20.06.12
09:57
Зачем вам версионирование? В подписке запретите всем кроме особо довереных спецюзеров редактировать уже существующих контрагентов.
С версионировнаием вы быдите иметь быстрый поиск причин гемора а с этим у вас его не возникнет
44 Anastasiy
 
20.06.12
09:57
Анастасия - человек :))) А фотку опубликую после работы:))
45 Нуф-Нуф
 
20.06.12
09:58
эээ анастасия - человек - это аналог австралийского "оно"?
46 Feanor
 
20.06.12
09:58
(43) +100500 есть уже готовый код работающий, продам не дорого))))
47 1Сергей
 
20.06.12
09:59
(41) в слове Анастасий ударение на какую букву?
48 rphosts
 
20.06.12
09:59
(46) отвали! это моя анастасия - я её сам буду доить и не по демпенговым ценам!!!
49 Anastasiy
 
20.06.12
09:59
Всем спасибо =)))м... правила форума?
50 Feanor
 
20.06.12
10:00
(48) ничо по швам не треснет? ))))
51 zak555
 
20.06.12
10:00
(39) пример приведи смены названия
52 rphosts
 
20.06.12
10:16
(51) например при изменении формы собственности или при перерегистрации.
53 rphosts
 
20.06.12
10:17
(50) и между швами тоже не треснет!
54 sergeante
 
20.06.12
10:48
Зачем РС?

Делаешь один справочник ИсторияИзмененийОбъектов.

Делаешь подписку на изменение контрагента, в обработчике пишешь:

Процедура ЗаписьИсторииСправочникаПередЗаписью(Источник, Отказ) Экспорт
   
   Если Источник.ОбменДанными.Загрузка Тогда
       Возврат;    
   КонецЕсли;
       
   // сравниваем наименование объекта в памяти с наименованием объекта из базы
   Если НЕ Источник.ЭтоНовый() И Источник.Ссылка.Наименование <> Источник.Наименование Тогда
       
       Если ТипЗнч(Источник.Ссылка) = Тип("СправочникОбъект.Контрагенты") Тогда
           Элем = Справочники.ИсторияИзмененийОбъектов.СоздатьЭлемент();
           Элем.Период = ТекущаяДата();
           Элем.Объект = Источник.Ссылка; // Новое наименование (Ссылка)
           Элем.Наименование = Источник.Ссылка.Наименование; // Старое наименование (строка)
           Элем.Пользователь = глТекущийПользователь; // кто изменил
           Элем.Записать();            
       КонецЕсли;
       
   КонецЕсли;    
   
КонецПроцедуры

Всё.
55 rphosts
 
20.06.12
10:52
(54) ещё 1 апологет демпинга!
56 stix2010
 
20.06.12
11:06
(0) и часто у вас контрагенты явки меняют? второго контрагента не судьба создать? изобретаете велосипед с квадратными колесами
57 Feanor
 
20.06.12
19:39
Вечер... фотки нету...
58 Balabass
 
21.06.12
02:52
Где фотка?
59 rphosts
 
21.06.12
05:25
вы после (54) на фотку рассчитываете? Какие фотки при таком демпенге!!!
60 Anastasiy
 
21.06.12
06:19
))Будет фортка не бузи))) Устала забегалась)))
61 Anastasiy
 
21.06.12
06:21
Бэкап делела из-за версионирования, какой-то косяк с полными правами вылез, а вроде всё норм - буду искать)))
62 Cube
 
21.06.12
06:28
(60) Подсказка: Фотку можно из контакта или одноклассников загрузить...
63 Anastasiy
 
21.06.12
06:33
Я туда не хожу)))
64 Anastasiy
 
21.06.12
06:34
Некогда, кому надо и так знают как найти)))
65 Anastasiy
 
21.06.12
06:38
Слушайте, мелькала тема с ошибкой " Не Полные Права" у кого-нить есть ссылка?
66 alkov
 
21.06.12
06:40
(54) РС например затем, чтоб не плодить лишние ссылки на элемент Контрагенты
67 SanGvin
 
21.06.12
08:01
периодичность 1 год;
Измерение: Контарагент
ресурс: Дата
реквизиты:  Наименование(СправочникСсылкаКонтрагенты)

жесть
68 sergeante
 
21.06.12
10:21
(66) какие ещё "лишние ссылки", ты о чомвопще?
69 Lama12
 
21.06.12
10:27
(0) У меня сделано. Один регистр сведений, одна подписка, одна функция получения основных реквизитов контрагентов.
В печатных формах собственной разработки выводится наименование и нужные реквизиты согласно истории контрагента.
Смена ИНН является причиной создания нового контрагента.
70 Anastasiy
 
26.06.12
08:20
(Lama12) Подскажи, функция для вызова: Общий модуль.Глобальный модуль:


Функция ИсторияИзмененийКонтрагентовВоВремени(АктуальноеНаименованиеПолное, ЭлементКонтрагентов) Экспорт

Отбор = Новый Структура("Наименование", ЭлементКонтрагентов);
ЗначениеРесурсов = РегистрыСведений.ИзменениеКонтрагентовВоВремени.ПолучитьПоследнее(АктульноеНаименованиеПолное,Отбор);
ВозвратЗначенияРесурсов.ИзменениеКонтрагентовВоВремени;

КонецФункции
71 Рэйв
 
26.06.12
08:50
(0)Подробная инструкция:-)

http://ravepoint.narod.ru/aticles/tricks/methods/keephistory.htm
72 Anastasiy
 
26.06.12
09:15
Спасибо, посмотрю))) А я через регист сведений делаю)
73 Рэйв
 
26.06.12
09:23
(72)Каждый страдает извращениями в меру своей фантазии:-)
74 Anastasiy
 
26.06.12
09:29
Спасибо))
75 Stim
 
26.06.12
09:31
нормальной фотки так и нет..
76 Anastasiy
 
26.06.12
09:48
(Рэйв) А процедуру в общий модуль или объекта?

А чем эта плоха?))(фотка)
77 Cube
 
26.06.12
09:49
(76) Да да, фоточка-то так, чисто для галочки....
78 Anastasiy
 
26.06.12
09:49
Со стороны Сервера или Клиента?
79 Stim
 
26.06.12
09:49
там фотка мужика какого-то. или трансвестита. выложите нормальную фотку
80 Anastasiy
 
26.06.12
09:49
Ну, не знаю, нужна ли Галочке моя фотка...)))))
81 Рэйв
 
26.06.12
09:50
(75)Вообщето писалось про модуль объекта, но я потом перенес в общий модуль, чтобы проще было подключать новые объекты к этому делу.В ПередЗаписью() потом просто ставил вызов с передачей обънета
82 Anastasiy
 
26.06.12
09:50
А, желательно в неглиже?-))
83 Рэйв
 
26.06.12
09:50
*объекта
84 Stim
 
26.06.12
09:50
(82) желательно - в полный рост, хотя бы
85 Рэйв
 
26.06.12
09:50
(81)к (86)
86 Anastasiy
 
26.06.12
09:51
А вызов как выглядел?
87 Рэйв
 
26.06.12
09:51
к (76)   :-)  блин
88 Рэйв
 
26.06.12
09:51
(86)ИмяОбщегоМодуля.ЗаписьИстории(Этотобъект)
89 Anastasiy
 
26.06.12
09:53
Спасибо:-)
90 Anastasiy
 
26.06.12
11:09
Хм... История, РежимЗаписи, глТекущий пользователь - переменная неопределена.. И что с этим делать?
91 Anastasiy
 
26.06.12
12:13
С Историей разобралась - мой косяк))) А вот - глТекущийПользователь всё также неопределен...
92 Anastasiy
 
26.06.12
12:26
м,,, (ЭтотОбъект.глТекущийПользователь);
а вот что с режимом записи...
93 Stim
 
26.06.12
12:27
фото
94 Рэйв
 
26.06.12
12:31
(91):-)

Сделай в начале
глТекущийПользователь=ИмяПользователя();

И да...  Фото бы не помешало:-)
95 Рэйв
 
26.06.12
12:34
(91)
Заголовок процедуры долен выглядеть вот так

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
96 Anastasiy
 
26.06.12
12:49
Ну, вроде получилось, поглядим)))
97 Anastasiy
 
26.06.12
12:56
Не работает... Я проделываю это для справочника Контрагенты - при нажатии кнопки История - ничего...
98 alkov
 
26.06.12
12:57
(68) Если не видишь разницы между использованием РС и подчинённого справочника - тогда ни о чём, забей
99 Anastasiy
 
26.06.12
12:58
Правда Ссылка в модуле формыСписка, я заменила на :"ЭлементыФормы.СправочникСписок.ТекущиеДанные.Ссылка"

А на тебя так часто забивали?...
100 alkov
 
26.06.12
13:03
(99) Леди, Вы ещё не сообразили, что число в скобках означает номер сообщения, на которое даётся ответ? Про "забить" было не Вам, не отвлекайтесь

P.S. Сотко!
101 Anastasiy
 
26.06.12
13:11
)) Сорри)
Только, всё равно не работает)
102 Anastasiy
 
26.06.12
13:32
Похоже напутала с макетом..Что-то он не работает
103 Рэйв
 
26.06.12
14:48
(102)Терпение и труд все перетрут:-)
Не забываем, что написано было для документов и точно следуем инструкции.
104 Рэйв
 
26.06.12
14:48
+(103)Если переделывать для справочнико, надо чуть переделать
105 Anastasiy
 
27.06.12
07:08
))) Пробую))Если есть что подсказать  - спасибо, не откажусь.
106 Anastasiy
 
27.06.12
07:28
При нажатии на кнрпку История - тишина, что-то не так...)
107 Рэйв
 
27.06.12
07:55
(106):-)  Может сначала надо записать какие то изменения?
108 Anastasiy
 
27.06.12
08:01
При переименовании контрагента они ведь и так записываются?Версионирование off/
109 Рэйв
 
27.06.12
08:04
(108)да если прописала в коде.

Наименование и Код - это как Дата и Номер для документов. Это не реквизиты и их изменения надо отслеживать отдельно. Посмотри как это сделано для дата, номер
110 Anastasiy
 
27.06.12
08:22
Если ЗначениеЗаполнено(Ссылка) Тогда  //если объект  уже был записан раньше

     

      //дата и номер не являются реквизитами, поэтому их отследим отдельно

      Если Ссылка.Наименование<>ЭтотОбъект.Наименование  Тогда

            НовСтр=тПроверка.Добавить();

            НовСтр.Автор=Строка(глТекущийПользователь);

            НовСтр.Реквизит="Наименование";

            НовСтр.СтароеЗначение=Строка(Ссылка.Наименование);

            НовСтр.НовоеЗначение=Строка(ЭтотОбъект.Наименование);

            НовСтр.Время=Строка(ТекущаяДата());

      КонецЕсли;  

      Если Ссылка.Код<>ЭтотОбъект.Код  Тогда

            НовСтр=тПроверка.Добавить();

            НовСтр.Автор=Строка(глТекущийПользователь);

            НовСтр.Реквизит="Код";

            НовСтр.СтароеЗначение=Строка(Ссылка.Код);

            НовСтр.НовоеЗначение=Строка(ЭтотОбъект.Код);

            НовСтр.Время=Строка(ТекущаяДата());

      КонецЕсли;
111 Anastasiy
 
27.06.12
08:24
Заменить блок из Даты и Номера , такими вот?
112 Anastasiy
 
27.06.12
08:25
Кстати, на Ссылка тоже писал, переменная неопознана <<?>>Ссылка
113 Anastasiy
 
27.06.12
08:26
"ЭлементыФормы.СправочникСписок.ТекущиеДанные.Ссылка" Для кнопки
114 Рэйв
 
27.06.12
08:41
(113)При чем тут СправочникСписок?...Чет ты вообще куда то не в ту степь:-)
115 Anastasiy
 
27.06.12
08:56
Иначе не пропускает конфигуратор: <<?>>Ссылка
116 Рэйв
 
27.06.12
09:08
Тебе историю надо записывать в Модуле Элемента. ПередЗаписью(). Там Ссылка вполне доступна.  Каким боком ты в списке оказалась?
117 Anastasiy
 
27.06.12
09:16
В форме объекта в любое удобное место помещаем кнопку «История», по которой будет выводиться в виде отчета история изменений

Я добавил пункт в стандартные «Действия» объекта( у Контрагентов форма списка самая удобная)
118 Рэйв
 
27.06.12
09:21
(117)  Ну если дотянешься до ссылки  и дораюотаешь вызов печати истории оттуда, но почему бы и нет:-)
119 Serg_1960
 
27.06.12
09:36
(имхо) Зачем автор изобретает то, что уже есть в конфигурации? Можно взять "за основу" типовые алгоритмы работы с периодическими реквизитами (например - фамилия/имя/отчество у физического лица)...
120 Anastasiy
 
27.06.12
10:07
Как раз это и делала, когда отвлеклась на уже готовое решение)))