Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Исчезают записи регистра сведений(Адреса, телефоны)
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
ice
Исчезают записи регистра сведений(Адреса, телефоны) в справочнике контрагентов. Загружены они изначально обработкой из 7.7. После чего исчезают пользователи не могут сказать, единственное исчезают сразу из всех контрагентов. Кто с таким сталкивался?
Vofka
Само по себе ниче пропадать не может. Разве что... 61000000.gif
ice
Это понятно. Но они не могут понять с чего пропадают и все время грешат на меня. Запарился уже закачивать заново реквизиты.
pablo
Как поймать 61000000.gif ?
1. Определите час Х, когда 61000000.gif появляется.
2. Определите список Шиндлера лиц, которые находились в базе в час Х
3. Опрашивайте список Шиндлера на предмет выполняемых действий, вдруг кто-то интереса ради вызывает 61000000.gif
4. Если подопытные отрицают факт вызова 61000000.gif, они вполне могут использовать специальные предметы, которые вызывают 61000000.gif без ведома подопытных
5. Если не достигнут успех, переход к п 1.
ice
Спасибо, буду сам долбить.
alex040269
Краем уха, когда-то слышал, что если у реквизита возведен флаг "Запрет незаполненных значений", то 1С якобы сначала записывает все записи не ругаясь, НО потом .... удаляет записи с пустыми значениями вышеперечисленных реквизитов...
smile.gif
Ziam
А вроде она ругается при записе таких значений.
Agapov_Stas
Цитата(Vofka @ 19.04.12, 15:03) необходимо зарегистрироваться для просмотра ссылки
Само по себе ниче пропадать не может. Разве что... 61000000.gif

Присоединюсь
Журнал регистраций в помощь
С таким не сталкивались мы ни разу - хоть фирм кучу обслуживаем и очень много делали переходов подобных
ice
Все значения заполняются. Короче буду сегодня бороть это
ice
            ////////Телефоны = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
            ////////ТелефонКонтрагента = Телефоны.Добавить();
            ////////ТелефонКонтрагента.Объект = Контрагент.Ссылка;
            ////////ТелефонКонтрагента.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00005").Ссылка;
            ////////ТелефонКонтрагента.Тип = Перечисления.ТипыКонтактнойИнформации.Телефон;
            ////////ТелефонКонтрагента.Представление = СокрЛП(КлиентКонтрагент.ПолучитьЗначение(4));
            ////////
            //////////Емейл = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
            //////////ЕмейлКонтрагента = Телефоны.Добавить();
            //////////ЕмейлКонтрагента.Объект = Контрагент.ПолучитьСсылку();
            //////////ЕмейлКонтрагента.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00021");
            //////////ЕмейлКонтрагента.Тип = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты;
            //////////ЕмейлКонтрагента.Представление = КлиентКонтрагент.ПолучитьЗначение(0);

            //////////ФизическийАдрес = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
            ////////ФизическийАдресКонтрагента = Телефоны.Добавить();
            ////////ФизическийАдресКонтрагента.Объект = Контрагент.Ссылка;
            ////////ФизическийАдресКонтрагента.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00008").Ссылка;
            ////////ФизическийАдресКонтрагента.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
            ////////ФизическийАдресКонтрагента.Представление = СокрЛП(КлиентКонтрагент.ПолучитьЗначение(5));
            ////////
            //////////ЮридическийАдрес = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
            ////////ЮридическийАдресКонтрагента = Телефоны.Добавить();
            ////////ЮридическийАдресКонтрагента.Объект = Контрагент.Ссылка;
            ////////ЮридическийАдресКонтрагента.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоКоду("00010").Ссылка;
            ////////ЮридическийАдресКонтрагента.Тип = Перечисления.ТипыКонтактнойИнформации.Адрес;
            ////////ЮридическийАдресКонтрагента.Представление = СокрЛП(КлиентКонтрагент.ПолучитьЗначение(5));
            ////////Телефоны.Записать();


Вобщем вот этот код затирает записи регистра сведений. Почему - понять не могу!
Ardi
Это было очевидно что кто-то такой код запихнул.
А потом все рассказывают какая 1с плохая.

Код неправильный.
Batchir
Если используете СоздатьНаборЗаписей(), то
1. необходимо устанавливать ещё и отборы
2. нужно прочитать данные по установленным отборам
3. уже в прочитанный набор добавлять .

а так код правильно отработал. Вот если бы он не перетер все данные, тогда это было бы непонятно.

Пример
НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Владелец.Установить(Контрагент);
НаборЗаписей.Прочитать();
СтрокаЗаписи = НаборЗаписей.Добавить();
...
НаборЗаписей.Записать();


З.Ы. советую нагуглить и осознать чем отличаются СоздатьМенеджерЗаписи() и СоздатьНаборЗаписей(), и что в каких случаях желательно использовать.
Vofka
Чёртова ваша 1С!!! Её учить чтоли надо?!

Цитата(Ardi @ 04.05.12, 1:36) необходимо зарегистрироваться для просмотра ссылки
Код неправильный.

Как неправильный? Синтаксических ошибок нету. rulez.gif
Batchir
Цитата(Vofka @ 04.05.12, 8:52) необходимо зарегистрироваться для просмотра ссылки
Как неправильный? Синтаксических ошибок нету.

32541510.gif
Ardi
Цитата(Vofka @ 04.05.12, 8:52) необходимо зарегистрироваться для просмотра ссылки
Чёртова ваша 1С!!! Её учить чтоли надо?!

Ну... на самом деле достаточно скачать электронный справочник "А. П. Габец, Д. И. Гончаров Простые примеры разработки" с готовыми кусками кода и носить его с собой. Но это секретная информация.
alex040269
Цитата(Batchir @ 04.05.12, 8:43) необходимо зарегистрироваться для просмотра ссылки
Если используете СоздатьНаборЗаписей(), то
1. необходимо устанавливать ещё и отборы
2. нужно прочитать данные по установленным отборам
3. уже в прочитанный набор добавлять .

а так код правильно отработал. Вот если бы он не перетер все данные, тогда это было бы непонятно.

Пример
НаборЗаписей = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Владелец.Установить(Контрагент);
НаборЗаписей.Прочитать();
СтрокаЗаписи = НаборЗаписей.Добавить();
...
НаборЗаписей.Записать();


З.Ы. советую нагуглить и осознать чем отличаются СоздатьМенеджерЗаписи() и СоздатьНаборЗаписей(), и что в каких случаях желательно использовать.


На сколько я помню - необязательно перечитывть - что бы записи добавились - нужно
НаборЗаписей.Записать(Ложь);

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.