powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Excel -> CSV программно
25 сообщений из 46, страница 1 из 2
Excel -> CSV программно
    #39118693
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго дня!

Создаю стотысячную тему на тему преобразования XLS в CSV, т.к. в предыдущих ответа не нашла.
Написала красивую и хорошую процедуру загрузки данных из CSV в таблицы Оракла, которая запускается из Апекса, за основу брала вот этот пример: http://avdeo.com/2008/05/21/uploading-excel-sheet-using-oracle-application-express-apex/ В коде твердо зашит разделитель, использующийся в csv.
Все хорошо, но файлы будут загружаться пользователями. Можно, конечно, попросить их конвертировать xls в csv, но настройки разделителя у всех свои.

- Можно ли как-то вытащить эти настройки в Апексе, чтобы передавать в процедуру как параметр?
- Можно ли как-то вытащить данные из сохраненного в blob файла xls?
- Как и на чем написать утилитку, которая будет при загрузке файла преобразовывать его в csv с заданным разделителем? И как ее запустить из Апекса?

Мне наиболее вероятным кажется последний вариант. Возможно, есть еще какие-то выходы? Подскажите, пожалуйста.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118715
Vladml
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Парсить ХLS задача не тривиальная :)

У меня (правда не на APEX) хорошо зарекомендовал себя способ копирования и вставки из буфера обмена. Excel делает разделитель между колонками, символ табуляции кажется, остальное дело техники.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118719
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetil,
только CSV либо Java.
Первое загоняйте в таблу и парсите там как угодно
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118904
Фотография Алексей Выхрыстюк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для пользователей более понятен загрузчик через стандартный Data load методом копировать с excel и вставить.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118943
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Выхрыстюк,
Не понял слово Копировать.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118962
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vladml,
а как засунуть файл в буфер обмена?

Petro123,
сейчас так и делаю, но чтобы парсить, нужно точно знать, какой разделитель пришел в пользовательском файле CSV. Можно это как-то выяснить? Или можно программно заменить разделители в пришедшем файле?
А что можно сделать на Яве?

Алексей Выхрыстюк,
тоже не поняла, можно поподробнее?
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118964
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Turingvetil,
Цель грузить xls в апекс?
Есть плагин, который грузит любой XLS(X) в коллекции (Памятник нужно поставить этому человеку, он на низком уровне разбирает файлы).
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118982
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
blkangel,
о, вот это было бы здорово!! Поделитесь?
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118985
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetil,
Понимаете, вы программист, и не нужно брать на себя всё многообразие форматов в мире.
Ограниченный разброс в организации всегда можно проверить парсингом одной строки.
Подсказать код поиска символа в varchar2 ?
Напишите справку выше кнопки загрузки в свертывающемся регионе. И не ломайте голову.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118986
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39118988
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetil,
Работайте в паре с бизнес аналитиком, который даст вам 2, 3 формата.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119008
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,
насчет бизнес-аналитика совет очень ценный, но трудновыполнимый) А насчет парсинга первой строки можно подумать, кстати. Т.е. найти самый часто встречающийся небуквенный символ? В принципе вариант, но все равно немножко "гадание" получается.

blkangel,
огромное спасибо! Изучу код, мне кажется, это то что нужно!
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119014
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TuringvetilА что можно сделать на Яве?
кинетесь изучать?
"не делайте этого - мы вас потеряем. Оттуда не возвращаются" (с)
))
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119019
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetilнасчет бизнес-аналитика совет очень ценный, но трудновыполнимый)
=== его работу всё равно делаете вы - ограничиваете модель данных и формат входа.
А насчет парсинга первой строки можно подумать, кстати. Т.е. найти самый часто встречающийся небуквенный символ? В принципе вариант, но все равно немножко "гадание" получается.
ТЗ
- вверху регион Справка с текстом:
"Входной формат ограничен разделителями пробел и тире. Очерёдность колонок: Код, ДатаРождения, рост, ФИО ...."
- в первой строке функции проверка на валидность подфункция IsValidFormat с выдачей райзе.
- ...
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119020
blkangel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Turingvetilblkangel,
огромное спасибо! Изучу код, мне кажется, это то что нужно!

Если будете использовать, обратите внимание на нагрузку на сервер, скорость работы приложения у других пользователей. Поделитесь впечатлениями. Спасибо
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119031
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,
а, ну если ограничения поставить... Все-таки хотелось бы погибче как-то. "," и ";" в качестве разделителей не подойдут, т.к. часто встречаются в данных, и вряд ли пользователи по моему требованию полезут в виндовые настройки менять разделитель на какие-нибудь звездочки-галочки-табуляции... Оставлю этот вариант на крайний случай, но все-таки хотелось бы найти более удобный (для пользователей) способ.

blkangel,
обязательно!=)
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119049
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TuringvetilВсе-таки хотелось бы погибче как-то.
угу. Это у вас от отсутствия опыта
- как будете отличать ID в колонке от роста в см.?
- как будете объединённые ячейки расцеплять?
- и т.д. и т.п
ЗЫ
Откуда файлы? Поставьте им тоже систему за деньги) LOL
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119050
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetil"," и ";" в качестве разделителей не подойдут, т.к. часто встречаются в данных
пример формата сюда в форум.
Не нобелевскую решаете.
Удачи!
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119059
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetilв виндовые настройки
упс. Забыл про формат от японцев и китайцев
))) Вроде не пятница
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119061
heavyside
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetil,

Если плагин не прокатит, то имхо java. Библиотек, я думаю, много, мне нравится Apache POI. Java, зато никаких конвертаций в CSV. Хотя может для чтения есть что-то попроще.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119063
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
heavysideApache POI+1
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119498
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123TuringvetilВсе-таки хотелось бы погибче как-то.
угу. Это у вас от отсутствия опыта
- как будете отличать ID в колонке от роста в см.?
- как будете объединённые ячейки расцеплять?
- и т.д. и т.п

Ну не настолько гибко) Ячейки, конечно, должны быть в приличном виде, и названия колонок правильные. А вот порядок и состав колонок неважен, это все собирается динамически, главное чтобы ключевые были.
Но мы отвлеклись, сейчас не об этом.

Да, похоже, без Явы не обойтись. Плагин ставиться не желает, пишет: "Bad Request. The HTTP client sent a request that this server could not understand." Возможно, это из-за того, что у нас 5-ый Апекс? Слышала, на нем многие плагины от 4-го не работают.
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119524
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TuringvetilА вот порядок и состав колонок неважен
а как вы отличите рост от айдишников?
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119540
Turingvetil
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123TuringvetilА вот порядок и состав колонок неважен
а как вы отличите рост от айдишников?
По шапке
...
Рейтинг: 0 / 0
Excel -> CSV программно
    #39119541
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turingvetilдолжны быть в приличном виде, и названия колонок правильные
извините, но это женская логика).
Это и есть ограничение формата.
Удачи Вам!
...
Рейтинг: 0 / 0
25 сообщений из 46, страница 1 из 2
Форумы / Oracle APEX [игнор отключен] [закрыт для гостей] / Excel -> CSV программно
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]