Автор Тема: Журналирование изменений группы СПП элементов  (Прочитано 546 раз)

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

Оффлайн themax

  • Newbie
  • *
  • Сообщений: 274
  • Репутация: +2/-0
  • YearsYearsYearsYearsYearsYearsYearsYears
Добрый день Всем.

Пытаюсь сделать журналирование изменений группы СПП элементов. Создал объект документа изменений для таблички setleaf (там хранятся группы СПП элементов), сгенерировал ФМ. Т.к. изменение группы СПП элементов происходит с помощью пакетного ввода, при создании объекта документа изменений поставил галочку Внутренняя таблица. Получается одна таблица с СПП элементами до изменения, вторая после. При попытке вызова с генерированного ФМ
Код: You are not allowed to view links. Register or Login
CALL FUNCTION 'ZCO_WBS_CHAN2_WRITE_DOCUMENT'
      EXPORTING
        OBJECTID                       = 'Z187'
        TCODE                          = 'CJSG'
        UTIME                          = sy-uzeit
        UDATE                          = sy-datum
        USERNAME                       = sy-uname
*   PLANNED_CHANGE_NUMBER          = ' '
*   OBJECT_CHANGE_INDICATOR        = 'U'
*   PLANNED_OR_REAL_CHANGES        = ' '
*   NO_CHANGE_POINTERS             = ' '
*   UPD_ICDTXT_ZCO_WBS_CHAN2       = ' '
        UPD_SETLEAF                    = 'U'
      TABLES
        ICDTXT_ZCO_WBS_CHAN2           = it_cdtxt
        XSETLEAF                       = setlnew
        YSETLEAF                       = setlold .
программа падает в дамп. Содержимое дампа следующее:
Код: You are not allowed to view links. Register or Login
An exception has occurred which is explained in more detail below. The
exception is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE' and was not
caught in procedure
"BATCH_INPUT" "(FORM)", nor was it propagated by a RAISING clause.
Since the caller of the procedure could not have anticipated this
exception, the current program was terminated.
The reason for the exception is:
The call to function module "ZCO_WBS_CHAN2_WRITE_DOCUMENT" is incorrect:

In the function module interface, it was stipulated that only fields of
a specific type and length can be specified under "XSETLEAF". The currently
specified field )"SETLNEW") has the right type, but its length is incorrect.
Ни как не пойму что не так длиной внутренней таблицы передающейся в ФМ. Пытался добавлять как таблицу с заголовком так и таблицу без заголовка, всё одно. Внутренняя таблица идентична структуре физической таблицы, которую я указал при создании объекта документа изменений.

В Инете полно примеров как работать с одной записью, но не с внутренней таблицей. С генерировал другой ФМ на основе передачи одной записи, которая передаётся в структуру, так работает. Можно конечно добавить в цикл ФМ и через структуру передать все СПП элементы, но тогда создаётся много документов изменений, что как мне кажется засоряет БД. Может кто делал такое и подскажет что тут подкручивать надо, чтобы получилось передать внутреннюю таблицу в ФМ ?

Оффлайн themax

  • Newbie
  • *
  • Сообщений: 274
  • Репутация: +2/-0
  • YearsYearsYearsYearsYearsYearsYearsYears
Первоначальный вопрос про дамп снимается. Как ни странно не заметил, что в с генерированном ФМ сформировавшиеся таблички отличаются от таблички, которую я указал при создании объекта изменений на одно поле. Какое то поле KZ с одним символом добавилось в ФМ. Добавил это поле во внутренние таблички и присвоил их таблицам ФМ CALL FUNCTION 'ZCO_WBS_CHAN2_WRITE_DOCUMENT'. Дамп пропал, но появилась следующая проблема, при просмотре таблицы CDPOS созданного документа изменений не заполняются поля Имя поля, Старое значение и Новое значение, т.е. передаются как будто пустые внутренние таблицы, хотя в пакетнике при передачи их в ФМ ZCO_WBS_CHAN2_WRITE_DOCUMENT они заполнены.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 755
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
Может кто делал такое и подскажет что тут подкручивать надо, чтобы получилось передать внутреннюю таблицу в ФМ ?
Тоже делал только когда передается одна запись. С передачей внутренней таблицы не доводилось работать.

Оффлайн themax

  • Newbie
  • *
  • Сообщений: 274
  • Репутация: +2/-0
  • YearsYearsYearsYearsYearsYearsYearsYears
You are not allowed to view links. Register or Login
Тоже делал только когда передается одна запись. С передачей внутренней таблицы не доводилось работать.
Добрый день Олег.

Что характерно с одной записью всё работает и записывается, но вот с внутренней таблицей так и не понял что не так?! Есть вариант использовать стандартную настройку, которая применяются ко всем группам СПП элементов, но там столько записей будет создаваться в документах изменений в БД вот я и подумал обойтись z-ом, но что то пока не въеду как передавать внутреннюю табличку.