Ошибка при установке значения атрибута контекста : Реквизит недоступен для #484893


#0 by Старуха Шапокляк
В спр.Контрагенты добавлен реквизит "Ключ" - строка, 25символов. Надо загрузить контрагентов из Эксель. В Эксель они попали из другой программы, которая является наиболее приоритетной, чем та, в которую загружать будем. Поэтому при загрузке, надо предусмотреть несколько условий: анализируем Ключ: Ключ не совпал анализируем ИНН: ИНН совпал анализируем КПП: КПП совпал В таком случае, надо заполнить Ключ и все остальные заполненные поля данными из файла (Кроме ИНН и КПП, т.к. они совпали). Выходит ошибка: Ошибка при установке значения атрибута контекста (ЮрФизЛицо): Реквизит недоступен для группы ОбъектКА.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо; по причине: Реквизит недоступен для группы Вот мой код:
#1 by maxar
включаем отладку - ставим галку остановка по ошибке - и смотрим результаты своих ошибок...
#2 by mikecool
"Реквизит недоступен для группы " - не надо группе устанавливать этот реквизит смотри признаки реквизитов - если только для элемента - не устанавливай для группы
#3 by Старуха Шапокляк
Так я и поставила условие в :
#4 by butterbean
мне одному кажется, что поиск по ИНН и поиск по КПП между собой никак не связаны??
#5 by hhhh
связаны
#6 by mikecool
а кпп всегда уникальны?
#7 by mikecool
как? меня это тоже напрягло
#8 by maxar
пипец - если нашли по инн - потом если есть кпп ищем по кпп - кпп - это не уникальный реквизит - т.е. ищем всегда один и тот эе элемент по кпп
#9 by mikecool
вот здесь будет только одна ссылка, если таковой имеется затем ищем по кпп и находим другого контрагента
#10 by Старуха Шапокляк
спасибо, а как мне тогда в связке искать эти два значения - сначала ИНН, затем если нашли, то проверять у него КПП???
#11 by butterbean
запросом ищи
#12 by Старуха Шапокляк
В вопрос снимается, нашла где была ошибка. Но вопрос про связь ИНН и КПП - остается открытым: Как сначала у этого контрагента проанализировать сначала ИНН, а затем у него же КПП?
#13 by mikecool
пробежалась по файлу, собрала инн-кпп в кучу, и затем параметром в
#14 by Старуха Шапокляк
Легко вам сказать! Как это сделать???
#15 by mikecool
инн-кпп в таблицу значений таблицу значений во врем таблицу потом запрос типа выбрать ИНН, КПП из ВТ_Данные левое соединение справочник.контрагенты Как Контрагенты по ВТ_Данные.ИНН = Контрагенты.ИНН И ВТ_Данные.КПП = Контрагенты.КПП
#16 by mikecool
+15 там где нулл в ссылка - контрагент не найден
#17 by Шапокляк
/////////////////////////// вместо вот этого:
#18 by butterbean
так ты не найдешь тех, у кого один ИНН, но разные КПП
#19 by Шапокляк
Мне не надо, это к автору пожалуйста. Я только догадываться могу, что у нее там в базе происходит. Так, чуть-чуть ее код подрихтовала, не более того
#20 by Шапокляк
19 к
#21 by Старуха Шапокляк
, cпасибо! Но мне бы код полегче, без таблиц значений и временных таблиц, например, как в . Неужели, задать простое условие: проанализировать у контрагента ИНН, а затем у него же КПП - надо такую сложную конструкцию делать???
#22 by hhhh
ВЫБРАТЬ    Ссылка ИЗ    Справочник.Контрагенты КАК Контрагенты
#23 by Шапокляк
Ну не так там и слоно, хотя я бы запросом без соединений и попробовала, что-то вроде
#24 by Старуха Шапокляк
, - спасибо, а как мне связать ваш запрос с данными из файла (Ключ, ИНН и КПП)?
#25 by Шапокляк
и вот сюда.
#26 by Старуха Шапокляк
Большое СПАСИБО!!!! Буду пробовать!!! )))))))
#27 by Старуха Шапокляк
Подскажите еще, пожалуйста, два момента: 1) Нужен вначале анализ на реквизит Ключ. Если такого ключа нет в базе, то идет запрос как в и тогда этот Ключ тоже надо вбить в базу. 2) В запросе я найду контрагентов, которых: или нет с таким как в файле ИНН и КПП или есть с таким как в файле ИНН и КПП. Т.е. это случаи или полного совпадения или полного несовпадения. А как мне тогда найти тех, у кого ИНН совпадает, а КПП из базы или не совпадает или вообще не заполнено (в этом случае, приоритет у КПП из файла, его надо вбить).
#28 by Старуха Шапокляк
+ На мой первый вопрос из : Я так полагаю, что должно быть что-то вроде: Но как тогда дальше связать Ключ, ИНН и КПП? Не знаю, понятно ли я изложила свою мысль...
#29 by mikecool
запрос в цикле - уже не оригинально смотрим
#30 by hhhh
по сравнению с тем, что было до этого, запрос в цикле - большой шаг вперед.
#31 by Шапокляк
Запрос один и тот же почти: для Ключа   "ВЫБРАТЬ    |    Контрагенты.Ссылка,    |    Контрагенты.Представление нашла есть ли кто с таким ключом. Если нету ищем по какой-то логике. Если есть что делаем? Как вариант проверяем, совпадает ли у найденного ИНН и КПП. Если не совпадают что делаем? Перезаписываем, спрашиваем? По вопросу ИНН и КПП. Не нашли с ИНН и КПП какими нужно. Что делаем? Ищем сначала по ИНН (запрос по аналогии сделаете, надеюсь). не нашли никого, по КПП искать бессмысленно дальше (все кто в одной налоговой имеют один и тот же КПП за редким исключением). Нашли нескольких с одним ИНН. Перебираем. У контрагента КПП не пустое и не совпадает с нашим. Что делаем? Варианты - проверяем наименование или еще что, спрашиваем у пользователя, идем дальше. У контрагента КПП пустое. Что делаем? Варианты - заполняем своим кпп, спрашиваем у пользователя, идем дальше. Короче, вы на бумажке алгоритм составьте для начала и решите что делать, а инструмент вот он. Никто не претендует на оригинальность. Пусть хоть как-то с мертвой точки сдвинется, к тому же все равно, как правило, вмешательство пользователей потребуетя в принятие решения. А ваша временная таблица убьет автора :) К тому же Ваш запрос из не решает ее задачу, а для единичного прогона не сильно оптимален.
#32 by Старуха Шапокляк
Шапокляк - огромное Вам СПАСИБО!!! Что бы я делала без Вас!? :*)
#33 by Шапокляк
:) Успехов!
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С