| 4zakaza | Дата: Ср, 29.03.2023, 01:14:53 | Сообщение # 1 |
|
Рядовой
Группа: Пользователи
Сообщений: 11
Репутация: 12
Статус: Оффлайн
| Добрый день! Загрузка табличных данных. Ошибка при заполнении таблицы ввод начальных остатков. Легкая, без падений. Лечится снятием галки где выбор колонок БД с Единицы измерения. Ну как лечится, единицы измерения на экспорт не могу поймать, столбец "искать по" не активен в этой строке, собственно, замена кода на штуки тоже не помогает как-то. Что я делаю не так?
Платформа: 8.3.20.2184 Режим БД: клиент-серверный Конфигурация. Название: Управление нашей фирмой, редакция 3.0 (3.0.2.193) Конфигурация. Основной режим запуска: Управляемое приложение Конфигурация. Вариант встроенного языка: Русский Конфигурация. Режим управления блокировкой данных: Управляемый Конфигурация. Режим совместимости: Версия8_3_17 Конфигурация. Режим использования синхронных вызовов: Использовать Конфигурация. Версия БСП: 301 Конфигурация. Использовать обычные формы в управляемом приложении: Нет Инструменты разработчика. Версия: Расширение 6.69.2e Инструменты разработчика. Инструмент: Загрузка табличных данных Инструменты разработчика. Перехват клавиатурного ввода: Да Инструменты разработчика. Объекты на сервере: Да Инструменты разработчика. Асинхронность запрещена: Нет Инструменты разработчика. Разрешены имитаторы: Да Расширения. Доработка () Расширения. ИнструментыРазработчикаTormozit (6.69.2e) Клиент. Приложение: Управляемое приложение 32б Клиент. Проверка модальных вызовов: Нет Клиент. Язык интерфейса конфигурации: ru Клиент. Язык интерфейса системы: ru Клиент. Отладка разрешена: Нет Клиент. Постоянный кэш метаданных: Да Клиент. ОС: Microsoft Windows Server 2012 R2 Standard 64-разрядная Русский Клиент. ОС от имени администратора: Нет Клиент. ОС Клиент. ОС выполнение BAT: Нет Клиент. ОС пинг сервера: ?мс Сервер. ОС: Майкрософт Windows Server 2016 Standard 64-разрядная Русский Сервер. Процесс: 64б Сервер. Отладка: нет
Цитата Значение не является значением объектного типа (СодержитТип) {ИнструментыРазработчикаTormozit Обработка.ирЗагрузкаТабличныхДанных.МодульОбъекта(1891)}:Если ПеречисленияВсеТипы.СодержитТип(ТипРеквизита) Тогда {ИнструментыРазработчикаTormozit Обработка.ирЗагрузкаТабличныхДанных.МодульОбъекта(1790)}:Для каждого СтрокаСопоставления Из ПомеченныеКолонки Цикл Если Ложь Или Этап = 1 И СтрокаСопоставления.Зависимая Или Этап = 2 И Не СтрокаСопоставления.Зависимая Тогда Продолжить; КонецЕсли; ОбластьЯчейки = Неопределено; РезультатЯчейки = Неопределено; НомерКолонкиДокумента = 0; Примечание = ""; СтандартнаяОбработка = Истина; ТекстЯчейки = ""; Если ЗначениеЗаполнено(СтрокаСопоставления.ИмяКолонкиИсточника) Тогда НомерКолонкиДокумента = Число(СтрокаСопоставления.ИмяКолонкиИсточника); ОбластьЯчейки = ЯчейкиСтроки[НомерКолонкиДокумента]; ТекстЯчейки = ТекстыЯчеек[НомерКолонкиДокумента]; КонецЕсли; Если Ложь Тогда ОбластьЯчейки = Новый ТабличныйДокумент; ОбластьЯчейки = ОбластьЯчейки.Область(); КонецЕсли; ОригинальныйТекстЯчейки = ТекстЯчейки; РезультатЯчейки = СтрокаСопоставления.Значение; Если ЗначениеЗаполнено(СтрокаСопоставления.Алгоритм) Тогда Попытка АлгоритмОбъект = ирОбщий.ДесериализоватьАлгоритмОбъектЛкс(СтрокаСопоставления.Алгоритм); Если Ложь Тогда АлгоритмОбъект = Обработки.ирИмитаторАлгоритмОбъект.Создать(); КонецЕсли; Исключение ВызватьИсключение "Ошибка десериализации алгоритма вычисления значения колонки " + СтрокаСопоставления.ИмяКолонкиПриемника + ": " + ОписаниеОшибки(); КонецПопытки; ВнутренниеПараметры = АлгоритмОбъект.Параметры.Выгрузить(); АлгоритмОбъект.Параметры.Загрузить(мАлгоритмКонвертацииЗначенияПараметры); ирОбщий.ЗагрузитьВТаблицуЗначенийЛкс(ВнутренниеПараметры, АлгоритмОбъект.Параметры); Вычисление = ВычислитьЗначениеЯчейки(АлгоритмОбъект, РезультатыЯчеек, ТекстЯчейки, ТекстыЯчеек, РезультатЯчейки, Примечание, СтандартнаяОбработка); РезультатЯчейки = Вычисление.Результат; Примечание = Вычисление.ОписаниеОшибки; ТекстЯчейки = Вычисление.ТекстЯчейки; СтандартнаяОбработка = Вычисление.СтандартнаяОбработка; КонецЕсли; Если Истина И СтандартнаяОбработка И СтрокаСопоставления.РежимКонвертации = "ИзИсточника" И СтрокаСопоставления.Значение = РезультатЯчейки И ЗначениеЗаполнено(СтрокаСопоставления.ИмяКолонкиИсточника) Тогда Если СтрокаСопоставления.ОбрезатьКрайниеПробелы Тогда ТекстЯчейки = СокрЛП(ТекстЯчейки); КонецЕсли; Примечание = ""; Если Не СтрокаСопоставления.ИгнорироватьРасшифровку Тогда Расшифровка = ОбластьЯчейки.Расшифровка; КонецЕсли; Если Истина И Расшифровка <> Неопределено И ТипЗнч(Расшифровка) <> Тип("Неопределено") И ТипЗнч(Расшифровка) <> Тип("Строка") И ТипЗнч(Расшифровка) <> Тип("ИдентификаторРасшифровкиКомпоновкиДанных") И СтрокаСопоставления.ОписаниеТипов.СодержитТип(ТипЗнч(Расшифровка)) Тогда РезультатЯчейки = Расшифровка; Если РезультатЯчейки <> СтрокаСопоставления.ОписаниеТипов.ПривестиЗначение(РезультатЯчейки) Тогда Примечание = "Расшифровка ячейки вне границ типа"; КонецЕсли; ИначеЕсли ПустаяСтрока(ТекстЯчейки) Тогда РезультатЯчейки = Неопределено; Иначе НайденныеЗначения = ПолучитьВозможныеЗначения(СтрокаСопоставления, ТекстЯчейки, Примечание, РезультатыЯчеек, РазрешитьСозданиеОбъектов, КэшПоиска); Если НайденныеЗначения.Количество() = 0 Тогда Примечание = "Не найден" + ?(Примечание = "", "", Символы.ПС+Примечание); РезультатЯчейки = Неопределено; ИначеЕсли НайденныеЗначения.Количество() = 1 Тогда РезультатЯчейки = НайденныеЗначения[0]; Иначе Примечание = "Неоднозначное (" + НайденныеЗначения.Количество() + " вариантов) представление" +?(Примечание = "","", Символы.ПС+Примечание); Нашли = Ложь; НашлиЗначениеПоУмолчанию = Ложь; Расшифровка = ОбластьЯчейки.Расшифровка; Для каждого НайденноеЗначение Из НайденныеЗначения Цикл Если НайденноеЗначение = Расшифровка Тогда Нашли = Истина; Прервать; КонецЕсли; Если НайденноеЗначение = СтрокаСопоставления.Значение Тогда НашлиЗначениеПоУмолчанию = Истина; КонецЕсли; КонецЦикла; Если Не Нашли Тогда Если НашлиЗначениеПоУмолчанию Тогда НайденноеЗначение = СтрокаСопоставления.Значение; Иначе НайденноеЗначение = НайденныеЗначения[0]; КонецЕсли; КонецЕсли; РезультатЯчейки = НайденноеЗначение; Если Не СтрокаСопоставления.ОписаниеТипов.СодержитТип(ТипЗнч(Расшифровка)) Тогда ОбластьЯчейки.Расшифровка = Новый СписокЗначений; ОбластьЯчейки.Расшифровка.Добавить(НайденноеЗначение); КонецЕсли; КонецЕсли; КонецЕсли; Если НЕ ЗначениеЗаполнено(РезультатЯчейки) Тогда РезультатЯчейки = СтрокаСопоставления.Значение; КонецЕсли; Если ДобавлятьСырыеДанныеВТЗ Тогда РезультатыЯчеек.Вставить(СтрокаСопоставления.ИмяКолонкиПриемника + мСуффиксСырыхДанных, ОригинальныйТекстЯчейки); КонецЕсли; КонецЕсли; Если ЗначениеЗаполнено(Примечание) Тогда КоличествоОшибок = КоличествоОшибок + 1; Если ВыводитьОшибкиКонвертацииСразу Тогда ПредставлениеКраткое = ирОбщий.ПредставлениеЗначенияСОграничениемДлиныЛкс(ОригинальныйТекстЯчейки, 50); ирОбщий.СообщитьЛкс("Ячейка["+ОбластьЯчейки.Имя+"->"+СтрокаСопоставления.СинонимКолонкиПриемника+"](" + ПредставлениеКраткое + "): " + Примечание, СтатусСообщения.Внимание); КонецЕсли; Если РазрешитьСозданиеОбъектов И ЗначениеЗаполнено(СтрокаСопоставления.ИмяКолонкиИсточника) Тогда СтрокаОшибки = ОшибкиКонвертации.Добавить(); СтрокаОшибки.КолонкаИсточника = СтрокаСопоставления.ИмяКолонкиИсточника; СтрокаОшибки.Ошибка = Примечание; СтрокаОшибки.ТекстЯчейки = ОригинальныйТекстЯчейки; СтрокаОшибки.Количество = 1; КонецЕсли; КонецЕсли; РезультатыЯчеек.Вставить(СтрокаСопоставления.ИмяКолонкиПриемника, РезультатЯчейки); Если Истина И ОбластьЯчейки <> Неопределено И (Ложь Или ОбластьЯчейки.СодержитЗначение Или ЗначениеЗаполнено(Примечание)) Тогда ОбластьЯчейки.Примечание.Текст = Примечание; ОбластьЯчейки.СодержитЗначение = ЗначениеЗаполнено(Примечание); КонецЕсли; КонецЦикла; {ИнструментыРазработчикаTormozit Обработка.ирЗагрузкаТабличныхДанных.МодульОбъекта(514)}:РезультатыЯчеек = КонвертироватьСтрокуТД(ТабличныйДокумент, НомерСтроки, , КоличествоОшибокКонвертации, Истина, КэшПоиска); {(1)}:Обработка.КонвертироватьДанные(ПараметрыЗадания) {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(21463)}:Результат = Вычислить("Обработка." + ИмяМетодаОбработки + "(ПараметрыЗадания)"); {ИнструментыРазработчикаTormozit Обработка.ирЗагрузкаТабличныхДанных.Форма.Форма.Форма(362)}:ирОбщий.ВыполнитьЗаданиеФормыЛкс("КонвертироватьДанные", ПараметрыЗадания, ЭтаФорма, "КонвертацияЗначений",,
|
| |
| |
| tormozit | Дата: Ср, 29.03.2023, 07:39:46 | Сообщение # 2 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
| Найди выше от места ошибки фрагмент Код Если ОписаниеКолонки.СодержитСсылки Тогда ПеречисленияВсеТипы = Перечисления.ТипВсеСсылки(); ДокументыВсеТипы = Документы.ТипВсеСсылки(); КонецЕсли;
И удали условие, оставив внутренность.
|
| |
| |
| tormozit | Дата: Ср, 29.03.2023, 08:19:11 | Сообщение # 3 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
| Ошибку воспроизвел https://www.hostedredmine.com/issues/961255
|
| |
| |
| tormozit | Дата: Ср, 29.03.2023, 08:21:25 | Сообщение # 4 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
| Не забывай создавать новую тему при описании проблемы. В теме http://devtool1c.ucoz.ru/forum/2-2-1 описывать проблемы не следует.
|
| |
| |
| 4zakaza | Дата: Чт, 30.03.2023, 14:14:26 | Сообщение # 5 |
|
Рядовой
Группа: Пользователи
Сообщений: 11
Репутация: 12
Статус: Оффлайн
| А я смотрю, что-то новая тема не создалась, сайт что ли сглючил, а не, это я протупил
|
| |
| |
| tormozit | Дата: Вс, 02.04.2023, 17:55:33 | Сообщение # 6 |
|
Генералиссимус
Группа: Администраторы
Сообщений: 7259
Репутация: 193
Статус: Оффлайн
| Исправлено в 6.70
|
| |
| |