![]() |
![]() |
![]() |
|
Проверка ИНН контрагента? | ☑ | ||
---|---|---|---|---|
0
Sandres
04.03.11
✎
12:21
|
Всем привет! Уже который час голову ломаю .делаю проверку ИНН чтоб не могли ввести контрагента с уже существующим ИНН вот такой код в обработчике ПередЗаписью
Если Не ЭтоНовый() Тогда РезультатПоиска = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", СокрЛП(ИНН)); Если Не РезультатПоиска.Пустая() Тогда Сообщить("Контрагент с таким ИНН уже существует!"); отказ=истина; ИначеЕсли ЭтоНовый() тогда РезультатПоиска = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", СокрЛП(ИНН)); Если Не РезультатПоиска.Пустая() Тогда Сообщить("Контрагент с таким ИНН уже существует!"); Отказ=истина; Не могу понять как сделать так что-бы если я открываю контрагента и ничего не меняю ну или меняю наименования контрагента, то данные записывались в справочник. Сейчас вес равно проверят. Уверен что тут ничего сложного . Просто еще одну ветку в цикл и в ней указать что ИНН не проверяется. ????? |
|||
1
Amra
04.03.11
✎
12:23
|
Если Не ЭтоНовый() Тогда
РезультатПоиска = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", СокрЛП(ИНН)); Если РезультатПоиска.Ссылка<>Ссылка Тогда Сообщить("Контрагент с таким ИНН уже существует!"); отказ=истина; |
|||
2
Aleksey
04.03.11
✎
12:25
|
Если Не ЭтоНовый() Тогда
РезультатПоиска = ... Если Не РезультатПоиска.Пустая() Тогда Сообщить("Контрагент с таким ИНН уже существует!"); отказ=истина; ИначеЕсли ЭтоНовый() тогда ???? И при каких условиях должна сработать эта ветка???? |
|||
3
Dem1urg
04.03.11
✎
12:26
|
(0) При открытии формы запоминай в переменную исходное значение ИНН. Перед записью сравнивай его с текущим. Если не совпадает - делай проверку.
|
|||
4
Sandres
04.03.11
✎
12:27
|
(2) Когда я открываю старого контрагента и заношу ему Инн который уже есть в базе
|
|||
5
Aleksey
04.03.11
✎
12:31
|
(4) Если контрагент старый , т.е. ты зашел в ветку, то при каких условиях в внутри ЭтоНовый() вернет Истина??
Если НЕ ЭтоНовый() тогда Если ЭтоНовый() тогда ну когда мы тут будем? КонецЕсли; КонецЕсли; |
|||
6
Sandres
04.03.11
✎
12:31
|
(1) На неравенство с какой ссылкой тут проверка?
|
|||
7
Aleksey
04.03.11
✎
12:31
|
СправочникОбъект.<Имя справочника> (CatalogObject.<Имя справочника>)
ЭтоНовый (IsNew) Синтаксис: ЭтоНовый() Возвращаемое значение: Тип: Булево. Истина - изменяется еще ни разу не записанный элемент; Ложь - элемент уже записан. Описание: Определяет, записан ли элемент в базу данных. |
|||
8
Sandres
04.03.11
✎
12:35
|
(5) код отрабатывает когда добавляю контрагента и когда пытаюсь изменить ИНН уже у заведенного контрагента. Говорю же что не работает когда просто открыл поменял наименование у контрагента
|
|||
9
ho0p
04.03.11
✎
12:35
|
(0) Самописка ? в типовых это реализовано....
|
|||
10
Sandres
04.03.11
✎
12:39
|
(7) Сорри . ты прав.
|
|||
11
Sandres
04.03.11
✎
12:39
|
(7) Сейчас покажу как отрабатывает
|
|||
12
Sandres
04.03.11
✎
12:39
|
(9) УТ
|
|||
13
ho0p
04.03.11
✎
12:48
|
(12) "Выполнять поиск дубля перед записью нового контрагента" - в настройках элемента справочника Пользователи (Другие настройки)
|
|||
14
Sandres
04.03.11
✎
13:02
|
Ок. Всем спасибо.
|
|||
15
tan76
04.03.11
✎
13:23
|
Процедура ПередЗаписью(Отказ)
// Вставить содержимое обработчика. Если не ПустаяСтрока(ИНН) Тогда НайденныйКонтрагент = Справочники.контрагенты.НайтиПоРеквизиту("ИНН",ИНН); Если не НайденныйКонтрагент.Пустая() и не НайденныйКонтрагент = Ссылка Тогда Сообщить("Контрагент с ИНН "+ ИНН + " уже сушествует!!!"+Символы.ПС+"Запись невозможна."); Отказ = Истина; КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
16
Aleksey
04.03.11
✎
13:40
|
Лучще запросом, и в него сразу передавай ИНН и то что ссылка не равно твоя ссылка.
|
|||
17
zak555
04.03.11
✎
13:43
|
(15) как быть с обособленными подразделениями ?
|
|||
18
DeiMos
04.03.11
✎
14:10
|
(0): А ничего, что может существовать мульён различных контрагентов с одинаковым ИНН?
Хоть бы на уникальность ИНН+КПП проверял бы... |
|||
19
Sandres
04.03.11
✎
14:38
|
(18) Я об этом думал. Но от меня хотели именно так как я описывал. И как писал выше (13) то что доктор прописал.
|
|||
20
zak555
04.03.11
✎
16:59
|
(19) запрос делай
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |