Текущее время: Вт, июн 17 2025, 11:50

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


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


ВНИМАНИЕ! Прежде чем задавать вопрос, ознакомьтесь со ссылками ниже:

Вопросы по отличиям версий SAP, Add-On, EHP - сюда
Вопросы по SAP Front End (SAPlogon, SAPgui, guiXT и т.д.) - сюда
Вопросы по LSMW - сюда
Вопросы по архивации в SAP - сюда
Вопросы по SAP GRC - сюда
Вопросы по SAP Business Workplace (почте SAP) и SAP Office - сюда
Вопросы по miniSAP (SAP mini basis) - сюда
Вопросы по SAP HANA - сюда
Вопросы по лицензированию продуктов SAP - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Solman 7.1
СообщениеДобавлено: Ср, окт 10 2012, 08:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
У кого есть нулевый (не upgraded) solman 7.1 SPS6 с накаченной мастер-нотой?

Запостите, плиз, код

cl_hf_helper=>is_tp_running( )


Заранее спасибо, Иван

_________________
ай, каррамба


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Ср, окт 10 2012, 08:34 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
это сюда же, походу

viewtopic.php?f=14&t=78620

_________________
ай, каррамба


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Чт, окт 11 2012, 10:36 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 11:44
Сообщения: 636
Пол: Мужской
Code:
METHOD is_tp_running.
*
* include LSTPACON.
  INCLUDE /tmwflow/transport_constants.

  DATA lv_system      TYPE tmssysnam.
  DATA lv_domain      TYPE tmsdomnam.
  DATA lv_smsy_domain TYPE smsy_tmsdom.
  DATA lv_flex_active TYPE flag.
  DATA lt_requests    TYPE /tmwflow/trordec_type.
  DATA lt_tpstats     TYPE tpstats.
  DATA ls_sap_system  TYPE smsy_system_sap.
  DATA lv_long_sid    TYPE sysysid.
  DATA lv_short_sid   TYPE sysysid.
  DATA ls_track       TYPE /tmwflow/ttrckec.
  DATA lt_sys         TYPE TABLE OF tmscsys.
  DATA ls_tp_logtabs  TYPE stms_tp_logtabs.
  DATA ls_tp_logtab   TYPE stms_tp_logtab.
  DATA ls_tpstat      TYPE tpstat.

  DATA lv_request_id  TYPE if_cts_transport_entity=>ty_id.
  DATA lt_coll_id     TYPE if_cts_transport_entity=>ty_ids.
  DATA ls_result      TYPE cl_cts_transport_factory=>ty_import_status.
  DATA lt_results     TYPE cl_cts_transport_factory=>ty_import_statuses.
  DATA lt_coll        TYPE if_cts_transport_collection=>ty_collections.

  DATA lo_request     TYPE REF TO if_cts_transport_request.
  DATA lo_coll        TYPE REF TO if_cts_transport_collection.
  DATA lo_system      TYPE REF TO if_cts_system.


  DATA lo_system_cluster TYPE REF TO if_cts_system_collection.

  FIELD-SYMBOLS:
    <fs_request>      TYPE /tmwflow/trordec,
    <fs_tpstat>       TYPE tpstat.

  APPEND LINES OF it_requests_imp  TO lt_requests.
  APPEND LINES OF it_requests_nimp TO lt_requests.
  SORT lt_requests BY trorder_number.
  DELETE ADJACENT DUPLICATES FROM lt_requests COMPARING trorder_number.

  "SMSY uses Long SID.
  lv_long_sid = iv_logical_system-sysname.
  CALL FUNCTION '/TMWFLOW/GET_SYSTEM_TMS_INFO'
    EXPORTING
      iv_sysname       = lv_long_sid
*     iv_refresh       = ' '
    IMPORTING
      es_tmsdom        = lv_smsy_domain
      ev_tms_syssid    = lv_short_sid
    EXCEPTIONS
      unknown_system   = 1
      get_tms_info_err = 2
      OTHERS           = 3.
  IF sy-subrc <> 0.
    ev_running = abap_true.
    RETURN.
  ENDIF.

  lv_system = lv_short_sid.
  lv_domain = lv_smsy_domain-tmsdomnam.

