Добрый день, друзья,
никак не пойму в чем ошибка, можете помочь ?
Ошибка отображения типов:
Отсутствует отображение для типа '{http://v8.1c.ru/8.1/data/core}ValueTable'
ВыгрузитьНаСервере(ДополнительныеДанные);
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: param Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: Value Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа '{http://v8.1c.ru/8.1/data/core}ValueTable'
Показать
вот сам код
&НаСервере
Процедура ВыгрузитьНаСервере(Структура)
Структура.Вставить("Таблица",Таблица.Выгрузить());
МодульОбъекта = РеквизитФормыВЗначение("Объект");
Хранилище = новый ХранилищеЗначения(Структура,новый СжатиеДанных(9));
Ответ = МодульОбъекта.ПолучениеДанных("Обмен", Хранилище);
Сообщить(Ответ); ///до сюда все работает, обмен работает, дальше ошибка
КонецПроцедуры
&НаКлиенте
Процедура Прочитать(Команда)
Результат = "";
МассивВыгружаемыхСсылок = ПолучитьМассивВыгружаемыхСсылок();
сч = 0;
Для каждого Ссылка из МассивВыгружаемыхСсылок цикл
Таблица.Очистить();
форма = ПолучитьФорму("Документ.БольничныйЛист.ФормаОбъекта",новый Структура("Ключ", Ссылка));
ТаблицаДокумента = форма.Объект.Состав;
Для каждого строка из ТаблицаДокумента цикл
м = Таблица.Добавить();
м.ФИО = строка.ФизическоеЛицо;
м.ИНН = строка.ИНН;
КонецЦикла;
Если Таблица.Количество() = 0 тогда
Продолжить;
КонецЕсли;
ДополнительныеДанные = новый Структура; ДополнительныеДанные.Вставить("Период",форма.Объект.ПериодРегистрации);
ДополнительныеДанные.Вставить("Дата",форма.Объект.Дата);
ВыгрузитьНаСервере(ДополнительныеДанные); ///Ошибка после выполнения кода на сервере
КонецЦикла;
КонецПроцедуры
4.
Nikifforoff96
24.01.20 11:32 Сейчас в теме+0.18 $m
(1) Ты передаёшь с клиента на сервер структуру, на сервере вставляешь в эту структуру Таблицу значений.
Когда исполнение кода в процедуре на сервере заканчивается твои "ДополнительныеДанные" (структура) изменённая на сервере возвращается на клиент. Но в эту структуру уже добавлена таблица значения, а она передаваться с клиента на сервер не может. Вот и ошибка.
4.
Nikifforoff96
24.01.20 11:32 Сейчас в теме+0.18 $m
(1) Ты передаёшь с клиента на сервер структуру, на сервере вставляешь в эту структуру Таблицу значений.
Когда исполнение кода в процедуре на сервере заканчивается твои "ДополнительныеДанные" (структура) изменённая на сервере возвращается на клиент. Но в эту структуру уже добавлена таблица значения, а она передаваться с клиента на сервер не может. Вот и ошибка.
(13) Попробовал так же, ошибка не ушла. Правда я заметил, что у меня наименование параметра совпадает на клиенте и на сервере. Сейчас попробую еще на сервере наименование поменять.
(15) Ругается на строку "ПараметрыФормыНастроек.Вставить("ТекущиеДанные",дпз_ПолучитьСтруктуруКолонокДокументыКИмпорту(ДанныеТекущейОперации));
"
&НаКлиенте
Процедура дпз_Подключаемый_Правило_ПередНачаломИзменения(Элемент, Отказ)
Если Элементы.ДокументыКИмпорту.ТекущийЭлемент=Неопределено Тогда
Возврат;
КонецЕсли;
Если Элементы.ДокументыКИмпорту.ТекущийЭлемент.Имя="КолонкаПравило" Тогда
Отказ = Истина;
ПараметрыФормыНастроек = Новый Структура;
ТекущиеДанные = Элементы.ДокументыКИмпорту.ТекущиеДанные;
ДанныеТекущейОперации = Новый Структура;
ДанныеТекущейОперации.Вставить("ИдентификаторВыписки",ТекущиеДанные.ИдентификаторВыписки);
ДанныеТекущейОперации.Вставить("ИдентификаторОперации",ТекущиеДанные.ИдентификаторОперации);
ПараметрыФормыНастроек.Вставить("ТекущиеДанные",дпз_ПолучитьСтруктуруКолонокДокументыКИмпорту(ДанныеТекущейОперации));
ЗаполнитьЗначенияСвойств(ПараметрыФормыНастроек.ТекущиеДанные,ТекущиеДанные);
ОткрытьФорму("Обработка.Дпз_КлиентБанкНастройки.Форма.ФормаПравилЗагрузки", ПараметрыФормыНастроек, ЭтаФорма, УникальныйИдентификатор);
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция дпз_ПолучитьСтруктуруКолонокДокументыКИмпорту(Знач Структура)
СтруктураКолонок = Новый Структура;
РеквизитыДокументыКИмпорту = ЭтаФорма.ПолучитьРеквизиты("ДокументыКИмпорту");
Для каждого РеквизитДокументыКИмпорту Из РеквизитыДокументыКИмпорту Цикл
СтруктураКолонок.Вставить(РеквизитДокументыКИмпорту.Имя);
КонецЦикла;
дпз_ДополнитьСтруктуруКолонокРаспознаннымиДаннымиИзБанка(СтруктураКолонок, Структура);
Возврат СтруктураКолонок;
КонецФункции
&НаСервере
Процедура дпз_ДополнитьСтруктуруКолонокРаспознаннымиДаннымиИзБанка(СтруктураКолонок, Структура, РаспознанныеДанныеИзБанка=Неопределено)
Если РаспознанныеДанныеИзБанка=Неопределено И ЭтоАдресВременногоХранилища(АдресХранилищаРаспознанныеДанныеИзБанка) Тогда
РаспознанныеДанныеИзБанка = ПолучитьИзВременногоХранилища(АдресХранилищаРаспознанныеДанныеИзБанка);
КонецЕсли;
Если ТипЗнч(РаспознанныеДанныеИзБанка)<>Тип("Структура") Тогда
Возврат;
КонецЕсли;
Для Каждого КлючИЗначение Из РаспознанныеДанныеИзБанка.Выписки Цикл
ИдентификаторВыписки = КлючИЗначение.Ключ;
Выписка = КлючИЗначение.Значение;
РаспознаннаяВыписка = РаспознанныеДанныеИзБанка.РаспознанныеВыписки[ИдентификаторВыписки];
Если РаспознаннаяВыписка = Неопределено Тогда
Продолжить;
КонецЕсли;
Если НЕ ИдентификаторВыписки=Структура.ИдентификаторВыписки Тогда
Продолжить;
КонецЕсли;
ПредупреждениеНеНайденБанковскийСчет = РаспознаннаяВыписка.Предупреждения.Найти("БанковскийСчетНеНайден", "КодПроблемы");
Если НЕ ПредупреждениеНеНайденБанковскийСчет=Неопределено Тогда
Продолжить;
КонецЕсли;
Для Каждого Операция Из Выписка.Операции Цикл
ИдентификаторОперации = Операция.Идентификатор;
Если НЕ ИдентификаторОперации=Структура.ИдентификаторОперации Тогда
Продолжить;
КонецЕсли;
ЗначенияОперации = Дпз_ОбработкаВыписки.ПолучитьЗначенияОперации(РаспознанныеДанныеИзБанка,Выписка.Операции,Операция);
Для Каждого ТекКолонка Из ЗначенияОперации Цикл
Если НЕ СтруктураКолонок.Свойство(ТекКолонка.Ключ) Тогда
СтруктураКолонок.Вставить(ТекКолонка.Ключ,ТекКолонка.Значение);
КонецЕсли;
КонецЦикла;
Прервать;
КонецЦикла;
КонецЦикла;
КонецПроцедуры
Ошибка отображения типов:
Отсутствует отображение для типа 'ОписаниеОповещения'
{Документ.ЧекККМ.Форма.ФормаДокумента.Форма(6663)}: РезультатОбработки = ОбработатьВводШтрихкода(ИсходныеДанные, Неопределено, ПараметрыСканирования);
{ОбщийМодуль.ШтрихкодированиеИСРТКлиент.Модуль(159)}: СтруктураДанныхШтрихкода(Штрихкод, Количество));
{mngbase/InputCommon2.lf(5)}: Close(1);
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'v':
форма: Элемент
имя: {http://v8.1c.ru/8.2/uobjects}v
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'Value':
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}Value
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'ОписаниеОповещения'
после обновления 1с помогите решить вопрос
(9) Ошибка передачи параметра с клиента на сервер. В структуре ПараметрыСканирования где-то затесалось значение типа ОписаниеОповещения. Посмотрите значение ПараметрыСканирования в отладке, чтобы понять где именно сидит ОписаниеОповещения.
(16) Посмотри отладкой что в итоговой структуре обратно отправляется:
&НаСервере
Функция дпз_ПолучитьСтруктуруКолонокДокументыКИмпорту(Знач Структура)
СтруктураКолонок = Новый Структура;
РеквизитыДокументыКИмпорту = ЭтаФорма.ПолучитьРеквизиты("ДокументыКИмпорту");
Для каждого РеквизитДокументыКИмпорту Из РеквизитыДокументыКИмпорту Цикл
СтруктураКолонок.Вставить(РеквизитДокументыКИмпорту.Имя);
КонецЦикла;
дпз_ДополнитьСтруктуруКолонокРаспознаннымиДаннымиИзБанка(СтруктураКолонок, Структура);
Возврат СтруктураКолонок; ///Здесь
КонецФункции
(17) Структура с данными. Вообще предыстория такая, ошибка возникает в обработке КлиентБанк, в окне загрузки выписок из банка из текстового файла, ставишь галочку на "Настройка правил", переходишь к нужной строке, нажимаешь на поле "Правила", должна открываться форма настроек правил. Форма настроек и высланный мною код реализованы в расширении. До обновления конфигурации БП КОРП все работало, недавно обновил конфигурацию, появилась эта ошибка. На копии до обновления все работает.