Здравствуйте, помогите решить следующую проблему. При настройке обмена КА2 с БП3,0 (все обновлены до последних версий) возникла ошибка.
Направление: Получение.
ПОД: Справочник_Банки_Получение.
ПКО: Справочник_Банки.
Объект: Справочник.Банки.
Реквизит недоступен для группы
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(4968)}: ЗаполнитьЗначенияСвойств(ДанныеИБ, ПолученныеДанные, ПоляКопии);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(1745)}: ЗаполнитьДанныеИБПоПолученнымДанным(ДанныеИБ, ПолученныеДанные, ПравилоКонвертации);
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(5322)}: ДанныеДляЗаписиВИБ = СтруктураОбъектаXDTOВДанныеИБ(
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(1919)}: ПрочитатьСообщениеОбмена(КомпонентыОбмена, Результаты, ТаблицыДляЗагрузки);
{Обработка.КонвертацияОбъектовXDTO.МодульОбъекта(331)}: ОбменДаннымиXDTOСервер.ПроизвестиЧтениеДанных(КомпонентыОбмена);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(7271)}: ОбработкаОбменаДаннымиXML.ВыполнитьЗагрузкуДанных(ПараметрыЗагрузки);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(6074)}: ПрочитатьСообщениеСИзменениямиДляУзла(СтруктураНастроекОбмена, ПараметрыОбмена.ПолноеИмяФайлаСообщенияОбмена, ПараметрыОбмена.СообщениеОбмена);
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(5962)}: ВыполнитьОбменДаннымиДляУзлаИнформационнойБазыЧерезФайлИлиСтроку(ПараметрыОбменаДанными);
{(1)}:ОбменДаннымиСервер.ВыполнитьЗагрузкуДляУзлаИнформационнойБазыИзСервисаПередачиФайлов(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(4879)}: Выполнить ИмяМетода + «(» + ПараметрыСтрока + «)»;
{ОбщийМодуль.ДлительныеОперации.Модуль(969)}: ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(959)}: ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);
по причине:
Ошибка установки значения свойства ‘Телефоны’
по причине:
Реквизит недоступен для группы
Данная ошибка ссылается на реквизит Справочника банки Телефоны. В обеих конфигурациях для этих реквизитов установлено значение Использовать для элементов, ни в одной группе не установлены значения телефонов, но всё равно возникает данная ошибка при попытке первоначальной выгрузки из КА2 в БП 3,0. Не можем решить эту проблему уже неделю. Нигде нет ответа на такой вопрос. Пожалуйста, кто сталкивался с этой проблемой, подскажите решение.
Новые сообщения ·
Участники ·
Правила форума ·
Поиск ·
RSS ]
|
|
Форум » База знаний по 1С » Программирование » Реквизит не доступен для Группы (Реквизит не доступен для Группы) |
Реквизит не доступен для Группы |
|||||||||
|
|
||
|
||
Поиск: |
В спр.Контрагенты добавлен реквизит «Ключ» — строка, 25символов. Надо загрузить контрагентов из Эксель. В Эксель они попали из другой программы, которая является наиболее приоритетной, чем та, в которую загружать будем. Поэтому при загрузке, надо предусмотреть несколько условий: анализируем Ключ: Ключ не совпал анализируем ИНН: ИНН совпал анализируем КПП: КПП совпал В таком случае, надо заполнить Ключ и все остальные заполненные поля данными из файла (Кроме ИНН и КПП, т.к. они совпали). Выходит ошибка: Ошибка при установке значения атрибута контекста (ЮрФизЛицо): Реквизит недоступен для группы ОбъектКА.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо; по причине: Реквизит недоступен для группы Вот мой код:
включаем отладку — ставим галку остановка по ошибке — и смотрим результаты своих ошибок…
«Реквизит недоступен для группы » — не надо группе устанавливать этот реквизит смотри признаки реквизитов — если только для элемента — не устанавливай для группы
Так я и поставила условие в :
мне одному кажется, что поиск по ИНН и поиск по КПП между собой никак не связаны??
как? меня это тоже напрягло
пипец — если нашли по инн — потом если есть кпп ищем по кпп — кпп — это не уникальный реквизит — т.е. ищем всегда один и тот эе элемент по кпп
вот здесь будет только одна ссылка, если таковой имеется затем ищем по кпп и находим другого контрагента
спасибо, а как мне тогда в связке искать эти два значения — сначала ИНН, затем если нашли, то проверять у него КПП???
В вопрос снимается, нашла где была ошибка. Но вопрос про связь ИНН и КПП — остается открытым: Как сначала у этого контрагента проанализировать сначала ИНН, а затем у него же КПП?
пробежалась по файлу, собрала инн-кпп в кучу, и затем параметром в
Легко вам сказать! Как это сделать???
инн-кпп в таблицу значений таблицу значений во врем таблицу потом запрос типа выбрать ИНН, КПП из ВТ_Данные левое соединение справочник.контрагенты Как Контрагенты по ВТ_Данные.ИНН = Контрагенты.ИНН И ВТ_Данные.КПП = Контрагенты.КПП
+15 там где нулл в ссылка — контрагент не найден
/////////////////////////// вместо вот этого:
так ты не найдешь тех, у кого один ИНН, но разные КПП
Мне не надо, это к автору пожалуйста. Я только догадываться могу, что у нее там в базе происходит. Так, чуть-чуть ее код подрихтовала, не более того
, cпасибо! Но мне бы код полегче, без таблиц значений и временных таблиц, например, как в . Неужели, задать простое условие: проанализировать у контрагента ИНН, а затем у него же КПП — надо такую сложную конструкцию делать???
ВЫБРАТЬ Ссылка ИЗ Справочник.Контрагенты КАК Контрагенты
Ну не так там и слоно, хотя я бы запросом без соединений и попробовала, что-то вроде
, — спасибо, а как мне связать ваш запрос с данными из файла (Ключ, ИНН и КПП)?
Большое СПАСИБО!!!! Буду пробовать!!! )))))))
Подскажите еще, пожалуйста, два момента: 1) Нужен вначале анализ на реквизит Ключ. Если такого ключа нет в базе, то идет запрос как в и тогда этот Ключ тоже надо вбить в базу. 2) В запросе я найду контрагентов, которых: или нет с таким как в файле ИНН и КПП или есть с таким как в файле ИНН и КПП. Т.е. это случаи или полного совпадения или полного несовпадения. А как мне тогда найти тех, у кого ИНН совпадает, а КПП из базы или не совпадает или вообще не заполнено (в этом случае, приоритет у КПП из файла, его надо вбить).
+ На мой первый вопрос из : Я так полагаю, что должно быть что-то вроде: Но как тогда дальше связать Ключ, ИНН и КПП? Не знаю, понятно ли я изложила свою мысль…
запрос в цикле — уже не оригинально смотрим
по сравнению с тем, что было до этого, запрос в цикле — большой шаг вперед.
Запрос один и тот же почти: для Ключа «ВЫБРАТЬ | Контрагенты.Ссылка, | Контрагенты.Представление нашла есть ли кто с таким ключом. Если нету ищем по какой-то логике. Если есть что делаем? Как вариант проверяем, совпадает ли у найденного ИНН и КПП. Если не совпадают что делаем? Перезаписываем, спрашиваем? По вопросу ИНН и КПП. Не нашли с ИНН и КПП какими нужно. Что делаем? Ищем сначала по ИНН (запрос по аналогии сделаете, надеюсь). не нашли никого, по КПП искать бессмысленно дальше (все кто в одной налоговой имеют один и тот же КПП за редким исключением). Нашли нескольких с одним ИНН. Перебираем. У контрагента КПП не пустое и не совпадает с нашим. Что делаем? Варианты — проверяем наименование или еще что, спрашиваем у пользователя, идем дальше. У контрагента КПП пустое. Что делаем? Варианты — заполняем своим кпп, спрашиваем у пользователя, идем дальше. Короче, вы на бумажке алгоритм составьте для начала и решите что делать, а инструмент вот он. Никто не претендует на оригинальность. Пусть хоть как-то с мертвой точки сдвинется, к тому же все равно, как правило, вмешательство пользователей потребуетя в принятие решения. А ваша временная таблица убьет автора К тому же Ваш запрос из не решает ее задачу, а для единичного прогона не сильно оптимален.
Шапокляк — огромное Вам СПАСИБО!!! Что бы я делала без Вас!? :*)
Тэги:
Комментарии доступны только авторизированным пользователям
В обработке есть Данные реквизита — это все равно как Вы бы открыли значение по ссылке например, карточку контрагента и в нем повторно вызвали обработку.
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Это можно сделать в режиме Конфигуратор обычным способом, то есть в окне конфигурации следует выбрать пункт Общие , далее Параметры функциональных опций и добавить новый объект. Данные объекта (для 1С 8.1, 1С 8.2, 1С 8.3) Обращайтесь в форму связи
Что такое группы в справочниках 1С:Предприятие, зачем они нужны и как с ними работать
Сейчас мы с вами разберём один очень важный вопрос. ЭТО — грабли, на которые наступает практически каждый первый пользователь 1С:Бухгалтерии 8! Да-да, сейчас речь пойдёт о группах.
Группы встречаются в справочниках и в основном предназначены исключительно для удобства. Вместо того, чтобы сваливать все элементы справочника в одну большую кучу, их можно рассортировать, для чего в 1С Предприятии и существуют группы.
Однако, не все справочники позволяют создавать группы. Ниже приведен пример справочника, в котором нельзя использовать группировку.
На рисунке видно, что в данном справочнике можно создавать только элементы, а не группы элементов. Новый элемент в справочник добавляется соответствующей кнопкой с зелёным плюсом (Добавить в версии 8.2 или Создать в 8.3). Элементы справочников в списке обозначаются картинкой в виде палочки (слева строки).
А вот пример справочника, в котором помимо элементов можно создавать ещё и группы. Группы также часто называют папками, поскольку они обозначаются значками папок, как в Проводнике Windows.
Честно говоря, удивляют попытки развернуть дерево групп при условии что там ничего нет! Если группы в справочник не добавлялись, то там будет ПУСТО!
Если в справочнике накопилось много данных (элементов), то их можно рассортировать при помощи групп. Сколько групп создавать, как их называть — решаете только вы сами.
Как создать группу:
Используйте сочетание клавиш Ctrl + F9 или нажатие на кнопку папки с плюсом на панели инструментов справочника.
Разобраться с особенностями работы 1С:Бухгалтерии 8.3, а также научиться вести учёт без посторонней помощи Вам поможет специальный видеокурс по данной конфигурации, включающий в себя 42 часа практических материалов. Посмотрите примеры уроков и учебный план курса!
Функциональные опции и параметры функциональных опций – Ваш петербургский программист 1С
Перемещение элементов справочника из одной группы в другую
Самый простой способ переместить элемент справочника 1С Бухгалтерии 8 в другую группу — открыть этот элемент (клавиша F2) и в поле Группа выбрать другую папку. Данные способ прост, однако неэффективен при смене группы сразу у нескольких элементов.
Второй способ — выделить нужный элемент и нажать кнопку Переместить элемент в другую группу на панели инструментов справочника. Группа при этом уже должна существовать! Пример показан на рисунке ниже.
В открывшемся окне выбираем нужную группу двойным щелчком (или одинарный, а потом кнопка Выбрать).
Промокоды на Лайм Займ на скидки
Займы для физических лиц под низкий процент
- 💲Сумма: от 2 000 до 70 000 рублей
- 🕑Срок: от 7 до 168 дней
- 👍Первый заём для новых клиентов — 0%, повторный — скидка -10 % по промокоду
Третий способ самый быстрый. Элементы можно перетаскивать мышкой из одной группы в другую, также как папки и файлы в Windows.
Всё вышесказанное можно применять не только к элементам справочников, но и к самим группам тоже!
В случае отключения функциональной опции УчетХарактеристик в формах отключается видимость полей колонка Значение и поле Значение , отображающих значения характеристик, как показано на рис1.
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Она позволяет решить большинство данных задач в режиме предприятия, не прибегая к услугам программистов и изменениям конфигурации. Разработка Управляемых форм 1С: Предприятие 8.3 | РеКС — друг в мире компьютеров Обращайтесь в форму связи
Что такое права пользователя в 1С?
Каждая конфигурация от 1С позволяет адаптировать систему под того или иного сотрудника. В этом и заключается вся суть пользовательских прав. Например, одному менеджеру совсем не обязательно иметь доступ к базе данных другого филиала, поэтому в данном контексте можно ограничить его права. Чтобы он не мог корректировать чужие базы, брать оттуда контакты, копировать или просматривать документы.
А вот сотруднику, который недавно пришел на место директора, было бы логичнее всего дать новые полномочия и расширить возможности. Например, контролировать деятельность всех подразделений, сверять отчетность и сопоставлять полученные данные. Для этого ему необходимо предоставить доступ для просмотра, копирования, корректировки и сохранения того или иного файла.
Кроме этого, настройка прав доступа – это оптимизация пространства конфигурации 1С для того или иного пользователя. Ему не будут попадаться под руку ненужные материалы, и он за считанные секунды сможет найти желаемые документы.
Когда клиент системы попадает на запрещенную страницу программа автоматически отображает на экране табличку: «у вас недостаточно прав для редактирования».
- ограничить того или иного сотрудника в праве доступа (если он был уволен или перешел на другую позицию);
- расширить возможности для сотрудника (если он стал частью компании недавно или перешел на новое рабочее место, которое подразумевает больше опций, инструментов и полномочий).
Остальные настройки в конфигурациях 1С
Программное решение предлагает дополнительные возможности.
Например:
Кроме этого, в пределах платформы можно настраивать подходящий внешний вид программы, который будет наиболее комфортным для восприятия.
Присутствует возможность предоставления доступа внешним пользователям.
Горящие товары с бесплатной доставкой
«AliExpress Россия» работает отдельно от глобального «AliExpress» принадлежащего Alibaba. Он не зависит от мировых банковских систем и не попал под санкционный список со стороны США и Великобритании. Из Китая соответственно тоже можно заказывать ничего не опасаясь.
Авторы конфигураций 1С побеспокоились о том, чтобы предоставить клиентам расширенные возможности для администрирования прав доступа. Они на первый взгляд могут показаться довольно сложными, но это впечатление обманчиво. Достаточно воспользоваться рекомендациями специалистов и бесплатными консультациями.
В таком случае не будет никаких проблем, связанных с доступом к базам данных и файлам. Также необходимо чтобы у клиента имелся актуальный договор 1С:ИТС, чтобы он мог использовать весь потенциал прикладных решений.
Примеры, которые будут описаны далее, приведены для общего понимания работы с возможностями конфигурации в части использования реквизитов.
Мнение эксперта
1С:Эксперт по технологическим вопросам
Задавайте мне вопросы, и я помогу разобраться!
Колонка Тип значения переименована в Возможный тип значения и показывает тип значения, определенный для данного реквизита в конфигураторе. Настройка профилей доступа в типовых прикладных решениях 1С: Предприятие на базе БСП В Смоленске в Легасофт. Обращайтесь в форму связи
&НаСервереБезКонтекста
Это самый интересный вариант, разберемся для начала, что такое контекст формы. Управляемая форма представляется на уровне платформы в виде XML файла описания расположения элементов и значения реквизитов формы. Соответственно, чем больше элементов на форме и чем больше данных хранится в реквизитах формы, тем больше будет контекст.
При вызове процедуры без контекста, процедура не видит реквизитов формы и не может к ним обращаться ни для чтения, ни для изменения.
И вот здесь нам как раз может помочь директива &НаСервереБезКонтекста.
Рассмотрим для примера такую ситуацию: у нас есть форма, в реквизитах формы есть таблица значений с 100 000 строк и реквизит с именем «Реквизит1». Нам необходимо в этот реквизит значение перечисления.
Во втором примере мы не стали передавать контекст формы, в итоге произошла только передача ссылки на элемент перечисления с сервера на клиент.
Важно понимать, сколько данных будет передано в холостую, а сколько полезно. Например, если нам нужно заполнить нашу таблицу значения, то есть самый тяжелый элемент формы, то целесообразней будет не усложнять код обходом передачи контекста, а просто передать контекст через &НаСервере.
Пример 3, предположим, у нас есть название для перечисления, которое хранится в реквизите Реквизит2, мы можем его передать в качестве параметра функции:
Ну и напоследок еще один пример, как делать не надо:
Если мы в качестве параметра передаем ЭтаФорма, то по факту мы внеконтекстный вызов превращаем в контекстный. Если без этого не обойтись, то стоит делать контекстный вызов.
Настройка прав пользователей в конфигурациях 1С
&НаСервереБезКонтекста
Это самый интересный вариант, разберемся для начала, что такое контекст формы. Управляемая форма представляется на уровне платформы в виде XML файла описания расположения элементов и значения реквизитов формы. Соответственно, чем больше элементов на форме и чем больше данных хранится в реквизитах формы, тем больше будет контекст.
При вызове процедуры без контекста, процедура не видит реквизитов формы и не может к ним обращаться ни для чтения, ни для изменения.
И вот здесь нам как раз может помочь директива &НаСервереБезКонтекста.
Рассмотрим для примера такую ситуацию: у нас есть форма, в реквизитах формы есть таблица значений с 100 000 строк и реквизит с именем «Реквизит1». Нам необходимо в этот реквизит значение перечисления.
Во втором примере мы не стали передавать контекст формы, в итоге произошла только передача ссылки на элемент перечисления с сервера на клиент.
Важно понимать, сколько данных будет передано в холостую, а сколько полезно. Например, если нам нужно заполнить нашу таблицу значения, то есть самый тяжелый элемент формы, то целесообразней будет не усложнять код обходом передачи контекста, а просто передать контекст через &НаСервере.
Пример 3, предположим, у нас есть название для перечисления, которое хранится в реквизите Реквизит2, мы можем его передать в качестве параметра функции:
Ну и напоследок еще один пример, как делать не надо:
Если мы в качестве параметра передаем ЭтаФорма, то по факту мы внеконтекстный вызов превращаем в контекстный. Если без этого не обойтись, то стоит делать контекстный вызов.
💥Принимайте участие в опросе и получайте бесплатную консультацию
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
- Pick a username
- Email Address
- Password
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account