*--------------------------------------------------------------------*
*  Use different api for flex enabled or not enabled project
  lv_flex_active = /tmwflow/cl_transport_util=>is_change_man_flex_active(
    iv_project_id  = iv_solman_project ).
  IF lv_flex_active = abap_true.
    /tmwflow/cl_transport_util=>get_cluster_for_system(
        EXPORTING
          iv_system    = lv_system
          iv_client    = iv_logical_system-client
          iv_project   = iv_solman_project
          iv_role_type = ''
        RECEIVING
          rs_track   = ls_track ).

    TRY.
        lo_system = cl_cts_landscape_factory=>get_system(
          system_name = lv_system
          domain_name = lv_domain
          client      = iv_logical_system-client ).

        lo_system_cluster = cl_cts_landscape_factory=>get_system_collection(
            system_collection_name = ls_track-transp_cluster
            domain_name            = ls_track-transp_domain ).

        LOOP AT lt_requests ASSIGNING <fs_request>.
          lv_request_id = <fs_request>-trorder_number.
          lo_request ?= cl_cts_transport_factory=>get_transport_entity(
              id            = lv_request_id
              source_system = lo_system ).
          lt_coll = lo_request->get_collections( ).
          LOOP AT lt_coll INTO lo_coll.
            APPEND lo_coll->get_id( ) TO lt_coll_id.
          ENDLOOP.
        ENDLOOP.

        SORT lt_coll_id.
        DELETE ADJACENT DUPLICATES FROM lt_coll_id.

        lt_results = cl_cts_transport_factory=>get_import_status(
            entity_ids = lt_coll_id
            system     = lo_system_cluster ).
      CATCH cx_cts_exception.
        ev_running = abap_true.
        RETURN.
    ENDTRY.

    LOOP AT lt_results INTO ls_result
      WHERE status = cl_cts_transport_factory=>co_imp_status_import_running.
      ev_running = abap_true.
      RETURN.
    ENDLOOP.

    RETURN.
  ENDIF.

  CHECK lv_flex_active = abap_false.
*--------------------------------------------------------------------*
* only if domain link is configured, we can get TP status in TMS API.
* otherwise we do not check TP status and assume TP is running.
*
* we could enhance it when we have developed Remote API in managed
* system to judge TP status.
*--------------------------------------------------------------------*

* get TPSTAT entries, embed logic from 'TMS_IMU_FILTER_TPSTAT'
  CALL FUNCTION 'TMS_MGR_READ_TP_LOGTAB'
    EXPORTING
      iv_system      = lv_system
      iv_domain      = lv_domain
      iv_read_tpstat = gc_x
      iv_monitor     = space
      iv_verbose     = space
    IMPORTING
      es_tp_logtabs  = ls_tp_logtabs
    EXCEPTIONS
      OTHERS         = 99.
  IF sy-subrc <> 0.
    ev_running = abap_true.
    RETURN. " no check of TP status.
  ENDIF.

  LOOP AT ls_tp_logtabs INTO ls_tp_logtab.
    LOOP AT ls_tp_logtab-tpstat INTO ls_tpstat.
*filter from export commands
      CHECK ls_tpstat-command(1)   <> 'E' AND
            ls_tpstat-command+2(1) <> 'E'.
      APPEND ls_tpstat TO lt_tpstats.
    ENDLOOP.
  ENDLOOP.

  DELETE lt_tpstats WHERE command <> 'IMPORT'.
  SORT lt_tpstats BY trkorr tarcli.

  LOOP AT lt_requests ASSIGNING <fs_request>
    WHERE status <> gc_import_finished OR
          status <> gc_import_warning.

*   there can be more than one entry
    LOOP AT lt_tpstats TRANSPORTING NO FIELDS
      WHERE trkorr = <fs_request>-trorder_number
        AND ( tarcli = iv_logical_system-client OR
              tarcli IS INITIAL ) "for 46C system we cannot get the client info
        AND ( status = 'N' OR     "gc_tp_stat_new or
              status = 'R' ).     "gc_tp_stat_running ).

      ev_running = abap_true.
      RETURN.     "one is enough!

    ENDLOOP.

  ENDLOOP.

