Текущее время: Пн, июл 21 2025, 15:27

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Можно ли создать таблицу в ABAP-словаре программно?
СообщениеДобавлено: Пн, авг 29 2005, 14:16 
Гость
Можно ли создать таблицу в ABAP-словаре с помощью своей программы, или нельзя? Я не знаю, может быть и пакетным вводом можно сделать, но не хотелось бы с помощью него. :twisted:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, авг 29 2005, 14:31 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Ты уверен что без этого никак?
Если уверен - то вот например ФМ DB_CREATE_TABLE, ну или execsql.
Но я бы на твоем месте еще раз подумал, надо ли оно :)

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Можно ли создать таблицу в ABAP-словаре программно?
СообщениеДобавлено: Пн, авг 29 2005, 16:58 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, авг 27 2004, 09:10
Сообщения: 614
Откуда: Moscow
Yuriy_O написал(а):
Можно ли создать таблицу в ABAP-словаре с помощью своей программы, или нельзя? Я не знаю, может быть и пакетным вводом можно сделать, но не хотелось бы с помощью него. :twisted:

А чем Вас не устраивают стандартные средства для этих целей? :shock:

_________________
по прозвищу Тосманский Дьявол


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Можно ли создать таблицу в ABAP-словаре программно?
СообщениеДобавлено: Вт, авг 30 2005, 09:03 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
Yuriy_O написал(а):
Можно ли создать таблицу в ABAP-словаре с помощью своей программы, или нельзя? Я не знаю, может быть и пакетным вводом можно сделать, но не хотелось бы с помощью него. :twisted:

abap-словарь это тоже таблица, точнее набор,
но я бы не стал

_________________
полный SAPец


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 31 2005, 14:31 
Гость
Спасибо за подсказку. Но вопрос был о ABAP-словаре. С помощью функции db_create_table я создал таблицу в базе данных, но просмотреть её через SE11 не могу, select сделать тоже не могу. Наверное можно с ней работать с помощью exec sql, но я хотел бы создать таблицу, которая была бы определена в ABAP-словаре.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, авг 31 2005, 14:42 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Прислушайтесь к советам - в системе достаточно много возможностей динамической генерации переменных. Не надо это... не оптимально, не красиво и просто не правильно :?

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 01 2005, 08:26 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
Добрый день!

Не подумал бы, что данный вопрос станет затруднительным.

ФМ DDIF_TABL_PUT - однозначно то, что Вам нужно.

8) 8) 8)

_________________
Волю в кулак, мышцы в узду, работай себе и не ахай!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, сен 01 2005, 09:03 
Гость
Да! ФМ DDIF_TABL_PUT - то, что мне нужно!. Спасибо всем за участие, db_create table или create table в exec sql тоже выход из ситуации, но DDIF_TABL_PUT - то, что я искал.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 02 2005, 10:22 
Гость
Не, а всё-таки интересно для каких целей необходимо динамическое создание таблицы в ABAP-словаре? :roll:


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 02 2005, 11:25 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июн 22 2005, 09:51
Сообщения: 208
Пол: Мужской
На мой мутный взгляд возможны два случая:
1. Некий генератор, который на входе имеет файл-модель, на основании которого генерится нека программная система с БД. Или свой аналог SE11.
2. В программе заложена инопланетная логика. Программа, согласно этой логике, плодит таблицы в БД с именем zy_table_######, где ###### - дата, номер отдела и еще что.

Если первое, на мой взгляд, имеет право на жизнь, то второе "убивать надо, пока они маленькие"(с)
:roll:

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 02 2005, 14:43 
Гость
Ваш мутный взгляд оказался верным по пункту 1 первое предложение.
для переносимости программы.


Пометить тему как нерешенную
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, сен 03 2005, 21:57 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 21 2004, 17:54
Сообщения: 67
помнится я как-то в молодости написал набор программ (что-то сам написал, что-то уже было) для переноса ну всего - от самой программы с инклудами, экранами, текстами, статусами - вплоть до таблиц/структур/элементов данных/доменов, ну и всего чего там надо....
выгрузка/загрузка через текстовые файлы.
правда разрозненное все - поленился дальше развивать.
но правда есть в придачу программка, которая выгружает список наименований нужных объектов системы в отдельный файл - для передачи в вышеупомянутые программки.
даже когда-то в форуме предлагал всем желающим.....

но вообще-то проще все это хранить в транспортах... :)
либо не всегда есть доступ к ентим самым транспортам ( :D ), либо не умеем их выгружать/загружать.....


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, сен 03 2005, 22:00 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, сен 21 2004, 17:54
Сообщения: 67
помнится я как-то в молодости написал набор программ (что-то сам написал, что-то уже было) для переноса ну всего - от самой программы с инклудами, экранами, текстами, статусами - вплоть до таблиц/структур/элементов данных/доменов, ну и всего чего там надо....
выгрузка/загрузка через текстовые файлы.
правда разрозненное все - поленился дальше развивать.
но правда есть в придачу программка, которая выгружает список наименований нужных объектов системы в отдельный файл - для передачи в вышеупомянутые программки.
даже когда-то в форуме предлагал всем желающим.....

