SeiOkami / OneS

Предложения по улучшению платформы
49 stars 3 forks source link

Объединенная ячейка и таблица значений построителем отчетов #218

Open 7OH opened 1 year ago

7OH commented 1 year ago

Дано - файл XLS, который нужно загрузить в 1С. В файле имеются объединенные вертикально ячейки (файл прилагается) - "№ ТТН". ИменаЛистов.xls

Файл считывается через табличный документ ТабДокумент= Новый ТабличныйДокумент; ТабДокумент.Прочитать(ИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);

И далее через построитель отчета получаем таблицу значений `Функция ПреобразоватьТабличныйДокументВТаблицуЗначений(ТабДокумент)

ОбластьЯчеек        = ТабДокумент.Область(1, 1, ТабДокумент.ВысотаТаблицы, ТабДокумент.ШиринаТаблицы);
ИсточникДанных  = Новый ОписаниеИсточникаДанных(ОбластьЯчеек);
ПостроительОтчета   = Новый ПостроительОтчета;
ПостроительОтчета.ИсточникДанных = ИсточникДанных;
ПостроительОтчета.Выполнить();

Результат = ПостроительОтчета.Результат.Выгрузить();

Возврат Результат;

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

На момент возврата таблицы видим, что в табличном документе в нужной ячейке присутствует искомое значение "681". А вот в результате - только "6". Попытка манипуляции типом колонки к нужному результату не приводит. изображение

Если читать документ без указания СпособЧтенияЗначенийТабличногоДокумента - то указанного поведения не наблюдается, но при этом теряется возможность получать готовые даты и числа, отформатированные в диковинные форматы.

Приложил обработку. ЗагрузкаXLS.zip Выбираем как загружать - текстом или значениями. Выбираем приложенный ранее файл - смотрим результат изображение В случае значений - "номер ТН и "вес итого" - обрезаны. В случае текста - дату восстановить невозможно.

Проверялось на версиях платформы: 8.3.21.1622 и 8.3.23.1688

tormozit commented 1 year ago

Нужна внешняя обработка и описание где ее запускать и что в ней нажимать. Также нужно сделать вывод результата в окно сообщений, чтобы минимизировать количество действий для проверки проблемы. Файл XLS должен разворачиваться и загружаться из макета внешней обработки. Отдельно он тоже нужен.

7OH commented 1 year ago

ЗагрузкаXLS.zip Приложил обработку. Выбираем как загружать - текстом или значениями. Выбираем приложенный ранее файл - смотрим результат изображение В случае значений - "номер ТН и "вес итого" - обрезаны. В случае текста - дату восстановить невозможно.

tormozit commented 1 year ago

Нужно сделать ОДНО описание без размазывания на куски, чтобы я просто скопировал текст и вставил в письмо. Используй команду "Edit" для дополнения первого сообщения. Еще нужно указать полную версию платформы.

7OH commented 1 year ago

Добавил всё в первое сообщение. Версии, на которых проверялось тоже указал.

fixinchik commented 1 year ago

Когда у меня возникла подобная проблема, я написал функцию считывания макета в ТЗ. Все эти построители - баловство, часто пользователи косячат с форматом и это надо обрабатывать кодом.

tormozit commented 1 year ago

Отправил в 1С https://www.hostedredmine.com/issues/964731