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

Новичок. Процедура ОбработкаПроведения()

Автор Nodir2525, 22 сен 2010, 12:31

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

Nodir2525

У меня кроме этого на Конфигурации ничего нету!!!
Конфигурация
- Справочники
- Контрагент      
- Фамилия  - Свойства Реквизита(Периодический, Изменяется Документами)               
- Имя
- Отчество
- ДокументНомер
------------------------------------
Данный вожу через Документ ВВодНовыхКлиентов.Реквизиты(Фамилия,Имя,Отчество,ДокументНомер)
Модуль Документа- Документ.ВводНовыхКлиентов
---------------------------
Процедура ОбработкаПроведения()
СпрК=СоздатьОбъект("Справочник.Контрагент");
СпрК.Новый();
СпрК.Фамилия=Фамилия;
СпрК.Имя=Имя;
СпрК.Отчество=Отчество;
СпрК.ДокументНомер=ДокументНомер;
СпрК.ДокументДатаВыдачи=ДокументДатаВыдачи;
СпрК.ДокументКемВыдан=ДокументКемВыдан;
СпрК.Наименование=СокрЛП(СпрК.Фамилия)+" "+СокрЛП(СпрК.Имя)+" "+СокрЛП(СпрК.Отчество);
СпрК.Записать();
КонецПроцедуры
-----------------------------------------
Но У меня база выдает ошибку!!!
СпрК.Записать();
{Документ.ВводНовыхКлиентов.Модуль Документа(14)}: Не определена дата! Элемент не может быть записан! :dfbsdfbsdf:
------------------------------------------------
Что Я хочу!!!
Данный будит водится через Документ-ВводНовыхКлиентов и изменятся будить только Документ-ИзменениеДанныхКлиентов.


Tatitutu

СпрК.ИспользоватьДату(ДатаДок); например это почему выдается ошибка
только вот код проведения немного странноватенький
что будет если Вы сделаете документ непроведенным и заново проведете ?
то справочник начнет засорятся и задваиваться
нужно как минимум делать проверку на наличие такого элемента

*  MAGAZKA - лучшая программа для розничного магазина (с) *

Nodir2525

Мне надо добавит-? "СпрК.ИспользоватьДату(ДатаДок);"

Tatitutu

СпрК=СоздатьОбъект("Справочник.Контрагент");
СпрК.ИспользоватьДату(ДатаДок);
СпрК.Новый();

*  MAGAZKA - лучшая программа для розничного магазина (с) *

Nodir2525

Цитата: Tatitutu от 24 сен 2010, 17:44
СпрК=СоздатьОбъект("Справочник.Контрагент");
СпрК.ИспользоватьДату(ДатаДок);
СпрК.Новый();

Спасибо!!! Работает!!!
Но. У меня опят Вопрос?
Если отменит проведение и опят проводит документ, тогда у меня Справочник-Контрагенте дублируется. Что добавит, чтобы повторно не создавался.

Tatitutu

именно про это я тебе и говорил
Цитироватьто справочник начнет засорятся и задваиваться
поставь проверку
(но опять же говорю ,создавать новые элементы при проведение - это не есть хорошо!!!)

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

*  MAGAZKA - лучшая программа для розничного магазина (с) *

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск