Ошибка отображения типов отсутствует отображение для типа выборкаизрезультатазапроса

  1. При передаче результата запроса функции через Возврат в Клиент, выходит ошибка «Отсутствует отображение для типа ‘ВыборкаИзРезультатаЗапроса‘».

    При совершении таких же манипуляций с кодом, ошибок не возникало. На ошибки все проверил.
    Какой тут может быть подводный камень?

    На клиенте:

    Процедура РаскладкаПКОтПриИзменении(Элемент)
        СтрокаТабличнойЧасти = Элементы.Раскладка.ТекущиеДанные;
        ПКДо = СтрокаТабличнойЧасти.ПКОт + СтрокаТабличнойЧасти.Длина;
        Результат = РаскладкаТрубы.ПересеченияРаскладки(СтрокаТабличнойЧасти.ПКОт, ПКДо);
    КонецПроцедуры

    НаСервере

    Функция ПересеченияРаскладки(От,До)Экспорт
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    ТрубаРаскладка.ПКОт,
        |    ТрубаРаскладка.ПКДо,
        |    ТрубаРаскладка.ТрубаНом,
        |    ТрубаРаскладка.ТрубаНом.Длина КАК Длина
        |ИЗ
        |    РегистрСведений.ТрубаРаскладка КАК ТрубаРаскладка
        |ГДЕ
        |    ТрубаРаскладка.ПКОт <= &ПКОт И ТрубаРаскладка.ПКДо >= &ПКОт
        |УПОРЯДОЧИТЬ ПО ТрубаРаскладка.ПКОт
        |";
                
        Запрос.УстановитьПараметр("ПКОт", От);
        Запрос.УстановитьПараметр("ПКДо", До);
        Результат = Запрос.Выполнить().Выбрать();
       
        Возврат Результат;
           
    КонецФункции

  2. alexburn

    Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Почитайте про Выбрать() и про его область видимости — На клиенте, На сервере…

  3. А почему точно в таких же запросах из клиента в сервер все работает? Разница только в другой таблице.


  4. alexburn

    Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Потому что:
    РезультатЗапроса (QueryResult)
    Выбрать (Select)
    Доступность:
    Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

    ВыборкаИзРезультатаЗапроса (QueryResultSelection)
    Доступность:
    Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

  5. Одинаковая ошибка как из Тонкого клиента, так из Толстого.


  6. alexburn

    Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    А где вы параметры запросу задаете ? Вернее их значения ?

    — Объединение сообщений, 2 июн 2016

    А, увидел

    — Объединение сообщений, 2 июн 2016

    Отладчиком проходились по серверной функции ? Попадает туда ?

  7. По серверной ходил. Ответ по запросу есть. Но при передаче в клиент путем Возврат, выходит ошибка.
    Перед этим киврялся и пытался передать значения на другую форму. Начала выходить ошибка. Потом эту Другую форму удалил……но результат с ошибкой сохранился.
    Могло это как-то повлиять?


  8. alexburn

    Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Вроде как результат запроса на клиента нельзя передать, обрабатывайте на сервере все.


