Текущее время: Ср, июл 30 2025, 21:44

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:05 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, май 17 2006, 10:11
Сообщения: 52
Откуда: Москва
Пол: Мужской
Нужен Netweaver 7.0 Ehp2 и вперёд - там уже нормальная поддержка BLOB. Правда он ещё не вышел...
И в 7.0 вроде тоже можно BLOB использовать в таблицах?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:21 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 22 2005, 09:51
Сообщения: 208
Пол: Мужской
DaV написал(а):
Если в кратце задача такая, загрузить excel фаил произвольного объема в таблицу базы данных, ИМЕННО в виде ОДНА ТАБЛИЦА ИЗ ФАЙЛА ОДНА СТРОКА В ТАБЛИЦЕ, так что вариант Виктора к спжалению не подходит, думаю может сделать несколько таблиц а потом из них View и записовать уже в нее,как считаете такой вариант возможен?


1. Вот не ведомо мне, как оно нонеча, но вот давеча ограничение было на ввод/вывод в поле 125 символов. Т.е. 255 символов * 256 столбцов (допустим, хотя и у SQL-сервера есть ограничения для таких "длинных" таблиц) впихнуть можно, но вот отобразить их гридом или экранной талбицей будет весьма затруднительно (если, конечно, не вводить дополнительный уровень абстракции типа: "Вот на экране отображаются два поля - это, какбы, одна ячейка данных" :D ).

2. А вот кто сказал, что данные в ячейке будут максимальной длинной 255 символов, а не больше? Встречался я с Ёкселовскими файлами, в которых ячейки содержали целые законодательные опусы, которые надо было грузить в Кормильца.

P.S. А потчему-бы не хранить весь файл в текстовом объекте? Т.е. брать йоксель, его тихонечко потрошить в тескт с разделителями, и сохранять в таком виде, а потом, по требованию, считывать.

_________________
С уважением, В.Ш.
4.6C


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:29 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
DaV написал(а):
а тогда какие есть еще варианты при такой жесткой постановки задачи?

Попробовать кластерные таблицы (а-ля BSEG)?

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:39 
Специалист
Специалист

Зарегистрирован:
Вт, июл 07 2009, 13:24
Сообщения: 235
Пономарев Артем написал:
Безотносительно самой бредовости задачи:
ну адаптируйте вариант Виктор(Минск) на одну строку, сиречь убейте N1256 а вместо Столбец255 используйте табличный тип с типом строки CHAR 255.

UPD: Поправил. Не то поле сначала скопировал под удаление


попробовал вашу идею воплотить в жизнь, получаю ошибки "табельный тип Z_EXCEL_ZEILE не может быть использован в д.б. таблице Z_EXCEL_FILE" в чем тут может быть дело?или такое вазможно только с кластерными таблицами?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:43 
Специалист
Специалист

Зарегистрирован:
Вт, июл 07 2009, 13:24
Сообщения: 235
<em>Виктор(Минск)</em> написал(а):
2. А вот кто сказал, что данные в ячейке будут максимальной длинной 255 символов, а не больше? Встречался я с Ёкселовскими файлами, в которых ячейки содержали целые законодательные опусы, которые надо было грузить в Кормильца.

P.S. А потчему-бы не хранить весь файл в текстовом объекте? Т.е. брать йоксель, его тихонечко потрошить в тескт с разделителями, и сохранять в таком виде, а потом, по требованию, считывать.
DaV написал(а):
Если в кратце задача такая, загрузить excel фаил произвольного объема в таблицу базы данных, ИМЕННО в виде ОДНА ТАБЛИЦА ИЗ ФАЙЛА ОДНА СТРОКА В ТАБЛИЦЕ, так что вариант Виктора к спжалению не подходит, думаю может сделать несколько таблиц а потом из них View и записовать уже в нее,как считаете такой вариант возможен?


1. Вот не ведомо мне, как оно нонеча, но вот давеча ограничение было на ввод/вывод в поле 125 символов. Т.е. 255 символов * 256 столбцов (допустим, хотя и у SQL-сервера есть ограничения для таких "длинных" таблиц) впихнуть можно, но вот отобразить их гридом или экранной талбицей будет весьма затруднительно (если, конечно, не вводить дополнительный уровень абстракции типа: "Вот на экране отображаются два поля - это, какбы, одна ячейка данных" :D ).

2. А вот кто сказал, что данные в ячейке будут максимальной длинной 255 символов, а не больше? Встречался я с Ёкселовскими файлами, в которых ячейки содержали целые законодательные опусы, которые надо было грузить в Кормильца.

P.S. А потчему-бы не хранить весь файл в текстовом объекте? Т.е. брать йоксель, его тихонечко потрошить в тескт с разделителями, и сохранять в таком виде, а потом, по требованию, считывать.


Все верно на счет длтны ячейки, но вроде заказчик гарантирует что длина не бедет превосходить 255 символов (вариант с текстовым файлом был отклонен заказчиком категорично)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 14:57 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Можно попробовать сделать Database View.
Создать 24 таблицы (ZTABLE1 - ZTABLE24) с полями
TABNAME - ключ
FIELD1
...
FIELD12

