Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
03 июл 2024, 10:36

Справочник.контрагенте (дублируется)

Автор Nodir2525, 07 окт 2010, 09:41

0 Пользователей и 1 гость просматривают эту тему.

Nodir2525

Модуль Документа - Документ.ВводНовыхКлиентов

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


Если отменит проведение.
Открыт тот документ и опят препроводить, у меня  справочник.контрагенте
повторно создается.(дублируется)


Таблица Брадиса


progmikon

Конечно он будет создавать вам новые элементы справочника. И будет создавать их столько раз, сколько вы будете перепроводить документ, поскольку
СпрК=СоздатьОбъект("Справочник.Контрагент");
    СпрК.Новый();
    СпрК.Наименование=СокрЛП(Фамилия)+" "+СокрЛП(Имя)+" "+СокрЛП(Отчество);
    СпрК.Записать();

На самом деле, сложно представить зачем вам это необходимо в обработке проведения.

Но если это очень нужно - проверяйте перед созданием контрагента, есть он в справочнике или нет, хотя бы по наименованию.

Теги:
Рейтинг@Mail.ru

Поиск