ENDMETHOD.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Чт, окт 11 2012, 10:56 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
благодарствую!

А можно тогда сюда же код

cl_cts_transport_factory=>get_transport_entity вместе с интерфейсом метода и версией?

Заранее спасибо, Иван.

_________________
ай, каррамба


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Чт, окт 11 2012, 14:27 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 11:44
Сообщения: 636
Пол: Мужской
Code:
  method get_transport_entity.

* load existing transport entity

    data: buffer_entry type ty_buffer_entry,
          lid like id,
          data_source_system type ref to if_cts_system.

    lid = id.
    translate lid to upper case.

* in buffer?
    read table buffer with table key id = lid into buffer_entry.
    if buffer_entry is not initial.
      if force_reload = abap_true.
        delete table buffer with table key id = lid.
      else.
        entity = buffer_entry-ref.
        return.
      endif.
    endif.

    if force_request <> abap_true.
* load collection
      try.
          entity = cl_cts_tr_coll_dec_process=>new( cl_cts_transport_collection=>load_collection( lid ) ).
          if entity is bound.
            buffer_entry-ref = entity.
            buffer_entry-id = lid.
            append buffer_entry to buffer.
          endif.
          return.
        catch cx_cts_transport_entity.
          " nothing todo here - loading the request will happen bellow
      endtry.
    endif.

* any information for data source system?
    data_source_system = read_data_source_system( id ).
    if data_source_system is not bound.
      if source_system is bound and source_system->get_name( ) = id(3).
        clear data_source_system.
      else.
        data_source_system = source_system.
      endif.
    endif.

* load request
    try.
        if data_source_system is bound or force_read_only = abap_true.
          entity = cl_cts_transport_request_ro=>load_ro( id = lid
                                                         collection = collection
                                                         source_system = data_source_system ).
        else.
          entity = cl_cts_transport_request=>load( id = lid
                                                   collection = collection ).
        endif.
        if entity is bound.
          buffer_entry-ref = entity.
          buffer_entry-id = lid.
          append buffer_entry to buffer.
        endif.
        return.
      catch cx_cts_transport_entity.
        raise exception type cx_cts_transport_entity
          exporting
            textid     = cx_cts_transport_entity=>unknown_entity
            request_id = lid.
    endtry.

  endmethod.                    "get_transport_entity


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Пт, окт 12 2012, 06:42 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
Большое спасибо qdublin за помощь.

_________________
ай, каррамба


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Пт, окт 19 2012, 12:46 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
В общем,

Есть одна тонкость, связанная с установкой SPS6 через SUM или во время апгрейда посредством SOLMANUP:
При этом устанавливается CTS_PLUGIN, который необходимо впоследствии активировать отчетом /CTSPLUG/CTS_ACTIVATION, иначе в некоторых классах ST возникают ошибки синтаксиса. Отчет осуществляет дополнительный импорт и постобработку.
Во время апгрейда активацию, видимо, нужно запускать после импорта аддонов из теневой инстанции, поскольку нужные для активации датафайлы в этом случае генерируются не в стандартной транспортной директории, а в каталоге апгрейда.

_________________
ай, каррамба


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Пт, окт 19 2012, 14:25 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, сен 07 2007, 15:58
Сообщения: 295
Откуда: UA
Пол: Мужской
Именно об этом и написано в п.6 ноты Note 1665940 - Installing/Updating SAP CTS Plug-In 2.0


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Solman 7.1
СообщениеДобавлено: Пт, окт 19 2012, 14:52 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 12 2008, 07:40
Сообщения: 196
Откуда: Екатеринбург
Пол: Мужской
Там написано именно о том, что его надо активировать.
Почему отчет падает в дамп message_type_x после установки аддона во время апгрейда, а также о том, как достать датафайлы, нужные для этого отчета, нигде нет ни слова.

_________________
ай, каррамба


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

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


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

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


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

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