Ограничение на максимальное количество JOIN и длину полей в каждой таблице не будет превышено.

_________________
С уважением, VGA
Мой блог


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 15:02 
Модератор
Модератор
Аватара пользователя

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
DaV написал(а):
попробовал вашу идею воплотить в жизнь, получаю ошибки "табельный тип Z_EXCEL_ZEILE не может быть использован в д.б. таблице Z_EXCEL_FILE" в чем тут может быть дело?

Это я забыл что САП не позволяет использовать вложенные таблицы в таблицах. Только в структурах/типах.
Так что такой вариант не пройдет.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 15:11 
Специалист
Специалист

Зарегистрирован:
Вт, июл 07 2009, 13:24
Сообщения: 235
vga написал(а):
Можно попробовать сделать Database View.
Создать 24 таблицы (ZTABLE1 - ZTABLE24) с полями
TABNAME - ключ
FIELD1
...
FIELD12

Ограничение на максимальное количество JOIN и длину полей в каждой таблице не будет превышено.


Я такой вариант уже предлогал

sy-uname написал(а):
DaV писал(а):
Так что вы думаете стоит пробовать с View заморачиваться или пустой номер

пустой номер
DaV написал(а):
Так что вы думаете стоит пробовать с View заморачиваться или пустой номер

пустой номер

, но он был отвергнут, как вы думаете может получиться или остается только один вариант кластерные таблицы?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 15:34 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
кластерная этажем выше


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 15:54 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
DaV написал(а):
Я такой вариант уже предлогал


Попробуйте, может и получится в вашей системе.

_________________
С уважением, VGA
Мой блог


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 17:37 
Специалист
Специалист

Зарегистрирован:
Вт, июл 07 2009, 13:24
Сообщения: 235
trop написал(а):
кластерная этажем выше


А кластерные таблицы (илипуловские) можно самим разве создавать?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 19:15 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
DaV написал(а):
trop написал(а):
кластерная этажем выше


А кластерные таблицы (илипуловские) можно самим разве создавать?

Запросто :)
Создаете таблицу как прозрачную, потом переходите в SE11 в меню Дополнительная информация->Изменить вид таблицы

На вкладке Поставка и ведение появится доп. поле - имя пула/кластера.
Надо указать его. Но перед этим создать: SE11 меню Утилиты->Другие объектв словаря, там создать пул/кластер, который должен содержать поля
(пул)
Code:
TABNAME        CHAR      10 - ключ
VARKEY         CHAR      50 - ключ
DATALN         INT2       5
VARDATA        RAW      100


а кластер должен содержать немного другие поля... смотрите, короче, стандартные пулы и кластеры и читайте справку по пулам и кластерам.
У кластера ключ формируется пересечением ключей всех таблиц кластера, например так (ключи таблиц должны иметь общую часть)
Code:
MANDT          CLNT       3 - ключ
WERKS          CHAR       4 - ключ
PAGENO         INT2       5
TIMESTMP       CHAR      46
PAGELG         INT2       5
VARDATA        RAW     3800

а для пула таблиц ключ - это поле VARKEY и в пул могут входить совершенно разные таблицы.

Надеюсь, подробно все описал


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 19:35 
Специалист
Специалист

Зарегистрирован:
Вт, июл 07 2009, 13:24
Сообщения: 235
Art386 написал:
Надеюсь, подробно все описал

Спасибо все понятно, читал справку и документацию просто там написано что они разрабатываются только SAP и там еше есть одно что меня насторажило, что касаемо типов данных которые должны использоваться для них,

A table pool or table cluster should be used exclusively for storing internal control information
(screen sequences, program parameters, temporary data, continuous texts such as
documentation). All data of commercial relevance is stored exclusively in transparent tables!

наверное из-за того что хоть данное ни где и не прописано, но есть также ограничение на длину строки таблицы (4030) а такие данные как описано выше должны использоваться в силу их относительно малых размеров.
Буду очень рад если не прав. Если кому-то точно известно что такого ограничения нет сообщите.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 21:14 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Есть еще вариант, который описан в хелпе на команду EXPORT TO DATABASE. По идее там сохранять можно без ограничений. Только вот искать не по ключу в такой таблице не получится.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Создание таблыцы Б.Д. со строкой большой длины
СообщениеДобавлено: Вт, сен 08 2009, 22:28 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
DaV написал(а):
Parazit написал:
...И всё таки, это еще не конечная задача, а средство ее достижения. А конечная цель какая? Зачем эти таблицы?

нет конечная задача, для варианта который предложил Виктор уже существует стандартный функционал, Заказчик хочет именно такую таблицу одно строка из файла одна строка в таблице, и поскольку платит именно он, то приходится стараться выполнить его требования, если он стоит на своем и есть хоть малейшая возможность сделать то что он хочет.

Кхм... Уточним вопрос.
Заказчик, во всяком случае конечный, не может хотеть таблицу. Он может хотеть некую функциональность, которая решала бы какие то задачи. Например, он может хотеть бухгалтерский учет, чтобы формировать стандартную отчетность, и т.д.
Какую функциональность хочет построить таким образом ваш, видимо промежуточный, заказчик?

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 36 ]  На страницу Пред.  1, 2, 3  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB