Текущее время: Сб, июн 21 2025, 09:51

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




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Пт, авг 12 2011, 19:43 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
Допустим существует цепочка, которая состоит из 1 ппд и 1 активации дсо. как получить код запроса, который ляжет в дсо зная id прогона цепочки?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Пн, авг 15 2011, 09:55 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
,fk,tc написал:
Допустим существует цепочка, которая состоит из 1 ппд и 1 активации дсо. как получить код запроса, который ляжет в дсо зная id прогона цепочки?

Code:
*&---------------------------------------------------------------------*
*& Report  Z_FIND_REQUEST
*&
*&---------------------------------------------------------------------*
*
REPORT  z_find_request.
*
PARAMETERS p_pc TYPE rspc_chain.
*
DATA: BEGIN OF ls_dtp,
      dtp TYPE rsbkdtpnm,
      END OF ls_dtp,
      lt_dtp LIKE TABLE OF ls_dtp,
      BEGIN OF ls_tgt,
      tgt TYPE rsbktgtnm,
      END OF ls_tgt,
      lt_tgt LIKE TABLE OF ls_tgt,
      BEGIN OF ls_rnr,
      rnsidlast TYPE rssid,
      rnr TYPE rsrequnr,
      tabname TYPE rsstatmandta,
      END OF ls_rnr,
     lt_rnr LIKE TABLE OF ls_rnr.
*
DATA: l_alv      TYPE REF TO   cl_gui_alv_grid,
      ok_code TYPE sy-ucomm.
*
START-OF-SELECTION.
*
  SELECT dtp FROM rsbkdtpstat INTO
  TABLE lt_dtp
   WHERE actualchain = p_pc.
*
  IF NOT lt_dtp IS INITIAL.
    SELECT tgt FROM rsbkdtp INTO
    TABLE lt_tgt
    FOR ALL ENTRIES IN lt_dtp
    WHERE dtp = lt_dtp-dtp.
*
    IF NOT lt_tgt IS INITIAL.
      SELECT rnsidlast  rnr tabname FROM rsreqicods
      INTO TABLE lt_rnr
      FOR ALL ENTRIES IN lt_tgt
      WHERE tabname = lt_tgt-tgt
      AND   typ = 'I'.
    ENDIF.
  ENDIF.
*
END-OF-SELECTION.
*
  IF lt_rnr IS INITIAL.
    MESSAGE i733(5a) DISPLAY LIKE 'E'.
    EXIT.
  ENDIF.
*
  CALL SCREEN 100.
*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'PC100'.
  SET TITLEBAR 'PC100'.
  CREATE OBJECT l_alv
    EXPORTING
      i_parent = cl_gui_container=>screen0.
*
  CALL METHOD l_alv->set_table_for_first_display
    EXPORTING
      i_structure_name = 'ZRNR'
    CHANGING
      it_outtab        = lt_rnr.
ENDMODULE.                 " STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  CASE ok_code.
    WHEN 'EXIT' OR 'BACK' OR 'END'.
      LEAVE TO SCREEN 0.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0100  INPUT


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Пн, авг 15 2011, 12:54 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
to ROKO: это способ получить список всех запросов данных, которые лежат во всех провайдерах участвующих в цепочке. а как определить какие их них относятся к конкретному id прогона цепочки?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Вт, авг 16 2011, 08:16 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
,fk,tc написал:
to ROKO: это способ получить список всех запросов данных, которые лежат во всех провайдерах участвующих в цепочке. а как определить какие их них относятся к конкретному id прогона цепочки?

Code:
*&---------------------------------------------------------------------*
*& Report  Z_FIND_REQUEST#2
*&
*&---------------------------------------------------------------------*
*
REPORT  z_find_request#2.
*
PARAMETERS p_log_id TYPE rspc_logid.
*
DATA: BEGIN OF ls_rqt,
      instance TYPE rspc_instance,
      END OF ls_rqt,
lt_rqt LIKE TABLE OF ls_rqt,
BEGIN OF ls_rnr,
      rnsidlast TYPE rssid,
      rnr TYPE rsrequnr,
      tabname TYPE rsstatmandta,
      END OF ls_rnr,
     lt_rnr LIKE TABLE OF ls_rnr.
*
DATA: l_alv      TYPE REF TO   cl_gui_alv_grid,
      ok_code TYPE sy-ucomm.
