Автор Тема: CUOB_GET_NUMBER - получение внутреннего номера объекта классификации  (Прочитано 5219 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Паганель

  • Я НЕ ЗАНИМАЮСЬ SAP
  • Administrator
  • Full Member
  • *****
  • Сообщений: 1 367
  • Репутация: +20/-0
  • Пол: Мужской
  • https://noteifyapp.com
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • MacPlus Software
Аналогична CUOB_CHECK_EXISTENCE_OF_OBJECT (You are not allowed to view links. Register or Login)
проверяет существует ли объект  и возвращает внутренний номер  объекта классификации, комментарии думаю излишни, все понятно с кода, можно использовать в программе You are not allowed to view links. Register or Login, для удобства использования оформлена как form

Код: You are not allowed to view links. Register or Login
*&---------------------------------------------------------------------*
*&      Form  get_object_number
*&---------------------------------------------------------------------*
*      Получение внутреннего номера
*----------------------------------------------------------------------*
FORM get_object_number  USING   rs_matnr TYPE mara-matnr
                       CHANGING rs_object_number TYPE kssk-objek.

    DATA: temp_object_id LIKE kssk-objek.

    " Приводим номер материала к внутреннему формату
    " На всякий случай
     CALL FUNCTION 'CONVERSION_EXIT_MATN1_INPUT'
         EXPORTING
            input = rs_matnr
         IMPORTING
            output = rs_matnr
          EXCEPTIONS
            length_error = 1
            OTHERS = 2.

        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 'CUOB_GET_NUMBER'
      EXPORTING
        class_type = pa_klart
        object_id  = rs_matnr
        table      = 'MARA'
        "I_READ_DB_FIRST
      IMPORTING
         object_number = rs_object_number
       EXCEPTIONS
         lock_problem = 1
         object_not_found = 2.

      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
ENDFORM.                    " get_object_number
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login

Оффлайн Паганель

  • Я НЕ ЗАНИМАЮСЬ SAP
  • Administrator
  • Full Member
  • *****
  • Сообщений: 1 367
  • Репутация: +20/-0
  • Пол: Мужской
  • https://noteifyapp.com
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • MacPlus Software
Для вызова использую такую конструкцию (в основном для приведения типов),
предположим, что есть параметр

Код: You are not allowed to view links. Register or Login
PARAMETERS: pa_matnr type mara-matnr.
.......
DATA: L_OBJEK_ID TYPE KSSK-OBJEK.
DATA: temp_object_id LIKE kssk-objek.
MOVE so_matnr-low TO L_OBJEK_ID.

perform get_object_number  USING   L_OBJEK_ID
                       CHANGING temp_object_id.
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login
You are not allowed to view links. Register or Login