Текущее время: Чт, июл 24 2025, 05:28

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 27 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Tabstrip и всё что с ним связано
СообщениеДобавлено: Ср, ноя 07 2007, 13:11 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
Всем доброго время суток.
Очень хороший форум, уже много полезного здесь нашёл.
Я сейчас обучая работу с АБАПом и у меня есть конкретная задание и я не знаю с чего мне начать.

У меня есть экран с таблицей (ALV Grid ). Где стоjт только название и описание. Все остальные поля этой таблице
должны быть отображенны в Tabstrip , который находится чуть ниже таблицы. Во второй закладке этого Табстрипа находятся дополнительная информация,но это закладка должна быть активированна только когда одно из полей таблице заполненно. Иначе этой закладке не видно.
Но вот вроде и описал задачу.

С выводом в ALVе я вроде разобрался, а вот с Tabstrip никак не могу.
Может кто-нибудь поможет или пример покажет, в каком направлении мне надо двигаться.
Заранее благадарю


Последний раз редактировалось 007matrix Вт, ноя 13 2007, 16:54, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 13:15 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Транзакция BIBS, там есть примеры, в частности, и tabstrip.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 13:33 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
A есть примеры, как залажить Табстрип на экран. Я при помоши Wizard нарисовал в Screen Painter Табстрип с двумя закладками. НО как теперь закинуть информацию туда я не знаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 13:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
Да, какой-то я неудачный пример привёл.
Вот посмотрите лучше программы DEMO_DYNPRO_TABSTRIP_LOCAL и DEMO_DYNPRO_TABSTRIP_SERVER. Тут ничего лишнего.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 14:08 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
ВОТ :oops:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 18:15 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
Спасибо, разобрался я табстрипом. Было совсем не сложно, как казалось в начале :oops:

Теперь у меня есть маленький вопрос.
Что лучше ALV или Table Control?
У меня в таблице много данных не будет. Мне просто надо отображать информацию в табе выбранной строки в таблице. Изменять эти данные (как и в табе, так и в таблице), ну и конечно же добовлять новые данные


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 18:44 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
Если в вводимых данных будут присутствовать длинные тексты, то я бы посоветовал использовать table control. Как-то столкнулся с проблемой невозможности ввода в ячейку редактируемого ALV кириллицы больше чем сколько-то знаков, сейчас не помню, что-то около 60-70. А заказчик очень хотел туда руками вводить поэмы. Пришлось в горячке на экранные таблицы менять.

Хотя возможно это была просто горячка...

ЗЫ: сейчас в собственных разработках стараюсь (по-возможности если время позволяет) делать и так, и так - с предоставлением конечного выбора пользователю. Заказчик все тот же...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 18:59 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
Значит в обоих случаях возможно сделать всё, что мне надо !?
Не могли бы мне подсказать, как в Table Control ловить выбранную строку


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 07 2007, 19:01 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Ср, ноя 03 2004, 14:51
Сообщения: 1912
Откуда: КраснАдар
Пол: Мужской
007matrix написал(а):
Не могли бы мне подсказать, как в Table Control ловить выбранную строку

GET CURSOR... + F1 :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 13:43 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
John Doe написал:
007matrix написал(а):
Не могли бы мне подсказать, как в Table Control ловить выбранную строку

GET CURSOR... + F1 :)


Наверное имелась ввиду + F2 или?

А как можно спрятать одну из закладок? Пробывал с invisible , но ничего не выходит или пишу, что не правильно или просто две левых руки :D


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 13:53 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
007matrix написал(а):
Наверное имелась ввиду + F2 или?

А как можно спрятать одну из закладок? Пробывал с invisible , но ничего не выходит или пишу, что не правильно или просто две левых руки :D

Имелось в виду F1 на ключевом слове в ABAP-редакторе, т.е. keyword documentation.

Закладки по сути те же самые кнопки. Прятать их можно так же в LOOP AT SCREEN.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 14:01 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
007matrix написал(а):
А как можно спрятать одну из закладок? Пробывал с invisible , но ничего не выходит или пишу, что не правильно или просто две левых руки :D

Вот так должно работать:
Code:
********************
*PBO LOGIC               *
********************
LOOP AT SCREEN.
    IF flg_click = space.
      IF screen-group1 = 'DIS'.
        screen-invisible = 1.
      ENDIF.
    ELSE.
      IF screen-group1 = 'DIS'.
        screen-invisible = 0.
      ENDIF.
    ENDIF.
    MODIFY SCREEN.
  ENDLOOP.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 14:24 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
ROKO написал:
Code:
********************
*PBO LOGIC               *
********************
LOOP AT SCREEN.
    IF flg_click = space.
      IF screen-group1 = 'DIS'.
        screen-invisible = 1.
      ENDIF.
    ELSE.
      IF screen-group1 = 'DIS'.
        screen-invisible = 0.
      ENDIF.
    ENDIF.
    MODIFY SCREEN.
  ENDLOOP.


Извиняюсь за такие вопросы, но просто ничего не получается.
В PBO какого экрана мне это надо вставить. У меня на первом экране таблица и табстрип с двумя закладками. Эти закладки имеют свои подэкраны. Вот одну из них мне надо по возможности спрятать.
<я не знать русский языка> этот код вставить в главный ПБО и получил ошибку "Screen" не является Таблицей Базы данных


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 14:37 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
007matrix написал(а):
<я не знать русский языка> этот код вставить в главный ПБО и получил ошибку "Screen" не является Таблицей Базы данных

Потому что не нужно использовать OPEN SQL. Это внутренняя таблица, причём особенная и использовать её можно только так, как написал ROKO.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 08 2007, 15:54 
Ассистент
Ассистент

Зарегистрирован:
Ср, ноя 07 2007, 13:05
Сообщения: 30
Всем спасибо за ответы.

Честно говоря, не знаю где я использую Open SQL
вот так у меня выглядит логика
Code:

PROCESS BEFORE OUTPUT.

  MODULE pbo.
  LOOP WITH CONTROL tc_top.
    MODULE tc_fill_top.
  ENDLOOP.
 
CALL SUBSCREEN: sub1 INCLUDING sy-repid '0101',
                 sub2 INCLUDING sy-repid '0102'.

PROCESS AFTER INPUT.

  CALL SUBSCREEN: sub1,
                sub2.

  LOOP WITH CONTROL tc_top.
  ENDLOOP.

  MODULE pai.

и вот sub2 должна быть спрятана, пока не будет значения поля к примеру Test = 'x' .

Буду очень признателен за помощь


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

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


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

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


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

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