но вообще-то проще все это хранить в транспортах... :)
либо не всегда есть доступ к ентим самым транспортам ( :D ), либо не умеем их выгружать/загружать.....


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:   Тема решена
СообщениеДобавлено: Вт, дек 05 2006, 13:30 
Ассистент
Ассистент

Зарегистрирован:
Ср, окт 25 2006, 23:58
Сообщения: 45
Откуда: Москва
Тема уже старая, но так на всякий случай кто будет спрашивать ...

Делается примерно так ... Можно также через RPY_TABLE_INSERT но импортируемые набор данных там все таки не полный (нельзя передать ключи и индексы таблицы к примеру).

Цитата:
REPORT ZDIA_DTD.

DATA:
lc_tgttab TYPE ddobjname,

ls_object TYPE rsdeo,
lc_tabtext TYPE string,
ls_tabhead TYPE dd02v,
ltb_tabfld TYPE TABLE OF dd03p WITH HEADER LINE,
ls_techset TYPE dd09v,

lc_srctab TYPE dfies-tabname,
ltb_flddef TYPE TABLE OF dfies WITH HEADER LINE,
ltb_scrdat TYPE TABLE OF bdcdata WITH HEADER LINE.

START-OF-SELECTION.

lc_srctab = 'SFLIGHT'.
lc_tgttab = 'ZDIA_SFLIGHT'.


ls_object-objtype = 'TABL'.
ls_object-objname = lc_tgttab.
ls_tabhead-tabname = lc_tgttab.
ls_tabhead-tabclass = 'TRANSP'.
ls_tabhead-ddlanguage = sy-langu.
ls_tabhead-langdep = sy-langu.
ls_tabhead-ddtext = 'This is a test structure'.
ls_tabhead-as4user = sy-uname.
ls_tabhead-as4date = sy-datum.
ls_tabhead-as4time = sy-uzeit.
ls_tabhead-buffered = ' '.
ls_tabhead-contflag = 'A'.

ls_techset-tabname = lc_tgttab.
ls_techset-as4user = sy-uname.
ls_techset-as4date = sy-datum.
ls_techset-as4time = sy-uzeit.
ls_techset-tabart = 'APPL0'.
ls_techset-tabkat = '1'.
ls_techset-bufallow = 'N'.
ls_techset-as4local = 'N'.

CALL FUNCTION 'GET_FIELDTAB'
EXPORTING
TABNAME = lc_srctab
LANGU = sy-langu
TABLES
fieldtab = ltb_flddef
EXCEPTIONS
INTERNAL_ERROR = 1
NO_TEXTS_FOUND = 2
TABLE_HAS_NO_FIELDS = 3
TABLE_NOT_ACTIV = 4.

LOOP AT ltb_flddef.
MOVE-CORRESPONDING ltb_flddef TO ltb_tabfld.
ltb_tabfld-tabname = lc_tgttab.
APPEND ltb_tabfld.
ENDLOOP.

CALL FUNCTION 'RS_CORR_INSERT'
EXPORTING
DEVCLASS = '$TMP'
KORRNUM = ' '
OBJECT = ls_object
OBJECT_CLASS = 'DICT'
SUPPRESS_DIALOG = 'X'
EXCEPTIONS
CANCELLED = 1
PERMISSION_FAILURE = 2
UNKNOWN_OBJECTCLASS = 3.

CALL FUNCTION 'RS_TREE_OBJECT_PLACEMENT'
EXPORTING
OBJECT = lc_tgttab
DEVCLASS = '$TMP'
OPERATION = 'INSERT'
TYPE = 'TABL'
AUTHOR = sy-uname.

IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CALL FUNCTION 'DDIF_TABL_PUT'
EXPORTING
NAME = lc_tgttab
DD02V_WA = ls_tabhead
DD09L_WA = ls_techset
TABLES
DD03P_TAB = ltb_tabfld
EXCEPTIONS
TABL_NOT_FOUND = 1
NAME_INCONSISTENT = 2
TABL_INCONSISTENT = 3
PUT_FAILURE = 4
PUT_REFUSED = 5
OTHERS = 6.

IF SY-SUBRC <> 0.
WRITE 'FALSE'.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CALL FUNCTION 'DDIF_TABT_ACTIVATE'
EXPORTING
NAME = lc_tgttab
EXCEPTIONS
NOT_FOUND = 1
PUT_FAILURE = 2
OTHERS = 3.

IF SY-SUBRC <> 0.
WRITE 'FALSE'.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CALL FUNCTION 'DDIF_TABL_ACTIVATE'
EXPORTING
NAME = lc_tgttab
EXCEPTIONS
NOT_FOUND = 1
PUT_FAILURE = 2
OTHERS = 3.

IF SY-SUBRC <> 0.
WRITE 'FALSE'.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
[/quote]


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: re
СообщениеДобавлено: Вт, дек 05 2006, 18:06 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, сен 23 2005, 11:11
Сообщения: 963
кстати о воронах,
нужен формат бинарника к запросу, может есть у кого


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

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


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

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


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

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