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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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