1C-pro.ru - форум по 1С:Предприятию 7.7, 8.0, 8.1, 8.2, 8.3

  1. При передаче результата запроса функции через Возврат в Клиент, выходит ошибка «Отсутствует отображение для типа ‘ВыборкаИзРезультатаЗапроса‘».

    При совершении таких же манипуляций с кодом, ошибок не возникало. На ошибки все проверил.
    Какой тут может быть подводный камень?

    На клиенте:

    Процедура РаскладкаПКОтПриИзменении(Элемент)
        СтрокаТабличнойЧасти = Элементы.Раскладка.ТекущиеДанные;
        ПКДо = СтрокаТабличнойЧасти.ПКОт + СтрокаТабличнойЧасти.Длина;
        Результат = РаскладкаТрубы.ПересеченияРаскладки(СтрокаТабличнойЧасти.ПКОт, ПКДо);
    КонецПроцедуры

    НаСервере

    Функция ПересеченияРаскладки(От,До)Экспорт
        Запрос = Новый Запрос;
        Запрос.Текст =
        "ВЫБРАТЬ
        |    ТрубаРаскладка.ПКОт,
        |    ТрубаРаскладка.ПКДо,
        |    ТрубаРаскладка.ТрубаНом,
        |    ТрубаРаскладка.ТрубаНом.Длина КАК Длина
        |ИЗ
        |    РегистрСведений.ТрубаРаскладка КАК ТрубаРаскладка
        |ГДЕ
        |    ТрубаРаскладка.ПКОт <= &ПКОт И ТрубаРаскладка.ПКДо >= &ПКОт
        |УПОРЯДОЧИТЬ ПО ТрубаРаскладка.ПКОт
        |";
                
        Запрос.УстановитьПараметр("ПКОт", От);
        Запрос.УстановитьПараметр("ПКДо", До);
        Результат = Запрос.Выполнить().Выбрать();
       
        Возврат Результат;
           
    КонецФункции
  2. Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Почитайте про Выбрать() и про его область видимости — На клиенте, На сервере…

  3. А почему точно в таких же запросах из клиента в сервер все работает? Разница только в другой таблице.

  4. Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Потому что:
    РезультатЗапроса (QueryResult)
    Выбрать (Select)
    Доступность:
    Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

    ВыборкаИзРезультатаЗапроса (QueryResultSelection)
    Доступность:
    Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).

  5. Одинаковая ошибка как из Тонкого клиента, так из Толстого.

  6. Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    А где вы параметры запросу задаете ? Вернее их значения ?

    — Объединение сообщений, 2 июн 2016

    А, увидел

    — Объединение сообщений, 2 июн 2016

    Отладчиком проходились по серверной функции ? Попадает туда ?

  7. По серверной ходил. Ответ по запросу есть. Но при передаче в клиент путем Возврат, выходит ошибка.
    Перед этим киврялся и пытался передать значения на другую форму. Начала выходить ошибка. Потом эту Другую форму удалил……но результат с ошибкой сохранился.
    Могло это как-то повлиять?

  8. Offline

    alexburn
    Модераторы
    Команда форума
    Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    15.150
    Симпатии:
    560
    Баллы:
    204

    Вроде как результат запроса на клиента нельзя передать, обрабатывайте на сервере все.

6elka1703

91 / 85 / 27

Регистрация: 29.10.2016

Сообщений: 928

1

Ошибка отображения типов: Отсутствует отображение для типа ‘РезультатЗапроса’

23.04.2019, 10:02. Показов 3605. Ответов 1

Метки нет (Все метки)


Добрый день, пытаюсь заполнить список выбора для колонки таблицы значений результатами запроса, но бьет ошибку

Ошибка отображения типов:Отсутствует отображение для типа ‘РезультатЗапроса’

Не подскажете в чем проблема, что делаю не так?

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
&НаКлиенте
Процедура ОбработкаВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
      СтрокаТабличнойЧасти  = Элементы.ТаблицаПолучателей.ТекущиеДанные;
      ЗагрузитьСписокЗначений(СтрокаТабличнойЧасти.Получатель);
     // Элементы.ТаблицаПолучателейЭлектроннаяПочта.СписокВыбора.ЗагрузитьЗначения( = "gmail";
      
КонецПроцедуры
 
&НаСервере
Процедура ЗагрузитьСписокЗначений(Сотрудник) 
    
    СписокЗначений = Новый Массив;
        
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Сотрудник", Сотрудник);
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Сотрудники.КонтактнаяИнформация.(
        |       АдресЭП КАК АдресЭП
        |   ) КАК КонтактнаяИнформация
        |ИЗ
        |   Справочник.Сотрудники КАК Сотрудники
        |ГДЕ
        |   Сотрудники.Ссылка = &Сотрудник";
    
    Выборка = Запрос.Выполнить().Выбрать();
    
    Пока Выборка.Следующий() Цикл
        СписокЗначений.Добавить(Выборка.КонтактнаяИнформация); 
    КонецЦикла;
    
    Элементы.ТаблицаПолучателейЭлектроннаяПочта.СписокВыбора.ЗагрузитьЗначения(СписокЗначений);
        
КонецПроцедуры

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

856 / 655 / 111

Регистрация: 01.11.2012

Сообщений: 2,410

23.04.2019, 10:55

2

Я знаю в чём ошибка, но пока не выясню как это ты АдресЭП хранишь в табличной части, ничего исправлять не буду

Дай пжлста снимок из дерева конфигурации этого справочника и снимок из базы как у тебя там инфа хранится в сотруднике

0

Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’

Описание ошибки:
Ошибка при программировании, конфигурировании кода в 1С 8:

Ошибка отображения типов:
Отсутствует отображение для типа ‘ЭлементСпискаЗначений’
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘v’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/uobjects}v
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘value’:
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}value

Найденные решения:

1C 8 Ошибка отображения типов: Отсутствует отображение для типа ЭлементСпискаЗначений,

Нажатие на изображении увеличит его
1C 8, Отсутствует отображение для типа ЭлементСпискаЗначений, по причине, ошибка передачи данных между клиентом и сервером, значение недопустимого типа

Возникла при написании кода индивидуальной конфигурации. Но, как оказалось, может подстерегать программиста из-за его невнимательности и при конфигурировании в других конфигурациях. Итак, в чем же причина возникновения данной ошибки. В управляемой форме был создан реквизит типа «СписокЗначений». При открытии формы по коду срабатывает обработчик заполнения этого списка значений. Т.е. в коде создается переменная с помощью конструктора «Новый СписокЗначений», значение которой потом и устанавливается реквизиту формы. Но, перед тем как это происходит, в коде список значений изменяется — в частности выполняется его дополнительная сортировка. Конечно, ошибка «Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’» может возникнуть у Вас не только в такой ситуации. Сейчас разберемся в чем ее суть.

1С 8, Ошибка для типа ЭлементСпискаЗначений, передачи данных между клиентом и сервером, значение недопустимого типа, по причине, ошибка преобразования данных XDTO

Как было отмечено в этой частной задаче выполняется сортировка исходного заполненного списка значений. Но, т.к. в этой частной задаче не подходило использование метода «СортироватьПоЗначению(<Направление>)«, т.к. сортировка более сложная (по текстовым данным с разделителями порядка, содержащих разделитель «.», пример: 1.1, 2.2, 2.2.1, 2.2.2, 3.1, 3.2, 3.3.1, 3.3.2). Поэтому сортировка выполнялась программно с созданием новой переменной типа «СписокЗначений» и ее заполнением по данным исходного списка.

После сохранения кода и попытки проверки появилась ошибка, текст которой приведен в начале страницы. Анализ данных через предмет отладки неявно, но показал ошибку.

Нажатие на изображении увеличит его

1C 8, как устранить, исправить ошибку, ошибка преобразования данных XDTO, отсутствует отображение для типа ЭлементСпискаЗначений

Не смотря на то, что в методической информации «Синтакс-помощника» 1С 8 указано, что значение элемента списка значений может быть любым (произвольным), все-таки для случая использования в управляемой форме в качестве реквизита накладывается ограничение по типу. И нельзя в значение такого списка значений поместить «ЭлементСискаЗначений» другого списка значений.

1С 8, какие значения могут быть у списказначений, исключения для управляемой формы

Т.е. для моего случая использования списка значений в управляемой форме в качестве реквизита ошибка была в коде, где происходило заполнение значений нового списка по данным исходного при сортировке.

Нажатие на изображении увеличит его

Было выполнено исправление в коде для обращения к значениям и передачи их в качестве значений нового списка значений. 

Нажатие на изображении увеличит его
1С 8, в чем причина ошибки в форме, отсутствует отображение для типа Элемент списка значений, ошибка отображения типов

В данном случае значениями списка были значения примитивного тип «Строка», поэтому дальнейшая работа доработанного кода стала возможной. И это все-таки позволило реализовать задачу. Если у Вас будут другие типы, например ссылки, то продумывайте заранее, как будете упорядочить, возможно придется через другие универсальные объекты, например использование таблицы значений, и потом заполнять конечный список значений. Другие примитивные типы не проверялись, но предполагаю, что они так же подойдут для корректной работы в управляемой форме. в качестве значений списка. Поэтому учитывайте это, если столкнетесь с данной ошибкой при Вашем конфигурировании — подбирайте по возможности простой тип для значений списка.

Нажатие на изображении увеличит его
1С 8, в чем, причина ошибки, как устранить, Ошибка передачи данных между клиентом и сервером, отсутствует отображение для типа элемент списка значений

Таким образом на примере данной частной ситуации возникновения ошибки при конфигурировании в 1С 8 «Отсутствует отображение для типа ЭлементСпискаЗначений, по причине, ошибка передачи данных между клиентом и сервером, значение недопустимого типа» извлекаем вывод о том, что нужно быть внимательным и не заполнять значения объекта «Список значений» элементами другого списка значений. А передавать значения элемента списка значений, если одна переменная типа «СписокЗначений» заполняется за счет другой подобной.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

16-03-2022

Журавлев А.С.
(Сайт azhur-c.ru)

Сергей

Местный

Сообщений: 8
Баллов: 15
Регистрация: 26.06.2022

#10

0

28.06.2022 13:36:40

&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ТекущиеДанные = РаботаСоСпискамиДокументовКлиент.ПолучитьДанныеТекущейСтрокиСписка(
Элементы.Список, Элементы.Список.ТекущаяСтрока);

Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;

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

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

Если Поле = Элементы.Задачи Тогда
ОткрытьФорму(«ОбщаяФорма.ПроцессыИЗадачи»,
Новый Структура(«Предмет», ТекущиеДанные.Ссылка),
ЭтаФорма);
Возврат;
КонецЕсли;

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

Если Поле = Элементы.СостояниеКонтроля Тогда
КонтрольКлиент.ОбработкаКомандыКонтроль(ТекущиеДанные.Ссылка, ЭтаФорма);
Возврат;
КонецЕсли;

ПараметрыОткрытия = Новый Структура(«Ключ», ТекущиеДанные.Ссылка);
ОткрытьФорму(«Справочник.ВнутренниеДокументы.ФормаОбъекта», ПараметрыОткрытия, Элементы.Список);
КонецПроцедуры

Пишу первую обработку на УФ. Вроде, ничего ужасного не делаю. А он так ругается, так ругается :))))

&НаКлиенте

Процедура Загрузить(Команда)

    Выборка = СформироватьВыборкуИЗЗапроса();

КонецПроцедуры

    
&НаСервере

Функция  СформироватьВыборкуИЗЗапроса()

    
    Запрос = Новый Запрос;

      Запрос.Текст =    «ВЫБРАТЬ

                      |    Пользователи.*

                      |ИЗ

                      |    Справочник.Пользователи КАК Пользователи»;

    ТаблицаДанных = Запрос.Выполнить().Выбрать();

    
    Возврат ТаблицаДанных;

    
КонецФункции

{ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(3)}: Ошибка при вызове метода контекста (СформироватьВыборкуИЗЗапроса)

    Выборка = СформироватьВыборкуИЗЗапроса();

по причине:

Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.

по причине:

Ошибка преобразования данных XDTO:

Запись значения свойства ‘ret’:

    форма: Элемент

    имя: {http://v8.1c.ru/8.2/managed-application/modules}ret

по причине:

Ошибка отображения типов:

Отсутствует отображение для типа ‘ВыборкаИзРезультатаЗапроса’

Доброе время суток всем ! Проблема в следующем. Из 1С 7.7 по ОЛЕ подключаюсь в 1С 8.2 где хочу выполнить код из общего модуля (запрос) и вернуть выборку в 1С 7.7 Сделал такое при подключении из 1С 7.7 в 1С 8.2  Бухгалтерия предприятия, редакция 2.0 (2.0.37.14) — все работает отлично. Запрос выполнялся и в 1С 7.7 возвращалась выборка с которой далее работал. У пользователя ОЛЕ в 1С 8.2 в БП 2.0 ставил в правах «Полные права» «Дополнительное право внешнего подключения (соединения)» Возникла необходимость подключиться из 1С 7.7 в 1С 8.2 Управление торговлей, редакция 11.0 (11.0.9.12) но база ФАЙЛОВАЯ. В серверном варианте базу использовать нельзя — нет лицензий на MS SQL нужной версии. У пользователя ОЛЕ в 1С 8.2 поставил в правах «Администратор системы» «Полные права» Подключение из 1С 7.7 в 8.2 в УТ 11 происходит. Но при попытке выполнить запрос получаю сообщение Подключение к базе 8.2 установлено … Выборка = БазаБух.АСУП_ОЛЕ.ВернутьВыборку(ТекстЗапроса); 1C:Enterprise 8.2.16.352: Ошибка при вызове серверного метода. Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. Ошибка преобразования данных XDTO: Запись значения свойства ‘ret’: имя: { Ошибка отображения типов: Отсутствует отображение для типа ‘ВыборкаИзРезультатаЗапроса’ Вопрос — можно ли как-то при использовании файловой базы 1С 8.2 подключится к ней по OLE из 1С 7.7, выполнить по OLE запрос и вернуть выборку (на серверной базе это отлично получается) ? Поиск в Гугле ничего не дал.

почему же на серверной базе все работает ?

Потому что бухгалтерия 2.0 — обычное приложение, а Ут 11 — управляемое с четким разделением клиента и сервера.

я на сервере получаю а ВыборкаИзРезультатаЗапроса доступна же <Сервер, толстый клиент, внешнее соединение (то есть OLE)>

УТ11 работает под тонким клиентом. Выборка на клиенте не может существовать.

уверен ? директива запуска какая у твоей функции ?

Тебе надо вернуть данные в 7.7 с клиента.

ну да. не пойму — в чем проблема ? ВыборкаИзРезультатаЗапроса доступна же и в клиенте OLE и в 1С 7.7

Тэги: 1С 8

Комментарии доступны только авторизированным пользователям

barracuda1991

1 / 1 / 1

Регистрация: 30.07.2015

Сообщений: 121

1

1C 8.x

Подстановка цены в документ из регистра сведений через табличную модель

21.05.2016, 15:57. Показов 5686. Ответов 6

Метки нет (Все метки)


Студворк — интернет-сервис помощи студентам

Пытаюсь получить из регистра цену на выбираемый в табличной части товар по текущему контрагенту.

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Функция ПолучиЦенуПродажи(СсылкаНаТекЭлСправ)
    // табличная модель
    Запрос= новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
                   |    ЦеныПоставщиковСрезПоследних.Цена
                   |ИЗ
                   |    РегистрСведений.ЦеныПоставщиков.СрезПоследних КАК ЦеныПоставщиковСрезПоследних
                   |ГДЕ
                   |    ЦеныПоставщиковСрезПоследних.Контрагент.Ссылка = &СсылкаНаКонтрагентаВдокументеПН
                   |    И ЦеныПоставщиковСрезПоследних.Номенклатура.Ссылка = &СсылкаНаТоварВдокументеПН";
    Запрос.УстановитьПараметр("СсылкаНаКонтрагентаВдокументеПН",Объект.Контрагент.Ссылка);
    Запрос.УстановитьПараметр("СсылкаНаТоварВдокументеПН",СсылкаНаТекЭлСправ);
    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();
    
    Если Выборка.Следующий() Тогда
        Возврат Выборка;      
    КонецЕсли;
    
КонецФункции
 
&НаКлиенте
Процедура ТоварыНоменклатураПриИзменении(Элемент)
    // табличная модель
    Стр = Элементы.Товары.ТекущиеДанные;
    Контрагент = Элементы.Контрагент;
    Стр.Цена = ПолучиЦенуПродажи(Стр.Номенклатура.Ссылка);
КонецПроцедуры

Ругается стр. 14
Значение не является значением объектного типа (Выбрать)
Выборка = Результат.Выбрать();



0



GreenkA

Эксперт 1С

3053 / 2000 / 524

Регистрация: 25.06.2009

Сообщений: 6,964

21.05.2016, 16:59

2

barracuda1991, а где вы выполняете функцию?
И еще: на вот эту строку не ругается?

1C
1
Стр.Цена = ПолучиЦенуПродажи(Стр.Номенклатура.Ссылка);

а должно бы)



0



1 / 1 / 1

Регистрация: 30.07.2015

Сообщений: 121

21.05.2016, 18:07

 [ТС]

3

функция выполняется &НаСервере

Добавлено через 27 минут
неверно передаю ссылку на текущий товар в функцию?

Добавлено через 31 минуту
1С:Предприятие 8.3, учебная версия (8.3.6.2014)
управляемые формы
Смотрю в отладчике, результат запроса почему то пустой
хотя Объект.Контрагент.Ссылка
и
СсылкаНаТекЭлСправ заполнены
стр 13 Результат = Запрос.Выполнить();



0



GreenkA

Эксперт 1С

3053 / 2000 / 524

Регистрация: 25.06.2009

Сообщений: 6,964

21.05.2016, 20:37

4

передавайте номенклатура без обращения к ссылке:

1C
1
Стр.Цена = ПолучиЦенуПродажи(Стр.Номенклатура);

и прописывайте сразу:

1C
1
Выборка = Запрос.Выполнить().Выбрать();

Почему у вас на Выбрать() ругается — непонятно.
Проверьте регистр, по данным отбора информация есть в нем?



1



1 / 1 / 1

Регистрация: 30.07.2015

Сообщений: 121

21.05.2016, 20:59

 [ТС]

5

Цитата
Сообщение от GreenkA
Посмотреть сообщение

Почему у вас на Выбрать() ругается — непонятно.
Проверьте регистр, по данным отбора информация есть в нем?

Через консоль запросов пробовал, в результирующей таблице есть данные. Теперь пишет:
{Документ.ПостаплениеТоваров.Форма.ФормаДокумента.Форма(56)}: Ошибка при вызове метода контекста (ПолучиЦенуПродажи)
Стр.Цена = ПолучиЦенуПродажи(Стр.Номенклатура);
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘ret’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/managed-application/modules}ret
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа ‘ВыборкаИзРезультатаЗапроса’



0



GreenkA

Эксперт 1С

3053 / 2000 / 524

Регистрация: 25.06.2009

Сообщений: 6,964

21.05.2016, 21:30

6

Лучший ответ Сообщение было отмечено barracuda1991 как решение

Решение

barracuda1991,

1C
1
Возврат Выборка.Цена;



0



1 / 1 / 1

Регистрация: 30.07.2015

Сообщений: 121

22.05.2016, 21:55

 [ТС]

7

Работает! ) Спасибо! )



0



  • Ошибка отображения типов отсутствует отображение для типа xbase
  • Ошибка отображения типов отсутствует отображение для типа comобъект
  • Ошибка отображения пространства имен отсутствует отображение для префикса
  • Ошибка отображения оверлейной программы steam heroes and generals
  • Ошибка отношения к нам жизненный пример