*
START-OF-SELECTION.
*
  SELECT instance FROM rspcprocesslog
  INTO TABLE lt_rqt
  WHERE log_id = p_log_id
    AND type = 'DTP_LOAD'
    AND event_start = 'RSPROCESS'.
*
  IF NOT lt_rqt IS INITIAL.
    SELECT rnsidlast  rnr tabname FROM rsreqicods
         INTO TABLE lt_rnr
         FOR ALL ENTRIES IN lt_rqt
         WHERE rnr = lt_rqt-instance
         AND   typ = 'I'.
  ENDIF.
*
END-OF-SELECTION.
*
  IF lt_rnr IS INITIAL.
    MESSAGE i733(5a) DISPLAY LIKE 'E'.
    EXIT.
  ENDIF.
*
  CALL SCREEN 100.
*&---------------------------------------------------------------------*
*&      Module  STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
MODULE status_0100 OUTPUT.
  SET PF-STATUS 'PC100'.
  SET TITLEBAR 'PC100'.
  CREATE OBJECT l_alv
    EXPORTING
      i_parent = cl_gui_container=>screen0.
*
  CALL METHOD l_alv->set_table_for_first_display
    EXPORTING
      i_structure_name = 'ZRNR'
    CHANGING
      it_outtab        = lt_rnr.
ENDMODULE.                 " STATUS_0100  OUTPUT
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0100  INPUT
*&---------------------------------------------------------------------*
MODULE user_command_0100 INPUT.
  CASE ok_code.
    WHEN 'EXIT' OR 'BACK' OR 'END'.
      LEAVE TO SCREEN 0.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0100  INPUT


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Вт, авг 16 2011, 16:13 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
to Roko: спасибо за ответ. Действительно, в таблице rspcprocesslog лежит список запросов данных к ID прогона цепочки. Все что еще нужно это получить к каждому запросу имя провайдера в котором он "лежит". Вы предложили брать имена из RSREQICODS. Но я не нахожу их там, если у меня DSO оптимизированный для записи.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Ср, авг 17 2011, 08:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пт, авг 04 2006, 20:56
Сообщения: 1006
Откуда: 37 МИКРОРАЙОН
Пол: Мужской
,fk,tc написал:
Вы предложили брать имена из RSREQICODS. Но я не нахожу их там, если у меня DSO оптимизированный для записи.

Тип DSO не важен. Если есть хотя бы активный запрос к вашему WDSO, то запись должна существовать в таблицах RSODSACTREQ и RSREQICODS.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Ср, авг 17 2011, 17:31 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
Цитата:
Но я не нахожу их там, если у меня DSO оптимизированный для записи.

Следует читать как: иногда предложенный Вами метод работает, иногда нет. Попробовав его на нескольких примерах я предположил, что это зависит от типа DSO, но дальнейшие исследования показали, что это не так.
Цитата:
Если есть хотя бы активный запрос к вашему WDSO, то запись должна существовать в таблицах RSODSACTREQ и RSREQICODS.

К сожалению это не совсем так. По крайней мере иногда rspcprocesslog возвращает позиции с INSTANCE которого не находится в RSODSACTREQ и RSREQICODS-RNR.
Вопрос остается открытым :?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Чт, авг 18 2011, 16:23 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
Теперь совсем не понятно. 1 и тот же DSO\цепочка. Для 1 ID прогона rspcprocesslog возвращает позиции с значениями поля INSTANCE, которые не находится в RSREQICODS-RNR. Для другого находит. :roll:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Пт, авг 19 2011, 12:39 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
to ROKO: прошу прощения, Вы были правы.
Метод описанный ROKO работает. Оказалось, целевые провайдеры данных редактировали не только с помощью цепочек, но и вручную. :oops:
Тема закрыта.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Как по id прогона цепочки получить список запросов данных?
СообщениеДобавлено: Ср, авг 31 2011, 11:26 
Младший специалист
Младший специалист

Зарегистрирован:
Чт, фев 12 2009, 17:20
Сообщения: 70
Пол: Мужской
Если цепочка содержит в себе другую цепочку(RSPCPROCESSLOG-TYPE='CHAIN'), в результате прогона которой создаются также нужные мне запросы данных, то предложенный ROKO метод не работает. Видимо прогоны таких "вложенных" цепочек по другому хранятся. :?:
Как их получить?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

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


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

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


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

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