v7: найтипореквизиту() не ищет в реквизитах групп справочник? #789237


#0 by deputat
сабж. если сбе.найтипореквизиту("арт",сокрлп(тз2.артикул),1)=1 тогда .. конецесли; ничего не находит хотя в группе этого реквизита есть такое значение.
#1 by deputat
сотрировка реквизита стоит.
#2 by 1dvd
Запросом его
#3 by deputat
В случае применения объекта "Запрос" для выборки информации из справочников 1С:Предприятия необходимо учитывать следующую особенность. При обработке справочника объект "Запрос" не обрабатывает группы справочника. То есть он не использует их в качестве исходных данных для получения первичной выборки. При обработке уже полученных записей запрос добавляет группы для выбранных записей - элементов, если существует группировка по переменной запроса типа "Справочник". Такой способ обработки является стандартным, и Запрос выполняет ее так же, как он это делает, например, для реквизитов документа имеющих тип "Справочник". То есть, если в запросе по документам использовать группировку по реквизиту "Товар" документа "Счет", то в полученном отчете можно получить записи и по группам товаров, вошедших в запрос. Аналогично, если в запросе по справочнику получать в качестве группировки текущий элемент, то в полученный отчет будут включены записи, соответствующие группам отобранных запросом элементов. Однако так как сами группы не обрабатываются запросом при заполнении таблицы выборки, то в отчет не попадут те группы, которые не имеют элементов, или группы, элементы которых не попали в выборку. Соответственно объект "Запрос" не может применяться в тех случаях, когда нужно обрабатывать собственно группы, или получать все элементы, включая группы. С другой стороны, так как в большинстве случаев должны выбираться непосредственно элементы, запрос может быть успешно применен для обработки справочника. В том числе, Запрос позволяет существенно ускорить выборку элементов по условию, при работе с базой данных в формате SQL.
#4 by deputat
ну а факту, найтипореквизиту не ищет в реквизитах групп справочника?
#5 by deputat
такую инфу не встретил.
#6 by jj_mail
а использование реквизита для групп установлено ?
#7 by deputat
да, там даже данные есть. которые не находятся.
#8 by jj_mail
реквизит "арт" скорее всего текстовый ? НайтиПоРеквизиту может тупо не находить значение реквизита. Если попробовать вместо СокрЛП(....) скормить ему конкретное значение из справочника (например "0000000001"), находит ?
#9 by 1dvd
+1 Кстати, да. Нужно передавать параметром строку той же длины, что и реквизит
#10 by deputat
все. разобрался косяк был в данных. всем спасибо.
Тэги: 1С 7.7 и ранее
Ответить:
Комментарии доступны только авторизированным пользователям

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