Текущее время: Пн, июл 28 2025, 08:53

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Изменение кол-ва в позициях спецификации (CS02)
СообщениеДобавлено: Вт, ноя 09 2010, 09:22 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
День добрый. Необходимо изменить кол-во позиций и базисное кол-во заголовка в спецификации.
Пробывал цепочку:
CSAP_MAT_BOM_OPEN
CSAP_BOM_ITEM_MAINTAIN
CSAP_MAT_BOM_CLOSE
http://forums.sdn.sap.com/thread.jspa?messageID=1708977
http://forums.sdn.sap.com/thread.jspa?messageID=9145609

у меня необтрабатывает, скидываю код, может не то что-то заполняю (впринципе пример использовал предложенный SAP):

Code:
DATA: BEGIN OF TSTK2.
    INCLUDE STRUCTURE STKO_API02.
  DATA: END OF TSTK2.
*---- TABELLE STÜCKLISTENPOSITIONEN
  DATA: BEGIN OF TSTP2 OCCURS 0.
    INCLUDE STRUCTURE STPO_API02.
  DATA: END OF TSTP2.
*---- TABELLEN FÜR BEZIEHUNGSWISSEN:
*     BASISDATEN
  DATA: BEGIN OF TDEP2_DATA OCCURS 0.
    INCLUDE STRUCTURE DEP_DATA.
  DATA: END OF TDEP2_DATA.
*     BESCHREIBUNG
  DATA: BEGIN OF TDEP2_DESCR OCCURS 0.
    INCLUDE STRUCTURE DEP_DESCR.
  DATA: END OF TDEP2_DESCR.
*     SOURCE
  DATA: BEGIN OF TDEP2_SOURCE OCCURS 0.
    INCLUDE STRUCTURE DEP_SOURCE.
  DATA: END OF TDEP2_SOURCE.
*     REIHENFOLGE
  DATA: BEGIN OF TDEP2_ORDER OCCURS 0.
    INCLUDE STRUCTURE DEP_ORDER.
  DATA: END OF TDEP2_ORDER.
*     DOKUMENTATION
  DATA: BEGIN OF TDEP2_DOC OCCURS 0.
    INCLUDE STRUCTURE DEP_DOC.
  DATA: END OF TDEP2_DOC.
  DATA: FLG_WARNING LIKE CAPIFLAG-FLWARNING.
*- DATENBANKPROTOKOLL ERÖFFNEN
  CALL FUNCTION 'CALO_INIT_API'
  EXCEPTIONS
    LOG_OBJECT_NOT_FOUND     = 1
    LOG_SUB_OBJECT_NOT_FOUND = 2
    OTHER_ERROR              = 3
    OTHERS                   = 4.
*- ERÖFFNEN DER STÜCKLISTE FÜR ÄNDERUNGEN
  CALL FUNCTION 'CSAP_MAT_BOM_OPEN'
  EXPORTING
    MATERIAL               = 'PAVT_001'
    PLANT                  = '1100'
    BOM_USAGE              = '6'
    ALTERNATIVE            = '1'
    VALID_FROM             = '01.08.2010' "PDATUV
*             CHANGE_NO  = 'AE001'
  IMPORTING
    O_STKO     = TSTK2
    FL_WARNING = FLG_WARNING
  TABLES
    T_STPO     = TSTP2
  EXCEPTIONS
    ERROR      = 1.
*- NEUE POSITION ITEM_NODE UND ITEM_COUNT MÜSSEN INITIAL SEIN
  CLEAR: TDEP2_DATA,
  TDEP2_SOURCE,
  TDEP2_DESCR,
  TDEP2_ORDER,
  TDEP2_DOC.
  REFRESH: TDEP2_DATA,
  TDEP2_SOURCE,
  TDEP2_DESCR,
  TDEP2_ORDER,
  TDEP2_DOC.

  TSTP2-COMPONENT  = 'PELOU_001'. " Номер материала компонетна
  TSTP2-ITEM_NO = '0020'. " Номер строки
  TSTP2-ITEM_CATEG = 'L'. "
  TSTP2-COMP_QTY   = '20'. " Кол-во
  CALL FUNCTION 'CSAP_BOM_ITEM_MAINTAIN'
    EXPORTING
      I_STPO       = TSTP2
    IMPORTING
      FL_WARNING   = FLG_WARNING
    TABLES
*                T_DEP_DATA   =
*                T_DEP_DESCR  =
*                T_DEP_ORDER  =
      T_DEP_SOURCE = TDEP2_SOURCE
*                T_DEP_DOC    =
    EXCEPTIONS
      ERROR        = 1
      OTHERS       = 2.
  CALL FUNCTION 'CSAP_MAT_BOM_CLOSE'
  IMPORTING
    FL_WARNING = FLG_WARNING
  EXCEPTIONS
    ERROR   = 1.


Может есть еще какие нибудь варианты? :?:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Изменение кол-ва в позициях спецификации (CS02)
СообщениеДобавлено: Вт, ноя 09 2010, 09:49 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, ноя 01 2004, 12:17
Сообщения: 298
Пол: Мужской
удалено .

не то :-)

попробуйте сначала прочитать в TSTP2 нужную позицию
READ TABLE TSTP2 WITH KEY ITEM_NO = '0020'.
а затем поменять поля.

TSTP2-COMPONENT = 'PELOU_001'. " Номер материала компонетна
TSTP2-ITEM_NO = '0020'. " Номер строки
TSTP2-ITEM_CATEG = 'L'. "
TSTP2-COMP_QTY = '20'. " Кол-во


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Изменение кол-ва в позициях спецификации (CS02)
СообщениеДобавлено: Вт, ноя 09 2010, 10:16 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Ср, фев 04 2009, 13:46
Сообщения: 95
Пол: Мужской
MODIFY сделал, но изменение не проходят, только удаление позиций.
Делаю:
LOOP AT TSTP2 WHERE COMPONENT = 'PELOU_001' AND ITEM_NO = '0020'.
* TSTP2-ITEM_CATEG = 'L'.
* TSTP2-FLDELETE = 'X'.
TSTP2-COMP_QTY = '20'. " Кол-во
MODIFY TSTP2.
ENDLOOP.

Впринципе тоже что и с READ, результат нет(

P.S. Сделал через READ, результат нет(
READ TABLE TSTP2 WITH KEY ITEM_NO = '0030'.
TSTP2-COMP_QTY = 20'.
MODIFY TSTP2 INDEX SY-TABIX.


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

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


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

Сейчас этот форум просматривают: Yandex [Bot]


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

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