Про ошибку «Отсутствует отображение для типа ‘УправляемаяФорма’» |
Я |
zippygrill
09.04.12 — 14:09
ести общаяКоманда. при нажатии нужно получить форму для дальнейшей работы. режим кнопки одиночный.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ПараметрКоманды,КлючУникальности);
Ошибка преобразования данных XDTO:
Запись значения свойства ‘val’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/mngsrv/ws}val
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа ‘УправляемаяФорма’
zippygrill
1 — 09.04.12 — 14:11
тип ПараметрыОткрытия мой документ, то есть ДокументСсылка.
vicof
2 — 09.04.12 — 14:13
ПараметрыОткрытия — это должна быть структура.
zippygrill
3 — 09.04.12 — 14:14
да ну нах. поставил и множественный режим кнопки. тоже самая ошибка.
zippygrill
4 — 09.04.12 — 14:16
ой сорри не ПараметрыОткрытия а ПараметрКоманды это ссылка на документ.
а ПараметрОткрытия это и ести структура.
vicof
5 — 09.04.12 — 14:18
ПолучитьФорму(<ИмяФормы>, <Параметры>, <Владелец>, <Уникальность>, <Окно>)
чо-то я не вижу тут параметров команды
vicof
6 — 09.04.12 — 14:19
<Владелец> (необязательный)
Владелец формы — форма или элемент управления другой формы.
zippygrill
7 — 09.04.12 — 14:22
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия); ?
vicof
8 — 09.04.12 — 14:24
типа того
ФормаПечати = ПолучитьОбщуюФорму(«ПечатьДокументов»,, ПечДокумент);
глобальный поиск творит чудеса
zippygrill
9 — 09.04.12 — 14:25
указал ключь, без владельца, таже ошибка.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
zippygrill
10 — 09.04.12 — 15:06
ап
zippygrill
11 — 09.04.12 — 15:11
Так таже самая ошибка. хз.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
el-gamberro
12 — 09.04.12 — 15:13
ты на сервере что ли форму получаешь?
zippygrill
13 — 09.04.12 — 15:16
(12)почему на сервере? директива компиляции общей команды -> НаКлиенте, где я вызываю метод получитьформу();
zippygrill
14 — 09.04.12 — 15:23
ap
zippygrill
15 — 09.04.12 — 15:31
—
Defender aka LINN
16 — 09.04.12 — 15:37
А зачем тебе _получать_ форму? Ну и — форма точно управляемая?
zippygrill
17 — 09.04.12 — 15:40
(16) свойства формы показывает чт оона Управл.
мне нужно из формы кое-что достать. если это возможно.
Defender aka LINN
18 — 09.04.12 — 15:43
(17) А если через ОткрытьФорму()? А если другую форму попробовать?
З.Ы. В упр. приложении обычно логика другая — открывается форма, куда передается все необходимое, и она уже дальше сама все делает.
zippygrill
19 — 09.04.12 — 15:45
(18) пытаюсь 2-мя методами. в первой передаю мой параметры а вторая вообще говорит что процедура не определена.
1. //печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
2. печ = ПолучитьОбщуюФорму(«ОбщаяФорма.ПечатьДокументов»);
Defender aka LINN
20 — 09.04.12 — 15:47
(19) ПолучитьОбщуюФорму получает обычную форму, не управляемую.
З.Ы. А что у нас в КлючУникальности?
zippygrill
21 — 09.04.12 — 15:50
понятно.
в Ключь новый Уник.Идентификатор
zippygrill
22 — 09.04.12 — 15:52
КлючУникальности = Строка(Новый УникальныйИдентификатор);
//
ПараметрыОткрытия = Новый Структура(«ИмяМенеджераПечати,ИменаМакетов,ПараметрКоманды,ПараметрыПечати»);
ПараметрыОткрытия.ИмяМенеджераПечати = «Документ.ЧекККМ»;
ПараметрыОткрытия.ИменаМакетов = «ТоварныйЧекДляПД»;
ПараметрыОткрытия.ПараметрКоманды = ПараметрКоманды;
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник;
что я пытаюсь получить: текст печать из макета ТоварныйЧек(он там уже нарисованный) и отправить его на ФР.
zippygrill
23 — 09.04.12 — 16:09
вверх
Defender aka LINN
24 — 09.04.12 — 16:16
Я для кого старался, (18) писал?
З.Ы. КлючУникальности = Новый УникальныйИдентификатор, так правильнее
zippygrill
25 — 09.04.12 — 16:21
(24)
КлючУникальности = Новый УникальныйИдентификатор;
//
ПараметрыОткрытия = Новый Структура(«ИмяМенеджераПечати,ИменаМакетов,ПараметрКоманды,ПараметрыПечати»);
ПараметрыОткрытия.ИмяМенеджераПечати = «Документ.ЧекККМ»;
ПараметрыОткрытия.ИменаМакетов = «ТоварныйЧекДляПД»;
ПараметрыОткрытия.ПараметрКоманды = ПараметрКоманды;
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник;
//
// Откроем форму печати документов
ОткрытьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
ошибка как в начале ветки.
Ошибка отображения типов:
Отсутствует отображение для типа ‘УправляемаяФорма’
Defender aka LINN
26 — 09.04.12 — 16:22
(25) блаблабла
Я так понимаю, первые строки ты из принципа не читаешь?
zippygrill
27 — 09.04.12 — 16:27
(26) если ты имеешь ввиду открыть любую другую общую форму то они открываются.
MSII
28 — 09.04.12 — 16:28
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник;
Вот это закомментируй
MSII
29 — 09.04.12 — 16:31
+(28) Ну и ОткрытьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ПараметрыВыполненияКоманды.Источник ,КлючУникальности);
zippygrill
30 — 09.04.12 — 16:31
(28) комментарии по этому поводу?
MSII
31 — 09.04.12 — 16:41
(30) Чего комментировать-то? Управляемая форма не сериализуется.
zippygrill
32 — 09.04.12 — 16:47
(31) понятно.
еще вопросик: можно получить текст который идет на печать из табл.док моей полученной формы?
Alwarus 0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
||||
1 |
||||
1C 8.x Открытие формы документа с заполнением данных из формы справочника13.07.2016, 22:39. Показов 9342. Ответов 7 Метки нет (Все метки)
Здравствуйте! И есть Документ, созданный на основании реестра сведений создал команду, которая открывает документ из формы справочника
Нужно, чтобы в форму документа передавалось значение Наименование (ФИО) из справочника, форма открывается, а оно не передается. Помогите плз.
__________________ 0 |
Dethmontt Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
||||
13.07.2016, 22:54 |
2 |
|||
Alwarus, почему не передается? Добавлено через 1 минуту
Добавлено через 2 минуты
ПараметрыФормы = Новый Структура(«Наименование», ПараметрКоманды);
ОткрытьФорму(«Документ.ПерсональныеДанные.Форма.Фо рмаДокумента», ПараметрыФормы, Но такой параметр ты должен обработать вручную в процедуре ПриСозданииНаСервере Добавлено через 2 минуты
ПараметрыФормы.Вставить(«ЗначенияЗаполнения», Новый Структура(«Пациент», ПараметрКоманды)); При таком подходе, у реквизита должна стоять галка «Заполнять из данных заполнения» 0 |
0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
|
14.07.2016, 07:41 [ТС] |
3 |
По второму варианту выдает ошибку: {Справочник.Пациент.Форма.ФормаЭлемента1.Форма(83) }: Ошибка при вызове метода контекста (ОткрытьФорму) Наверно и при этом надо создать процедуру ПриСозданииНаСервере. Или ПриОткрытии? 0 |
Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
|
14.07.2016, 11:29 |
4 |
Alwarus, что стоит в Тип параметр команды — в свойствах команды? Добавлено через 3 минуты 0 |
Alwarus 0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
||||
14.07.2016, 13:47 [ТС] |
5 |
|||
Тип команды СправочникСсылка.Пациент Команды формы наверно можно использовать, создал кнопку на форме с командой в модуле объекта:
Выдает такую же ошибку. 0 |
Dethmontt Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
||||
14.07.2016, 14:48 |
6 |
|||
РешениеAlwarus,
Элементы.Наименование; Что это такое? Добавлено через 48 секунд
Добавлено через 3 минуты
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине: Ошибка о чем говорит? Что ты передаешь на сервере Хрень, сервер не знает таких типов как «ПолеФормы» 1 |
0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
|
14.07.2016, 21:03 [ТС] |
7 |
1 Заработало, спасибо! И за совет про Элемент тоже…)) Интересно получается, мы создаем структуру с ключом «ЗначенияЗаполнения» и значением, которое получаем созданием еще одной структуры с ключом по справочнику «Пациент» и значением-ссылкой на него, правильно? 0 |
Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
|
14.07.2016, 21:09 |
8 |
правильно? Совершенно верно Добавлено через 1 минуту
Там же не было ссылки на элементы формы. Параметр может быть чем угодно, его нужно настраивать (может зависеть от группы и т.д.) 0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
14.07.2016, 21:09 |
Помогаю со студенческими работами здесь Открытие формы на добавление записи с автоматическим заполнением связанного поля
Открытие формы на добавления на основе данных из другой формы Очистка данных формы, открытие другой формы
Открытие формыдокумента во фрейме Столкнулся с проблемой, пока не знаю как её разрулить (все в web) 1. Есть… Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 8 |
Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’
Описание ошибки:
Ошибка при программировании, конфигурировании кода в 1С 8:
Ошибка отображения типов:
Отсутствует отображение для типа ‘ЭлементСпискаЗначений’
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘v’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/uobjects}v
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘value’:
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}value
Найденные решения:
Нажатие на изображении увеличит его
Возникла при написании кода индивидуальной конфигурации. Но, как оказалось, может подстерегать программиста из-за его невнимательности и при конфигурировании в других конфигурациях. Итак, в чем же причина возникновения данной ошибки. В управляемой форме был создан реквизит типа «СписокЗначений». При открытии формы по коду срабатывает обработчик заполнения этого списка значений. Т.е. в коде создается переменная с помощью конструктора «Новый СписокЗначений», значение которой потом и устанавливается реквизиту формы. Но, перед тем как это происходит, в коде список значений изменяется — в частности выполняется его дополнительная сортировка. Конечно, ошибка «Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’» может возникнуть у Вас не только в такой ситуации. Сейчас разберемся в чем ее суть.
Как было отмечено в этой частной задаче выполняется сортировка исходного заполненного списка значений. Но, т.к. в этой частной задаче не подходило использование метода «СортироватьПоЗначению(<Направление>)«, т.к. сортировка более сложная (по текстовым данным с разделителями порядка, содержащих разделитель «.», пример: 1.1, 2.2, 2.2.1, 2.2.2, 3.1, 3.2, 3.3.1, 3.3.2). Поэтому сортировка выполнялась программно с созданием новой переменной типа «СписокЗначений» и ее заполнением по данным исходного списка.
После сохранения кода и попытки проверки появилась ошибка, текст которой приведен в начале страницы. Анализ данных через предмет отладки неявно, но показал ошибку.
Нажатие на изображении увеличит его
Не смотря на то, что в методической информации «Синтакс-помощника» 1С 8 указано, что значение элемента списка значений может быть любым (произвольным), все-таки для случая использования в управляемой форме в качестве реквизита накладывается ограничение по типу. И нельзя в значение такого списка значений поместить «ЭлементСискаЗначений» другого списка значений.
Т.е. для моего случая использования списка значений в управляемой форме в качестве реквизита ошибка была в коде, где происходило заполнение значений нового списка по данным исходного при сортировке.
Нажатие на изображении увеличит его
Было выполнено исправление в коде для обращения к значениям и передачи их в качестве значений нового списка значений.
Нажатие на изображении увеличит его
В данном случае значениями списка были значения примитивного тип «Строка», поэтому дальнейшая работа доработанного кода стала возможной. И это все-таки позволило реализовать задачу. Если у Вас будут другие типы, например ссылки, то продумывайте заранее, как будете упорядочить, возможно придется через другие универсальные объекты, например использование таблицы значений, и потом заполнять конечный список значений. Другие примитивные типы не проверялись, но предполагаю, что они так же подойдут для корректной работы в управляемой форме. в качестве значений списка. Поэтому учитывайте это, если столкнетесь с данной ошибкой при Вашем конфигурировании — подбирайте по возможности простой тип для значений списка.
Нажатие на изображении увеличит его
Таким образом на примере данной частной ситуации возникновения ошибки при конфигурировании в 1С 8 «Отсутствует отображение для типа ЭлементСпискаЗначений, по причине, ошибка передачи данных между клиентом и сервером, значение недопустимого типа» извлекаем вывод о том, что нужно быть внимательным и не заполнять значения объекта «Список значений» элементами другого списка значений. А передавать значения элемента списка значений, если одна переменная типа «СписокЗначений» заполняется за счет другой подобной.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
16-03-2022
Журавлев А.С.
(Сайт azhur-c.ru)
Добрый день. Сегодня наступил на интересные грабли:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: param Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа ‘{http://v8.1c.ru/8.1/data/core}ValueTable’
Подобная ошибка возникает при попытке передать с клиента на сервер таблицу значений, и это мне давно известно, однако я получил эту ошибку без явной передачи таблицы. Вот часть кода с которым произошла ошибка:
&НаКлиенте
Процедура Заполнить(Команда)
тМассив = Новый Массив;
тМассив .Добавить(Объект.Организация);
ПоискНаСервере(тМассив);
КонецЕсли;
КонецПроцедуры
Процедура ПоискСсылокНаСервере(тМассив, тОсновнаяТаблица = Неопределено)
тДанныеВФорму = Ложь;
Если тОсновнаяТаблица = Неопределено Тогда
тОсновнаяТаблица = Новый ТаблицаЗначений;
тОсновнаяТаблица.Колонки.Добавить(«Ссылка»);
тДанныеВФорму = Истина;
КонецЕсли;
<<<<>>>>>>
Если <<<<>>>>>> Тогда
ПоискСсылокНаСервере(МассивСсылок,тОсновнаяТаблица);
КонецЕсли;
Если тДанныеВФорму Тогда
ЗначениеВРеквизитФормы(тОсновнаяТаблица,»ТаблицаСсылок»);
КонецЕсли;
КонецПроцедуры
В этом коде процедура с клиента вызывает выполнение кода на сервере, с одним единственным параметром, — массив ссылок. Хотя в процедуре есть два входящих параметра это массив и таблица значение — которая является не обязательным параметром и используется при рекурсивном вызове. И не смотря на то что при вызове с клиента на сервер мы не используем второй параметр, приложение пытается отправить данное значение на клиент и мы получаем вышеописанную ошибку. Выход из данной ситуации один перед возвратом на клиент убить таблицу написав код:
тОсновнаяТаблица = Неопределено
На сегодня все.
ести общаяКоманда. при нажатии нужно получить форму для дальнейшей работы. режим кнопки одиночный. Ошибка преобразования данных XDTO: Запись значения свойства ‘val’: форма: Элемент имя: { по причине: Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
тип ПараметрыОткрытия мой документ, то есть ДокументСсылка.
ПараметрыОткрытия — это должна быть структура.
да ну нах. поставил и множественный режим кнопки. тоже самая ошибка.
ой сорри не ПараметрыОткрытия а ПараметрКоманды это ссылка на документ. а ПараметрОткрытия это и ести структура.
чо-то я не вижу тут параметров команды
Владелец формы — форма или элемент управления другой формы.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия); ?
глобальный поиск творит чудеса
указал ключь, без владельца, таже ошибка. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
Так таже самая ошибка. хз. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
ты на сервере что ли форму получаешь?
почему на сервере? директива компиляции общей команды -> НаКлиенте, где я вызываю метод получитьформу;
А зачем тебе _получать_ форму? Ну и — форма точно управляемая?
свойства формы показывает чт оона Управл. мне нужно из формы кое-что достать. если это возможно.
А если через ОткрытьФорму? А если другую форму попробовать? З.Ы. В упр. приложении обычно логика другая — открывается форма, куда передается все необходимое, и она уже дальше сама все делает.
пытаюсь 2-мя методами. в первой передаю мой параметры а вторая вообще говорит что процедура не определена.
ПолучитьОбщуюФорму получает обычную форму, не управляемую. З.Ы. А что у нас в КлючУникальности?
понятно. в Ключь новый Уник.Идентификатор
что я пытаюсь получить: текст печать из макета ТоварныйЧек(он там уже нарисованный) и отправить его на ФР.
Я для кого старался, писал? З.Ы. КлючУникальности = Новый УникальныйИдентификатор, так правильнее
ошибка как в начале ветки. Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
блаблабла Я так понимаю, первые строки ты из принципа не читаешь?
если ты имеешь ввиду открыть любую другую общую форму то они открываются.
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник; Вот это закомментируй
+ Ну и ОткрытьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ПараметрыВыполненияКоманды.Источник ,КлючУникальности);
комментарии по этому поводу?
Чего комментировать-то? Управляемая форма не сериализуется.
понятно. еще вопросик: можно получить текст который идет на печать из табл.док моей полученной формы?
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
-
Помогите разобраться. Недавно устроился на работу, а тут иногда возникают чудеса (см ошибку ниже).
После такой ошибки, ссылки в интерфейсе меняют цвет на фиолетовый и «ничего не работает». Местный просто перегружают сервер.
1С:ERP Управление предприятием 2 (2.4.9.98) типовая. Дописывается расширениями. Обновляется регулярно. Сервер слабенький, скоро обещают память и прочее по мелочи. Как бы понять, проблема в радиусе кривизны наших рук или в слабом железе?
—————————————————————-
Ошибка отображения типов:
Отображение лексического значения ‘{http://v8.1c.ru/8.1/data/ui/style}ГруппаВариантовОтчетовЦвет’ в значение типа ‘Цвет’
{ОбщийМодуль.ВариантыОтчетовКлиент.Модуль(127)}: ОткрытьФорму(«ОбщаяФорма.ПанельОтчетов», ФормаПараметры, , ПутьКПодсистеме, ФормаОкно, ФормаСсылка);
{ОбщаяКоманда.ПанельОтчетовПродажи.МодульКоманды(5)}: ВариантыОтчетовКлиент.ПоказатьПанельОтчетов(«Продажи», ПараметрыВыполненияКоманды);по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Значение: {http://v8.1c.ru/8.1/data/ui/style}ГруппаВариантовОтчетовЦвет Тип: {http://v8.1c.ru/8.1/data/ui}Color
по причине:
Ошибка отображения типов:
Отображение лексического значения ‘{http://v8.1c.ru/8.1/data/ui/style}ГруппаВариантовОтчетовЦвет’ в значение типа ‘Цвет’
——————————————————————————— -
Offline
nomad_irk
Гуру в 1С- Регистрация:
- 20 окт 2008
- Сообщения:
- 9.880
- Симпатии:
- 1.028
- Баллы:
- 204
Проблема в радиусе кривизны ваших рук. т.к. вам черным по-русски 1С сообщает, что не так.
Возможно проблема решится, если попросту удалить варианты отчетов, т.к. они не совместимы с текущей структурой отчета СКД, к которому их пытаются применить. -
ок, постараемся определить, что за отчет. Спасибо
14.06.22 — 17:05
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| ЗаказКлиента.КонтактноеЛицо.КонтактнаяИнформация.(
| Представление КАК КонтактноеЛицоПредставление,
| НомерТелефона КАК КонтактноеЛицоНомерТелефона
| ) КАК КонтактноеЛицо
|ИЗ
| Документ.ЗаказКлиента КАК ЗаказКлиента
|ГДЕ
| ЗаказКлиента.Ссылка = &СсылкаНаДокумент
| И ЗаказКлиента.Бит_ос_Адрес = &СсылкаНаДокумент»;
Запрос.УстановитьПараметр(«СсылкаНаДокумент», СсылкаНаДокумент);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи
КонецЦикла;
//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
ОбластьПодвал.Параметры.Телефон = СсылкаНаДокумент.КонтактноеЛицо; >>???
ТабДок.Вывести(ОбластьПодвал);
Подобный запрос
в консоле запросов все выводит:
ВЫБРАТЬ
ЗаказКлиента.КонтактноеЛицо.КонтактнаяИнформация.(
Представление КАК КонтактноеЛицоПредставление
) КАК КонтактноеЛицо,
ЗаказКлиента.КонтактноеЛицо.Представление КАК КонтактноеЛицоПредставление
ИЗ
Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
ЗаказКлиента.Ссылка = &СсылкаНаДокумент
Но я к сожалению не могу правильно обратиться к данным что бы они вывелись на печатную форму
1 — 14.06.22 — 17:06
(0) бедаа….вы сегодня что ли сговорились?
2 — 14.06.22 — 17:06
3 — 14.06.22 — 17:12
К сожалению не нашел по ссылке свою проблему
ОбластьПодвал.Параметры.Телефон = СсылкаНаДокумент.КонтактноеЛицо; >>???
По сути мне только вывод на форму правильный надо сделать….
4 — 14.06.22 — 17:13
УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъекта — не помогает?
5 — 14.06.22 — 17:13
(3) плохо значит смотрели, зачем ТЧ в поля впихнули?
6 — 14.06.22 — 17:14
кто вас так учил запросы делать к ТЧ?
7 — 14.06.22 — 17:15
если есть хоть доля понимания, то по примеру (2) сможете написать запрос к ТЧ и получить нужные данные
8 — 14.06.22 — 17:16
вы должны обратиться к ТЧ КонтактнаяИнформация и выбрать из нее поля. Присоединить эту таблицу к заказу клиента со связью по контактному лицу, а так же указать вид контактной информации.
9 — 14.06.22 — 17:26
Спасибо сейчас попробую… Меня смутило только то что в консоле запросов сработало в таком виде.
10 — 14.06.22 — 17:28
(9) вы же понимаете, что в контактной информации есть и адрес и может быть несколько телефонов и т.д. С чего вы решили, что у вас Представление это именно телефон? Где гарантия, что завтра не заполнять адрес туда?
11 — 14.06.22 — 17:29
там и электронная почта может храниться
12 — 14.06.22 — 17:43
Там телефон и почта. Консоль запросов показала. К сожалению так и не могу вывести телефон хотя бы и по аналогии все остальное вывести…
13 — 14.06.22 — 17:56
Мне бы строчку Вывода на печатную форму, и вопрос закроется. Пока я не могу понять что поправить. не хватает знаний Все остальное я вывел на форму. Осталось только контактную информацию… Телефон и адрес. Или телефон хотя бы
14 — 14.06.22 — 18:03
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| ЗаказКлиента.КонтактноеЛицо.КонтактнаяИнформация.(
| Представление КАК КонтактноеЛицоПредставление,
| НомерТелефона КАК КонтактноеЛицоНомерТелефона,
| Ссылка КАК КонтактноеЛицоСсылка,
| Вид КАК КонтактноеЛицоВид
| ) КАК КонтактноеЛицо,
| ЗаказКлиента.КонтактноеЛицо КАК КонтактноеЛицо1,
| ЗаказКлиента.КонтактноеЛицо.Ссылка КАК КонтактноеЛицоСсылка
|ИЗ
| Документ.ЗаказКлиента КАК ЗаказКлиента
|ГДЕ
| ЗаказКлиента.Ссылка = &СсылкаНаДокумент
| И ЗаказКлиента.КонтактноеЛицо.КонтактнаяИнформация.Представление = &ПредставлениеСсылкаНаДокумент»;
Запрос.УстановитьПараметр(«СсылкаНаДокумент», СсылкаНаДокумент);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи
КонецЦикла;
//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
ОбластьПодвал.Параметры.Телефон = ВыборкаДетальныеЗаписи.;?
ТабДок.Вывести(ОбластьПодвал);
Дальше я не продвинулся
15 — 14.06.22 — 19:06
Эххх Чувствую помощи не будет.
16 — 14.06.22 — 19:15
Вставь точку останова на строку КонецЦикла; и посмотри, что получил с результате. А лучше, сначала в консоли запросов получить нужные данные и вставить в код вывода табличного документа
17 — 14.06.22 — 19:25
(15) нафига тебе многоэтажный запрос? цель какая? Все советуют простыми запросами писать, а ты лепишь и лепишь многоэтажные, многоуровневые.
18 — 14.06.22 — 19:30
(15) пробуй как-то так
«ВЫБРАТЬ
| Представление КАК КонтактноеЛицоПредставление,
| НомерТелефона КАК КонтактноеЛицоНомерТелефона,
| Ссылка КАК КонтактноеЛицоСсылка,
| Вид КАК КонтактноеЛицоВид
| КонтактнаяИнформация.Ссылка КАК КонтактноеЛицоСсылка
|ИЗ
| Справочник.КонтактныеЛица.КонтактнаяИнформация КАК КонтактнаяИнформация
| ГДЕ КонтактнаяИнформация.Ссылка = &КонтактноелицоСсылка
| И КонтактнаяИнформация.Представление = &ПредставлениеСсылкаНаДокумент»
19 — 15.06.22 — 09:54
| КонтактнаяИнформация.Ссылка КАК КонтактноеЛицоСсылка
Эта конструкция не нравится программе
20 — 15.06.22 — 09:55
(19) Плюётся или блюёт?
21 — 15.06.22 — 09:58
Справочник.КонтактныеЛицаПартнеров. — поправил
22 — 15.06.22 — 10:02
(19) там запятая пропущена, добавь.
23 — 15.06.22 — 10:15
Повторяющийся псевдоним все поправил:
| Ссылка КАК КонтактноеЛицоСсылка,
| КонтактнаяИнформация.Ссылка КАК КонтактноеЛицоСсылка
И главное как обратиться по итогу к телефону )
ОбластьПодвал.Параметры.Телефон = ВыборкаДетальныеЗаписи.КонтактноеЛицоСсылка1;
Пример
Чувствую близость победки )
24 — 15.06.22 — 11:01
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| КонтактнаяИнформация.Представление КАК КонтактноеЛицоПредставление,
| КонтактнаяИнформация.НомерТелефона КАК КонтактноеЛицоНомерТелефона,
| КонтактнаяИнформация.Ссылка КАК КонтактноеЛицоСсылка,
| КонтактнаяИнформация.Вид КАК КонтактноеЛицоВид,
| ЗаказКлиента.Ссылка КАК Ссылка
|ИЗ
| Справочник.КонтактныеЛицаПартнеров.КонтактнаяИнформация КАК КонтактнаяИнформация,
| Документ.ЗаказКлиента КАК ЗаказКлиента
|ГДЕ
| КонтактнаяИнформация.Ссылка = &КонтактноелицоСсылка
| И КонтактнаяИнформация.Представление = &ПредставлениеСсылкаНаДокумент
| И ЗаказКлиента.Ссылка = &СсылкаНаДокумент
|
|СГРУППИРОВАТЬ ПО
| КонтактнаяИнформация.НомерТелефона,
| КонтактнаяИнформация.Представление,
| КонтактнаяИнформация.Ссылка,
| КонтактнаяИнформация.Вид,
| ЗаказКлиента.Ссылка»;
Запрос.УстановитьПараметр(«КонтактноелицоСсылка», КонтактноелицоСсылка);
Запрос.УстановитьПараметр(«ПредставлениеСсылкаНаДокумент», ПредставлениеСсылкаНаДокумент);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи
КонецЦикла;
//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
ОбластьПодвал.Параметры.Телефон = ?????????????? В печатную форму не знаю как вывести… Как не кручу результата нет.
ТабДок.Вывести(ОбластьПодвал);
25 — 15.06.22 — 11:02
Финальная версия… Вывести на форму не получается
26 — 15.06.22 — 11:05
(24) где связь таблицы заказов с таблицей контактной информации?
27 — 15.06.22 — 11:06
отладкой пользоваться умеете?
28 — 15.06.22 — 11:10
Немного, данные получаются
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| КонтактнаяИнформация.Представление КАК КонтактноеЛицоПредставление,
| КонтактнаяИнформация.НомерТелефона КАК КонтактноеЛицоНомерТелефона,
| КонтактнаяИнформация.Ссылка КАК КонтактноеЛицоСсылка,
| КонтактнаяИнформация.Вид КАК КонтактноеЛицоВид,
| ЗаказКлиента.Ссылка КАК Ссылка
|ИЗ
| Документ.ЗаказКлиента КАК ЗаказКлиента
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КонтактныеЛицаПартнеров.КонтактнаяИнформация КАК КонтактнаяИнформация
| ПО ЗаказКлиента.Ссылка = КонтактнаяИнформация.Ссылка
|ГДЕ
| КонтактнаяИнформация.Ссылка = &КонтактноелицоСсылка
| И КонтактнаяИнформация.Представление = &ПредставлениеСсылкаНаДокумент
| И ЗаказКлиента.Ссылка = &СсылкаНаДокумент
|
|СГРУППИРОВАТЬ ПО
| КонтактнаяИнформация.НомерТелефона,
| КонтактнаяИнформация.Представление,
| КонтактнаяИнформация.Ссылка,
| КонтактнаяИнформация.Вид,
| ЗаказКлиента.Ссылка»;
Запрос.УстановитьПараметр(«КонтактноелицоСсылка», КонтактноелицоСсылка);
Запрос.УстановитьПараметр(«ПредставлениеСсылкаНаДокумент», ПредставлениеСсылкаНаДокумент);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи
КонецЦикла;
//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
ОбластьПодвал.Параметры.Телефон = ВыборкаДетальныеЗаписи.;
ТабДок.Вывести(ОбластьПодвал);
Правильно связал ?
29 — 15.06.22 — 11:17
(28) Это как вообще? ЗаказКлиента.Ссылка = КонтактнаяИнформация.Ссылка
Слева у вас ЗаказКлиента, а справа КонтактныеЛицаПартнеров. Как вы их умудрились приравнять и какой ждете при этом результат?))
30 — 15.06.22 — 11:21
Почитайте:
https://infostart.ru/1c/articles/1260421/
Обратите внимание на УправлениеКонтактнойИнформацией.КонтактнаяИнформацияОбъектов
31 — 15.06.22 — 11:21
может когда-нибудь до запросов дорастете и сможете сами получать такую информацию)
32 — 15.06.22 — 12:04
(30) Начал изучать. Огромное спасибо за клад (31) Да Как раз включил дебаг. Но пока на старте.
К сожалению не как не могу сложить пазл и вывести результат на форму. Нет понимания как правильно обратиться к данным контактной информации партнеров…
33 — 15.06.22 — 12:10
что конкретно не получается?
34 — 15.06.22 — 12:13
Вывести на печатную форму телефон контактного лица в УТ 11.
35 — 15.06.22 — 12:34
(33) Вывести на печатную форму документа заказКлиента телефон из справочника КонтактныеЛицаПартнеров в в УТ 11.4 Вот собственно и все. Остальные данные худо бедно я вывел.
36 — 15.06.22 — 12:47
Последователь ЛивингСтара )) Как бы секта не образовалась )
37 — 15.06.22 — 12:54
(36) Спам это хорошо Хоть темя в верх поднимается, но толку 0.
38 — 15.06.22 — 12:56
в ут же есть функции для работы с КИ. запросы тут не нужны
39 — 15.06.22 — 13:30
(38) более того, я даже скинул кусок кода и пример в (30)
40 — 15.06.22 — 13:41
(37) тебе ответ ещё в (4) дали, потом в (30). Что ты ещё от нас хочешь?
41 — 15.06.22 — 15:50
Да Пытаюсь сделать по разному. Пока не выходит… Дали пример, но его надо адаптировать под задачу… С 0 пытаюсь сделать по примеру
42 — 15.06.22 — 16:38
ВЫБРАТЬ
ЗаказКлиента.КонтактноеЛицо КАК КонтактноеЛицо,
КонтактныеЛицаПартнеровКонтактнаяИнформация.НомерТелефона КАК НомерТелефона,
КонтактныеЛицаПартнеровКонтактнаяИнформация.Представление КАК Представление
ИЗ
Документ.ЗаказКлиента КАК ЗаказКлиента
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КонтактныеЛицаПартнеров.КонтактнаяИнформация КАК КонтактныеЛицаПартнеровКонтактнаяИнформация
ПО (ЗаказКлиента.КонтактноеЛицо = КонтактныеЛицаПартнеровКонтактнаяИнформация.Ссылка)
ГДЕ
ЗаказКлиента.Ссылка = &Ссылка
И КонтактныеЛицаПартнеровКонтактнаяИнформация.Тип = &Тип
И КонтактныеЛицаПартнеровКонтактнаяИнформация.Вид = &Вид
43 — 16.06.22 — 11:07
(42) Я такой же написал запрос, осталось малое, обратиться к данным и получить результат.
44 — 16.06.22 — 11:20
(43) где в вашем «такой же написал запрос» — отбор по типу и виду контактной информации? Вы не знаете как выполнить запрос и обойти результат запроса?
45 — 16.06.22 — 11:25
Нет, не выводится результат. Пусто что то делаю не так. Хотя данные заполнены. Вывел имя, вывел адрес, вывел почту, а с телефоном что то не то.
46 — 16.06.22 — 11:26
(45) почту как вывел?
47 — 16.06.22 — 11:27
(45) проверяй типы и виды контактной информации
и, да, покажи как выводишь
48 — 16.06.22 — 11:30
//Вывод шапки документа
ОбластьМакета = Макет.ПолучитьОбласть(«Шапка»);
ОбластьМакета.Параметры.ФирмаНаименование = СсылкаНаОбъект.Организация;
ТЗ = киПолучитьТЗПривилегированно(СсылкаНаОбъект.Организация, Перечисления.ТипыКонтактнойИнформации.Адрес, Справочники.ВидыКонтактнойИнформации.АдресЮридический);
Если ТЗ.Количество() > 0 тогда
ОбластьМакета.Параметры.ФирмаАдресЮридический = ТЗ[0].Представление;
КонецЕсли;
ТЗ = киПолучитьТЗПривилегированно(СсылкаНаОбъект.Организация, Перечисления.ТипыКонтактнойИнформации.Адрес, Справочники.ВидыКонтактнойИнформации.АдресФактический);
Если ТЗ.Количество() > 0 тогда
ОбластьМакета.Параметры.ФирмаАдресФактический = ТЗ[0].Представление;
КонецЕсли;
ТЗ = киПолучитьТЗПривилегированно(СсылкаНаОбъект.Организация, Перечисления.ТипыКонтактнойИнформации.Телефон, Справочники.ВидыКонтактнойИнформации.ТелефонКонтактный);
Если ТЗ.Количество() > 0 тогда
ОбластьМакета.Параметры.ФирмаТелефоны = ТЗ[0].Представление;
КонецЕсли;
Функция киПолучитьТЗПривилегированно(Объект, Тип = Неопределено, Вид = Неопределено) Экспорт
УстановитьПривилегированныйРежим(ИСтина);
Запрос = Новый Запрос(«ВЫБРАТЬ
| КонтактнаяИнформация.Объект,
| КонтактнаяИнформация.Тип,
| КонтактнаяИнформация.Вид,
| КонтактнаяИнформация.ЗначениеПоУмолчанию,
| КонтактнаяИнформация.Комментарий,
| КонтактнаяИнформация.Представление
|ИЗ
| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
|ГДЕ
| КонтактнаяИнформация.Объект = &Объект»);
Запрос.УстановитьПараметр(«Объект», Объект);
Если ТипЗнч(Тип) = Тип(«ПеречислениеСсылка.ТипыКонтактнойИнформации») Тогда
ЗАпрос.Текст = Запрос.Текст + »
| И КонтактнаяИнформация.Тип = &Тип»;
Запрос.УстановитьПараметр(«Тип», Тип);
КонецЕсли;
Если ТипЗнч(Вид) = Тип(«СправочникСсылка.ВидыКонтактнойИнформации») Тогда
ЗАпрос.Текст = Запрос.Текст + »
| И КонтактнаяИнформация.Вид = &Вид»;
Запрос.УстановитьПараметр(«Вид», Вид);
КонецЕсли;
РезультатЗапроса = Запрос.Выполнить();
ТЗ = РезультатЗапроса.Выгрузить();
УстановитьПривилегированныйРежим(Ложь);
Возврат ТЗ;
КонецФункции
49 — 17.06.22 — 10:43
(47) По всякому пытаюсь
ОбластьШапка.Параметры.Дата = Формат (СсылкаНаДокумент.Дата, «ДЛФ=DD»);
ОбластьПодвал.Параметры.Телефон = ВыборкаДетальныеЗаписи.КонтактныеЛицаПартнеровКонтактнаяИнформация.Ссылка
;
ОбластьПодвал.Параметры.Партнер = ВыборкаДетальныеЗаписи.КонтактноеЛицо;
ОбластьПодвал.Параметры.Телефон1 = ВыборкаДетальныеЗаписи.НомерТелефона
;
50 — 21.06.22 — 10:07
(47) ОбластьПодвал.Параметры.Телефон =
Есть идеи как вывести правильно ?
51 — 21.06.22 — 11:49
(46) Почту вывел запросом поиск на объект.
Есть пример как вывести телефон ? поиском не получается.
52 — 21.06.22 — 12:04
(51) Электронная почта и телефон у вас хранятся в одном справочнике КонтактныеЛицаПартнеров, в табличной части КонтактнаяИнформация.
Так почему же с почтой у вас всё получилось, а с телефоном проблемы?
Покажите как вывели почту, покажите ваш «запрос поиск на объект».
53 — 21.06.22 — 12:11
(52) Есть идеи как вывести телефон ? В ут 11 на печатную форму, пример ? Я если найдется человек который справится в выводом на печатную форму телефон и все заработает выведу рабочий код, и закрою тему победкой, пока знатока нет… Видно это достаточно не просто. Почта у меня выведена в расширение, метод другой. Телефон в стандартной конфигурации ут 11.4
54 — 21.06.22 — 12:17
(53)
У вас в (12) «Там телефон и почта. Консоль запросов показала.»
А в (53) «Почта у меня выведена в расширение, метод другой».
Уже так толсто, что даже толсто.
55 — 21.06.22 — 12:19
>Видно это достаточно не просто
Да, это задача на спеца по платформе
56 — 21.06.22 — 12:51
(55) Возможно, (54) Согласен много бесполезного текста от разных людей. По существу пишут единицы.
57 — 21.06.22 — 13:40
(42) Ошибка отображения типов:
Отсутствует отображение для типа ‘ПараметрыВыполненияКоманды’
{Документ.ЗаказКлиента.Команда.ПечатьР.МодульКоманды(10)}: Печать (ТабДок, Тип, Вид, СсылкаНаДокумент);
по причине:
Ошибка при вызове серверного метода.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘param’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/managed-application/modules}param
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа ‘ПараметрыВыполненияКоманды’
Твой код выдает такую ошибку, если его вставить в конструктор запроса…
58 — 21.06.22 — 13:51
(48) РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
В UT 11.4 нет такого регистра
59 — 21.06.22 — 14:07
(58) Зато есть вот это (52)
60 — 21.06.22 — 15:55
(59) Почта не в контактной информации у меня, а в заказе клиента реализованно через расширение.
По теме опяить пусто
61 — 21.06.22 — 16:03
(60) Телефон тоже не в контактной информации?
Вам уже даже примерные тексты запросов писали, например в (42)
По теме не пусто, а вполне достаточно. Но вы видимо ждёте, чтобы за вас весь код написали от запроса до вывода, да конкретно под ваш случай.
62 — 21.06.22 — 16:36
(61) 42 мне дает ошибку и дальше двигаться я не могу Но сейчас активно изучаю материал, может наткнусь на вывод на печатную форму телефона, или что то подобное. В конструкторе запросов мне дает ответ телефон. а На печатной форме нет.
63 — 21.06.22 — 16:41
Значит дело не в запросе.
Показывайте весь код.
64 — 21.06.22 — 16:54
(63) https://imageup.ru/img264/3959354/screenshot_11.jpg.html
Вот запрос в консоле и как видно телефон из запроса можно получить
65 — 21.06.22 — 17:26
(64) Во-первых, что за сборная солянка у вас в КонтактноеЛицо1? Там похоже представление всей табличной части, а вам нужен только телефон.
Во-вторых, где код вывода телефона в макет?
66 — 22.06.22 — 13:55
(65) вот кода вывода телефона в макет правильного и нет
67 — 24.06.22 — 13:00
(65) Есть идеи кода запроса к данным контактная информация партнеров, ТЕЛЕФОН ?
68 — 24.06.22 — 13:06
(67) Код запроса уже разбирали. У вас была проблема с выводом в макет. Покажите уже ваш вариант вывода, пусть и неправильный.
69 — 24.06.22 — 13:25
(68) ОбластьПодвал.Параметры.Телефон1 = ВыборкаДетальныеЗаписи.НомерТелефона
;
70 — 24.06.22 — 14:45
(69) Откуда в выборке будет НомерТелефона, если в запросе из (64) у вас такого поля нет? Есть поле КонтактноеЛицо1, в виде представления всей табличной части, где содержится телефон.
Перепишите запрос, чтобы данные выбирались из табличной части.
71 — 07.07.22 — 14:30
(70) Как то я знаю можно через поиск данные запросить…
МимохожийОднако
72 — 07.07.22 — 15:03
(71) Повторюсь. Отладчиком пользоваться научился? Встань на строку с ошибкой и посмотри, что справа присваиваешь и что слева выбрал для присвоения значения.
Классика: Ошибка отображения типов: Отсутствует отображение для типа |
Я |
TrueBuild
26.02.22 — 00:00
Пытаюсь открыть одну форму из другой, передавая туда параметры. В параметрах только ссылки и простые типы, никакие таблицы значений не передаю:
https://disk.yandex.ru/i/bTk0282HaaGC2Q
https://disk.yandex.ru/i/Y2undFzJ11HVSQ
Получаю ошибку:
Ошибка отображения типов:
Отсутствует отображение для типа ‘{http://v8.1c.ru/8.1/data/core}ValueTable’
Не могу понять, что не так?
Причем процедура ПриСозданииНаСервере() открываемой формы отрабатывает без ошибок. Ошибка возникает, когда вызов возвращается в ОткрытьФорму().
Подскажите, что делаю не так, в чем ошибка?
vicof
1 — 26.02.22 — 00:12
А 1ска говорит, что передаешь
МихаилМ
2 — 26.02.22 — 00:15
(0) Почитайте раздел рекомендации правил форума.
TrueBuild
3 — 26.02.22 — 00:34
(1) Поэтому и не понимаю, где ошибка. Вижу, что говорит, но так же вижу и в отладке, что я передаю — см. 2 скриншот, там ТЗ нет, только ссылки и простые типы.
(2) Если вы про поиск, то, естественно, им пользовался, ответа на свой вопрос не нашел.
H A D G E H O G s
4 — 26.02.22 — 00:50
(0) Ты ТаблицуЗначений в каком то из параметров возвращаешь с сервера. Скинь конфигу
TrueBuild
5 — 26.02.22 — 01:14
(4) По завершению процедуры ПриСозданииНаСервере, когда вызов возвращается обратно на клиент, в параметрах так же нет никакой ТЗ, так же только ссылки и простые типы:
https://disk.yandex.ru/i/qezDhmDrPg1Mjg
H A D G E H O G s
6 — 26.02.22 — 02:33
(5) Скинь Cf на liveups@yandex.ru
pechkin
7 — 26.02.22 — 07:30
Тз это не реквизит формы?
МимохожийОднако
8 — 26.02.22 — 07:59
Вместо ТЗ надо передавать массив.
SuperMario
9 — 26.02.22 — 09:11
>> Причем процедура ПриСозданииНаСервере() открываемой формы отрабатывает без ошибок. Ошибка возникает, когда вызов возвращается в ОткрытьФорму()
Значит скрины не актуальны. Вы нас в заблуждение ими вводите.
"Курите" код по всем событиям в открываемой форме , начина с ПриСозданииНаСервере()
SuperMario
10 — 26.02.22 — 09:12
Вы с сервера на клиент в уже откываемой форме что-то универсальное передаете.
TrueBuild
11 — 26.02.22 — 09:31
Всем спасибо, разобрался, проблема оказалась в другом. (5) Вот тут на скрине полностью не видно, но в открываемой форме я создаю ТЗ и пытаюсь передать ее в качестве параметра в динамический список, чего, оказывается делать нельзя.
Ввело в заблуждение то, что исключение вызывалось после вызова ОткрытьФорму(), а само создание формы (ПриСозданииНаСервере) отрабатывало без ошибок.
ДедМорроз
12 — 26.02.22 — 14:24
ТаблицуЗначений передать с сервера на клиента нельзя.
Как ни странно,но создать ТЗ можно в толстом клиенте и с ухищрениями в тонком,а передать нельзя,так как ограничение искуственное.
acht
13 — 26.02.22 — 16:07
(12) > и с ухищрениями в тонком
Веб клиент — достаточно тонкий?
ДедМорроз
14 — 26.02.22 — 19:56
Есть несколько видов клиентов:
Толстый клиент,
Тонкий клиент,
Web-клиент,
Мобильный клиент.
В последних двух никакого намека на таблицу значений,так как ее там никогда не было.
Данная ошибка возникает в тот момент, когда Вы пытаетесь вызвать серверный метод и передаете ему в качестве параметра управляемую форму.
Рассмотрим следующий модуль управляемой формы:
&НаСервере Функция ТестВызоваСервера(Форма) Форма.ТолькоПросмотр = Истина; КонецФункции // ТестВызоваСервера() &НаКлиенте Процедура ПокупательПриИзменении(Элемент) //попытка передачи переменной локального контекста на сервер ТестВызоваСервера(ЭтаФорма); КонецПроцедуры
Дело в том, что в контексте модуля управляемой формы переменная ЭтаФорма
доступна всегда (как на клиенте, так и на сервере) и дополнительно ее передавать не требуется (если только вы не вызываете процедуру или функцию, перед которой указана директива &НаСервереБезКонтекста
). Правильным будет следующий код:
&НаСервере Функция ТестВызоваСервера() ЭтаФорма.ТолькоПросмотр = Истина; КонецФункции // ТестВызоваСервера() &НаКлиенте Процедура ПокупательПриИзменении(Элемент) //вызов контекстной серверной функции ТестВызоваСервера(); КонецПроцедуры
Аналогичное замечание относится к серверным вызовам. Вы не можете передать содержимое переменной ЭтаФорма
на сервер. Вы можете только запросить необходимую информацию на сервере и изменить форму в контексте клиента, либо реализовать это через серверный метод самой формы. Например, такой код работать не будет:
&НаКлиенте Процедура ПокупательПриИзменении(Элемент) //попытка передачи переменной локального контекста на сервер ОбщийМодульСервер.Тест(ЭтаФорма); КонецПроцедуры
Подумайте сами, чем можно заменить такой вызов
Alwarus 0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
||||
1 |
||||
1C 8.x Открытие формы документа с заполнением данных из формы справочника13.07.2016, 22:39. Показов 9309. Ответов 7 Метки нет (Все метки)
Здравствуйте! И есть Документ, созданный на основании реестра сведений создал команду, которая открывает документ из формы справочника
Нужно, чтобы в форму документа передавалось значение Наименование (ФИО) из справочника, форма открывается, а оно не передается. Помогите плз.
__________________ 0 |
Dethmontt Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
||||
13.07.2016, 22:54 |
2 |
|||
Alwarus, почему не передается? Добавлено через 1 минуту
Добавлено через 2 минуты
ПараметрыФормы = Новый Структура(«Наименование», ПараметрКоманды);
ОткрытьФорму(«Документ.ПерсональныеДанные.Форма.Фо рмаДокумента», ПараметрыФормы, Но такой параметр ты должен обработать вручную в процедуре ПриСозданииНаСервере Добавлено через 2 минуты
ПараметрыФормы.Вставить(«ЗначенияЗаполнения», Новый Структура(«Пациент», ПараметрКоманды)); При таком подходе, у реквизита должна стоять галка «Заполнять из данных заполнения» 0 |
0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
|
14.07.2016, 07:41 [ТС] |
3 |
По второму варианту выдает ошибку: {Справочник.Пациент.Форма.ФормаЭлемента1.Форма(83) }: Ошибка при вызове метода контекста (ОткрытьФорму) Наверно и при этом надо создать процедуру ПриСозданииНаСервере. Или ПриОткрытии? 0 |
Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
|
14.07.2016, 11:29 |
4 |
Alwarus, что стоит в Тип параметр команды — в свойствах команды? Добавлено через 3 минуты 0 |
Alwarus 0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
||||
14.07.2016, 13:47 [ТС] |
5 |
|||
Тип команды СправочникСсылка.Пациент Команды формы наверно можно использовать, создал кнопку на форме с командой в модуле объекта:
Выдает такую же ошибку. 0 |
Dethmontt Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
||||
14.07.2016, 14:48 |
6 |
|||
РешениеAlwarus,
Элементы.Наименование; Что это такое? Добавлено через 48 секунд
Добавлено через 3 минуты
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине: Ошибка о чем говорит? Что ты передаешь на сервере Хрень, сервер не знает таких типов как «ПолеФормы» 1 |
0 / 0 / 0 Регистрация: 13.07.2016 Сообщений: 6 |
|
14.07.2016, 21:03 [ТС] |
7 |
1 Заработало, спасибо! И за совет про Элемент тоже…)) Интересно получается, мы создаем структуру с ключом «ЗначенияЗаполнения» и значением, которое получаем созданием еще одной структуры с ключом по справочнику «Пациент» и значением-ссылкой на него, правильно? 0 |
Модератор 3697 / 2897 / 569 Регистрация: 10.03.2011 Сообщений: 11,398 Записей в блоге: 1 |
|
14.07.2016, 21:09 |
8 |
правильно? Совершенно верно Добавлено через 1 минуту
Там же не было ссылки на элементы формы. Параметр может быть чем угодно, его нужно настраивать (может зависеть от группы и т.д.) 0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
14.07.2016, 21:09 |
Помогаю со студенческими работами здесь Открытие формы на добавление записи с автоматическим заполнением связанного поля
Открытие формы на добавления на основе данных из другой формы Очистка данных формы, открытие другой формы
Открытие формыдокумента во фрейме Столкнулся с проблемой, пока не знаю как её разрулить (все в web) 1. Есть… Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 8 |
Сергей
Местный
Сообщений: 8
Баллов: 15
Регистрация: 26.06.2022
#10
0
28.06.2022 13:36:40
&НаКлиенте
Процедура СписокВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
ТекущиеДанные = РаботаСоСпискамиДокументовКлиент.ПолучитьДанныеТекущейСтрокиСписка(
Элементы.Список, Элементы.Список.ТекущаяСтрока);
Если ТекущиеДанные = Неопределено Тогда
Возврат;
КонецЕсли;
Если Поле = Элементы.Файлы Тогда
ОткрыватьЗакладкуФайлы=ПроверкаОткрытияЗаклФайлы(ЭтаФорма)
ПараметрыОткрытия = Новый Структура(«Ключ, ОткрытьЗакладкуФайлы», ТекущиеДанные.Ссылка, ОткрыватьЗакладкуФайлы);
ОткрытьФорму(«Справочник.ВнутренниеДокументы.ФормаОбъекта», ПараметрыОткрытия, Элементы.Список);
Возврат;
КонецЕсли;
Если Поле = Элементы.ПодписанЭП Тогда
ПараметрыОткрытия = Новый Структура(«Ключ, ОткрытьЗакладкуЭП», ТекущиеДанные.Ссылка, Истина);
ОткрытьФорму(«Справочник.ВнутренниеДокументы.ФормаОбъекта», ПараметрыОткрытия, Элементы.Список);
Возврат;
КонецЕсли;
Если Поле = Элементы.Задачи Тогда
ОткрытьФорму(«ОбщаяФорма.ПроцессыИЗадачи»,
Новый Структура(«Предмет», ТекущиеДанные.Ссылка),
ЭтаФорма);
Возврат;
КонецЕсли;
Если Поле = Элементы.ЕстьКатегории Тогда
ПараметрыОткрытия = Новый Структура(«Ключ, ОткрытьЗакладкуКатегории», ТекущиеДанные.Ссылка, Истина);
ОткрытьФорму(«Справочник.ВнутренниеДокументы.ФормаОбъекта», ПараметрыОткрытия, Элементы.Список);
Возврат;
КонецЕсли;
Если Поле = Элементы.СостояниеКонтроля Тогда
КонтрольКлиент.ОбработкаКомандыКонтроль(ТекущиеДанные.Ссылка, ЭтаФорма);
Возврат;
КонецЕсли;
ПараметрыОткрытия = Новый Структура(«Ключ», ТекущиеДанные.Ссылка);
ОткрытьФорму(«Справочник.ВнутренниеДокументы.ФормаОбъекта», ПараметрыОткрытия, Элементы.Список);
КонецПроцедуры
Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’
Описание ошибки:
Ошибка при программировании, конфигурировании кода в 1С 8:
Ошибка отображения типов:
Отсутствует отображение для типа ‘ЭлементСпискаЗначений’
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘v’:
форма: Элемент
имя: {http://v8.1c.ru/8.2/uobjects}v
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства ‘value’:
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}value
Найденные решения:
Нажатие на изображении увеличит его
Возникла при написании кода индивидуальной конфигурации. Но, как оказалось, может подстерегать программиста из-за его невнимательности и при конфигурировании в других конфигурациях. Итак, в чем же причина возникновения данной ошибки. В управляемой форме был создан реквизит типа «СписокЗначений». При открытии формы по коду срабатывает обработчик заполнения этого списка значений. Т.е. в коде создается переменная с помощью конструктора «Новый СписокЗначений», значение которой потом и устанавливается реквизиту формы. Но, перед тем как это происходит, в коде список значений изменяется — в частности выполняется его дополнительная сортировка. Конечно, ошибка «Ошибка отображения типов: Отсутствует отображение для типа ‘ЭлементСпискаЗначений’» может возникнуть у Вас не только в такой ситуации. Сейчас разберемся в чем ее суть.
Как было отмечено в этой частной задаче выполняется сортировка исходного заполненного списка значений. Но, т.к. в этой частной задаче не подходило использование метода «СортироватьПоЗначению(<Направление>)«, т.к. сортировка более сложная (по текстовым данным с разделителями порядка, содержащих разделитель «.», пример: 1.1, 2.2, 2.2.1, 2.2.2, 3.1, 3.2, 3.3.1, 3.3.2). Поэтому сортировка выполнялась программно с созданием новой переменной типа «СписокЗначений» и ее заполнением по данным исходного списка.
После сохранения кода и попытки проверки появилась ошибка, текст которой приведен в начале страницы. Анализ данных через предмет отладки неявно, но показал ошибку.
Нажатие на изображении увеличит его
Не смотря на то, что в методической информации «Синтакс-помощника» 1С 8 указано, что значение элемента списка значений может быть любым (произвольным), все-таки для случая использования в управляемой форме в качестве реквизита накладывается ограничение по типу. И нельзя в значение такого списка значений поместить «ЭлементСискаЗначений» другого списка значений.
Т.е. для моего случая использования списка значений в управляемой форме в качестве реквизита ошибка была в коде, где происходило заполнение значений нового списка по данным исходного при сортировке.
Нажатие на изображении увеличит его
Было выполнено исправление в коде для обращения к значениям и передачи их в качестве значений нового списка значений.
Нажатие на изображении увеличит его
В данном случае значениями списка были значения примитивного тип «Строка», поэтому дальнейшая работа доработанного кода стала возможной. И это все-таки позволило реализовать задачу. Если у Вас будут другие типы, например ссылки, то продумывайте заранее, как будете упорядочить, возможно придется через другие универсальные объекты, например использование таблицы значений, и потом заполнять конечный список значений. Другие примитивные типы не проверялись, но предполагаю, что они так же подойдут для корректной работы в управляемой форме. в качестве значений списка. Поэтому учитывайте это, если столкнетесь с данной ошибкой при Вашем конфигурировании — подбирайте по возможности простой тип для значений списка.
Нажатие на изображении увеличит его
Таким образом на примере данной частной ситуации возникновения ошибки при конфигурировании в 1С 8 «Отсутствует отображение для типа ЭлементСпискаЗначений, по причине, ошибка передачи данных между клиентом и сервером, значение недопустимого типа» извлекаем вывод о том, что нужно быть внимательным и не заполнять значения объекта «Список значений» элементами другого списка значений. А передавать значения элемента списка значений, если одна переменная типа «СписокЗначений» заполняется за счет другой подобной.
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
16-03-2022
Журавлев А.С.
(Сайт azhur-c.ru)
-
Вот программа обработчик
&НаКлиенте
Процедура ТабличнаяЧасть1КоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти=Элементы.ТабличнаяЧасть1.ТекущиеДанные;
//при вызове этой функции появляется ошибка см.в.конце Элементы.ТабличнаяЧасть1.ТекущиеДанные.Сумма=РаботаСДокументами.ВычислениеСуммы(СтрокаТабличнойЧасти);
КонецПроцедурыСерверная часть
&НаСервере
Функция ВычислениеСуммы(Элемент) Экспорт
ЗначениеСуммы=Элемент.Количество*Элемент.Цена;
Сообщить(ЗначениеСуммы);
Возврат ЗначениеСуммы;
КонецФункцииТекст Ошибки:
Ошибка отображения типов:
Отсутствует отображение для типа «ДанныеФормыЭлементКоллекции»Кто знает, что не так пишите. Буду рад.
-
Offline
shurikvz
Модераторы
Команда форума
Модератор- Регистрация:
- 1 окт 2009
- Сообщения:
- 8.547
- Симпатии:
- 344
- Баллы:
- 104
Дело в том, что ТекущуюСтроку из ТЗ нельзя передавать на сервер. (У типа «ДанныеФормыЭлементКоллекции» отсутствует свойство «Возможен обмен с сервером»). Для того чтобы передать строку на сервер ее надо выгрузить в структуру, передать на сервер эту структуру, с этой структурой сделать то что надо, и вернуть ее на клиент, и заполнить из нее ТЧ.
В вашем же конкретном примере — на сервер можно вообще ничего не передавать. Можно ведь все на клиенте выполнить.
-
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
{Обработка.медАРМПриёмкиТовара.Форма.Форма.Форма(1022)}: Ошибка при вызове метода контекста (ОткрытьФорму) ОткрытьФорму("Обработка.медАРМПриёмкиТовара.Форма.ВыборНоменклатуры",ПараметрыФормы,ЭтаФорма,,,, ОбработчикОповещения, Режим); по причине: Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: Запись значения свойства 'cr': форма: Элемент имя: {http://v8.1c.ru/8.2/mngsrv/ws}cr по причине: Ошибка отображения типов: Отсутствует отображение для типа 'ДанныеФормыЭлементКоллекции'
Ребята всё понимаю, но не понимаю какую я ему коллекцию сую? Передаю Структуру.. На что может ругаться?
-
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
-
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
ПараметрыФормы Структура Структура
АдресТоваровВХранилище «e1cib/tempstorage/ed0e045f-6c9a-43b2-a363-086808153749» Строка
ТоварыДокумента «e1cib/tempstorage/61c0f15a-394e-4551-ab4a-4fffd87c3d74» Строка -
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Ничего не понял. Попробуй тоже самое, только вместо своих параметров что-нибудь по-проще типа
«Новый структура(«пар1″,»пар1″)».
Если тут проблем не будет — смотри еще раз свой отбор, может там не просто строки?
Если проблема сохранится — возможно еще в обработчике оповещения что-то. -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
В ПараметрахФормы два значения, оба типа строка.. передаётся адрес на временное хранилище..
В ОбработкеОповещения передается структура в структуре, во внутренней структуре один параметр, тоже адрес типа строка. -
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Ну поэкспериментируй:
1. Убери нафиг свои параметры =)
2. Убери нафиг свой обработчик оповещения =) -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
Самое интересное что падает при завершение процедуры создания.
&НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) // Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест". Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; ДополнительныеКолонкиНоменклатуры = ЗначениеНастроекПовтИсп.ПолучитьЗначениеКонстанты("ДополнительнаяКолонкаПриОтображенииНоменклатуры"); ТаблицаТоваров.Загрузить(ПолучитьИзВременногоХранилища(Параметры.АдресТоваровВХранилище)); СкрытьКолонкуУпаковка = Параметры.СкрытьКолонкуУпаковка; ТоварыДокументов.Загрузить(ПолучитьИзВременногоХранилища(Параметры.ТоварыДокумента)); Если Параметры.Свойство("ПередаватьШтрихкод") Тогда ПередаватьШтрихкод = Параметры.ПередаватьШтрихкод; КонецЕсли; Если Параметры.Свойство("ОтображатьОстатки") Тогда Элементы.ТаблицаТоваровОстаток.Видимость = Истина; КонецЕсли; ЭтотОбъект.ТекущийЭлемент = Элементы.ТаблицаТоваров; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ХарактеристикиДокумента.Характеристика |ПОМЕСТИТЬ ХарактеристикиДокумента |ИЗ | &ХарактеристикиДокумента КАК ХарактеристикиДокумента |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | НайденныеХарактеристики.Характеристика |ПОМЕСТИТЬ НайденныеХарактеристики |ИЗ | &НайденныеХарактеристики КАК НайденныеХарактеристики |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ХарактеристикиДокумента.Характеристика |ИЗ | ХарактеристикиДокумента КАК ХарактеристикиДокумента | ПОЛНОЕ СОЕДИНЕНИЕ НайденныеХарактеристики КАК НайденныеХарактеристики | ПО ХарактеристикиДокумента.Характеристика = НайденныеХарактеристики.Характеристика"; Запрос.Параметры.Вставить("НайденныеХарактеристики",ТаблицаТоваров.Выгрузить()); Запрос.Параметры.Вставить("ХарактеристикиДокумента",ТоварыДокументов.Выгрузить()); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Количество()>0 Тогда Выборка.Следующий(); Характеристика = Выборка.Характеристика; ПараметрыПоиска = Новый Структура; ПараметрыПоиска.Вставить("Характеристика",Характеристика); МассивСтрок = ЭтотОбъект.ТаблицаТоваров.НайтиСтроки(ПараметрыПоиска); ЭтотОбъект.Элементы.ТаблицаТоваров.Текущ1аяСтрока = МассивСтрок[0]; КонецЕсли; КонецПроцедуры
-
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Это в каком случае?
Попробуй просто форму открыть без всего — может она вообще не откроется =) -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
-
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Неужели вот это работает:
ЭтотОбъект.Элементы.ТаблицаТоваров.Текущ1аяСтрока = МассивСтрок[0];
или «1» — это опечатка?
Оставь свои параметры, но убери обработчик оповещения, что будет? -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
Ошибка, уже исправил, сейчас попробую… Но параметр не мой, он был, я просто в него добавил еще одно значение, адрес временного хранилища.
— Объединение сообщений, 22 дек 2015 —
Переписал процедуру ПриСозданииНаСервере
// Пропускаем инициализацию, чтобы гарантировать получение формы при передаче параметра "АвтоТест". Если Параметры.Свойство("АвтоТест") Тогда Возврат; КонецЕсли; ДополнительныеКолонкиНоменклатуры = ЗначениеНастроекПовтИсп.ПолучитьЗначениеКонстанты("ДополнительнаяКолонкаПриОтображенииНоменклатуры"); ТаблицаТоваров.Загрузить(ПолучитьИзВременногоХранилища(Параметры.АдресТоваровВХранилище)); СкрытьКолонкуУпаковка = Параметры.СкрытьКолонкуУпаковка; Если Параметры.Свойство("ПередаватьШтрихкод") Тогда ПередаватьШтрихкод = Параметры.ПередаватьШтрихкод; КонецЕсли; Если Параметры.Свойство("ОтображатьОстатки") Тогда Элементы.ТаблицаТоваровОстаток.Видимость = Истина; КонецЕсли; ЭтотОбъект.ТекущийЭлемент = Элементы.ТаблицаТоваров; Если Параметры.Свойство("ТоварыДокумента") Тогда ТоварыДокументов.Загрузить(ПолучитьИзВременногоХранилища(Параметры.ТоварыДокумента)); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ХарактеристикиДокумента.Характеристика |ПОМЕСТИТЬ ХарактеристикиДокумента |ИЗ | &ХарактеристикиДокумента КАК ХарактеристикиДокумента |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | НайденныеХарактеристики.Характеристика |ПОМЕСТИТЬ НайденныеХарактеристики |ИЗ | &НайденныеХарактеристики КАК НайденныеХарактеристики |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ХарактеристикиДокумента.Характеристика |ИЗ | ХарактеристикиДокумента КАК ХарактеристикиДокумента | ПОЛНОЕ СОЕДИНЕНИЕ НайденныеХарактеристики КАК НайденныеХарактеристики | ПО ХарактеристикиДокумента.Характеристика = НайденныеХарактеристики.Характеристика"; Запрос.Параметры.Вставить("НайденныеХарактеристики",ТаблицаТоваров.Выгрузить()); Запрос.Параметры.Вставить("ХарактеристикиДокумента",ТоварыДокументов.Выгрузить()); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Количество()>0 Тогда Выборка.Следующий(); Характеристика = Выборка.Характеристика; ПараметрыПоиска = Новый Структура; ПараметрыПоиска.Вставить("Характеристика",Характеристика); МассивСтрок = ЭтотОбъект.ТаблицаТоваров.НайтиСтроки(ПараметрыПоиска); ЭтотОбъект.Элементы.ТаблицаТоваров.ТекущаяСтрока = МассивСтрок[0]; КонецЕсли; КонецЕсли;
И закоментировал добавление в структуру ТоварыДокумента.. Работает.. т.е. проблема внутри условия получается?
Мне кажется ему всё таки вот это не нравится ка кто?
ЭтотОбъект.Элементы.ТаблицаТоваров.ТекущаяСтрока = МассивСтрок[0];Последнее редактирование: 22 дек 2015
-
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Если у вас «Элементы.ТаблицаТоваров» — это дин.список, то в тек. строку нужно передать ссылку, а если таблица формы — тогда идентификатор строки.
У вас похоже массивСтрок[0]- это и есть то самое «ДанныеФормыЭлементКоллекции» на которое 1с и орет -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
Респект и уважуха.. да ТаблицаТоваров это таблица формы.. а МассивСтрок это данные коллекции.
Возникает вопрос как получить идентификатор…
Т.е. необходимо следующее.. ТаблицаТоваров это список номенклатуры с характеристиками и есть ТЗ основной формы, где есть характеристика из этой таблицы.. на ней нужно позиционировать при открытии. -
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Значит нужно присвоить идентификатор.
Можно глянуть в синтакс-помощник — там должно быть «ПолучитьИдентификатор»
http://www.forum.mista.ru/topic.php?id=550120 -
Offline
TerANik
Профессионал в 1С- Регистрация:
- 19 ноя 2014
- Сообщения:
- 1.271
- Симпатии:
- 98
- Баллы:
- 54
ЭтотОбъект.Элементы.ТаблицаТоваров.ТекущаяСтрока = МассивСтрок[0].ПолучитьИдентификатор();
Вот «Огонь». -
Offline
Dem0lisher
Профессионал в 1С- Регистрация:
- 4 авг 2009
- Сообщения:
- 1.266
- Симпатии:
- 102
- Баллы:
- 104
Ага! Еще «Огонь» есть — ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений.Вывести();
А у вас можно по-короче наверное: Элементы.ТаблицаТоваров.ТекущаяСтрока = МассивСтрок[0].ПолучитьИдентификатор();
без «ЭтотОбъект»
ести общаяКоманда. при нажатии нужно получить форму для дальнейшей работы. режим кнопки одиночный. Ошибка преобразования данных XDTO: Запись значения свойства ‘val’: форма: Элемент имя: { по причине: Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
тип ПараметрыОткрытия мой документ, то есть ДокументСсылка.
ПараметрыОткрытия — это должна быть структура.
да ну нах. поставил и множественный режим кнопки. тоже самая ошибка.
ой сорри не ПараметрыОткрытия а ПараметрКоманды это ссылка на документ. а ПараметрОткрытия это и ести структура.
чо-то я не вижу тут параметров команды
Владелец формы — форма или элемент управления другой формы.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия); ?
глобальный поиск творит чудеса
указал ключь, без владельца, таже ошибка. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
Так таже самая ошибка. хз. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
ты на сервере что ли форму получаешь?
почему на сервере? директива компиляции общей команды -> НаКлиенте, где я вызываю метод получитьформу;
А зачем тебе _получать_ форму? Ну и — форма точно управляемая?
свойства формы показывает чт оона Управл. мне нужно из формы кое-что достать. если это возможно.
А если через ОткрытьФорму? А если другую форму попробовать? З.Ы. В упр. приложении обычно логика другая — открывается форма, куда передается все необходимое, и она уже дальше сама все делает.
пытаюсь 2-мя методами. в первой передаю мой параметры а вторая вообще говорит что процедура не определена.
ПолучитьОбщуюФорму получает обычную форму, не управляемую. З.Ы. А что у нас в КлючУникальности?
понятно. в Ключь новый Уник.Идентификатор
что я пытаюсь получить: текст печать из макета ТоварныйЧек(он там уже нарисованный) и отправить его на ФР.
Я для кого старался, писал? З.Ы. КлючУникальности = Новый УникальныйИдентификатор, так правильнее
ошибка как в начале ветки. Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
блаблабла Я так понимаю, первые строки ты из принципа не читаешь?
если ты имеешь ввиду открыть любую другую общую форму то они открываются.
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник; Вот это закомментируй
+ Ну и ОткрытьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ПараметрыВыполненияКоманды.Источник ,КлючУникальности);
комментарии по этому поводу?
Чего комментировать-то? Управляемая форма не сериализуется.
понятно. еще вопросик: можно получить текст который идет на печать из табл.док моей полученной формы?
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
В управляемых формах может появиться следующая ошибка:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: НачалоСвойства: param Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType по причине: Ошибка отображения типов: Отсутствует отображение для типа '{http://v8.1c.ru/8.1/data/core}ValueTable'
С данной ошибкой я столкнулся, когда пытался в управляемой форме на стороне сервера выполнить следующую команду:
ОбъектФормы = РеквизитФормыВЗначение("Объект"); ТЗВывода = ОбъектФормы.Бонусы.Выгрузить().Скопировать(); ЗначениеВРеквизитФормы(ОбъектФормы, "Объект");
Решением данной проблемы было обнулить переменную с таблицей данных:
ТЗВывода = Неопределено;
ести общаяКоманда. при нажатии нужно получить форму для дальнейшей работы. режим кнопки одиночный. Ошибка преобразования данных XDTO: Запись значения свойства ‘val’: форма: Элемент имя: { по причине: Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
тип ПараметрыОткрытия мой документ, то есть ДокументСсылка.
ПараметрыОткрытия — это должна быть структура.
да ну нах. поставил и множественный режим кнопки. тоже самая ошибка.
ой сорри не ПараметрыОткрытия а ПараметрКоманды это ссылка на документ. а ПараметрОткрытия это и ести структура.
чо-то я не вижу тут параметров команды
Владелец формы — форма или элемент управления другой формы.
печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия); ?
глобальный поиск творит чудеса
указал ключь, без владельца, таже ошибка. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
Так таже самая ошибка. хз. печФорма = ПолучитьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ,КлючУникальности);
ты на сервере что ли форму получаешь?
почему на сервере? директива компиляции общей команды -> НаКлиенте, где я вызываю метод получитьформу;
А зачем тебе _получать_ форму? Ну и — форма точно управляемая?
свойства формы показывает чт оона Управл. мне нужно из формы кое-что достать. если это возможно.
А если через ОткрытьФорму? А если другую форму попробовать? З.Ы. В упр. приложении обычно логика другая — открывается форма, куда передается все необходимое, и она уже дальше сама все делает.
пытаюсь 2-мя методами. в первой передаю мой параметры а вторая вообще говорит что процедура не определена.
ПолучитьОбщуюФорму получает обычную форму, не управляемую. З.Ы. А что у нас в КлючУникальности?
понятно. в Ключь новый Уник.Идентификатор
что я пытаюсь получить: текст печать из макета ТоварныйЧек(он там уже нарисованный) и отправить его на ФР.
Я для кого старался, писал? З.Ы. КлючУникальности = Новый УникальныйИдентификатор, так правильнее
ошибка как в начале ветки. Ошибка отображения типов: Отсутствует отображение для типа ‘УправляемаяФорма’
блаблабла Я так понимаю, первые строки ты из принципа не читаешь?
если ты имеешь ввиду открыть любую другую общую форму то они открываются.
ПараметрыОткрытия.ПараметрыПечати = ПараметрыВыполненияКоманды.Источник; Вот это закомментируй
+ Ну и ОткрытьФорму(«ОбщаяФорма.ПечатьДокументов», ПараметрыОткрытия, ПараметрыВыполненияКоманды.Источник ,КлючУникальности);
комментарии по этому поводу?
Чего комментировать-то? Управляемая форма не сериализуется.
понятно. еще вопросик: можно получить текст который идет на печать из табл.док моей полученной формы?
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям