Здравствуйте!
Подскажите, как можно изменить содержимое поля XREF2_HD в таблице BKPF без использования прямого обращения к таблице?
Я пытаюсь сделать это через ФМ 
FI_DOCUMENT_CHANGE, но получаю ошибки.
Версия соответствующего компонента:
SAP_FIN	617	0007	SAPK-61707INSAPFIN	SAP_FIN
ФМ FI_DOCUMENT_CHANGEПопытка №1, через bukrs+belnr+gjahrЗаполняю поля  i_bukrs, i_belnr, i_gjahr, i_buzei = 1.
Получаю ошибку  "FI: поле ссылки не заполнено.".
[cut]
Попытка №2, через i_awtyp + i_awref + i_aworg + i_awsys, awtyp = 'BKPF'Code:
Parameters:
  p_bukrs type bukrs default 1000,
  p_belnr type belnr_d default 5010000002,
  p_gjahr type gjahr default 2015,
  p_xref2 type xref2_hd default 1.
Data: ls_1 type ACCCHG,
      ls_bkpf type BKPF,
      lt_1 like standard table of ls_1,
      lv_aworg type ACCHD-AWORG.
ls_1-fdname = 'XREF2_HD'.
ls_1-newval = p_xref2.
Append ls_1 to lt_1.
*ls_1-fdname = 'XREF2'.
*Append ls_1 to lt_1.
Select single * from BKPF into corresponding fields of ls_bkpf
  where bukrs = p_bukrs and belnr = p_belnr and gjahr = p_gjahr.
lv_aworg = ls_bkpf-bukrs && ls_bkpf-gjahr.
Call function 'FI_DOCUMENT_CHANGE'
  exporting
   i_awtyp                    = 'BKPF'
   i_awref                    = ls_bkpf-belnr
   i_aworg                    = lv_aworg
   i_awsys                    = space
*   i_kunnr                    = ' '
*   i_lifnr                    = ''
*   i_obzei                    = ' '
   i_buzei                    = 1
*   i_bsegc                    =
*   x_lock                     = 'X'
*    i_bukrs                    = p_bukrs
*    i_belnr                    = p_belnr
*    i_gjahr                    = p_gjahr
  tables
    t_accchg                   = lt_1
  exceptions
    no_reference               = 1
    no_document                = 2
    many_documents             = 3
    wrong_input                = 4
    overwrite_creditcard       = 5
    others                     = 6
          .
If sy-subrc <> 0.
  Message e000(su) with 'ERROR' sy-subrc 'IN FI_DOCUMENT_CHANGE'.
  Return.
Endif.
[/cut]
В результате в системе разработки всё нормально, поле XREF2_HD обновляется.
В тестовой же системе выдаётся сообщение то-ли "FI: поле ссылки не заполнено.", то-ли "FI: документы бухучета не найдены."
Попытка №3, через i_awtyp + i_awref + i_aworg + i_awsys, awtyp = 'TR-TM'В тестовой системе использую другое значение AWTYP, "TR-TM", т.к. разработка для модуля Treasury.
[cut="..."]
Code:
Data:
  ls_1 type ACCCHG,
  ls_2 type TRACT_DOCUMENT,
  lt_1 type WRFT_ACCCHG_TTY,
  lt_2 type TRACY_DOCUMENT.
  ls_1-fdname = 'XREF2_HD'.
  ls_1-newval = iv_new_xref2_hd.
  Append ls_1 to lt_1.
  Select * into corresponding fields of table lt_2
    from tract_document
    where deal_number = iv_deal_number
      and aworg = iv_aworg
    order by awref descending.
  Read table lt_2 into ls_2 index 1.
  Call function 'FI_DOCUMENT_CHANGE'
    exporting
     i_awtyp                    = 'TR-TM' "TODO см. доп.значения домена, там ФМ
     i_awref                    = ls_2-awref "0000019019
     i_aworg                    = ls_2-aworg "R12015
     i_awsys                    = space
     i_buzei                    = 1
    tables
      t_accchg                   = lt_1
            .
[/cut]
В результате ФМ ALE_MODEL_INFO_GET выдаёт NO_MODEL_INFO_FOUND.
ПодозренияИз домена AWTYP вышел на таблицу TTYP «Типы объектов для учета и отчетности», в которой содержатся такие записи:
Code:
AWTYP STRUC      FUNCTION                       REMOTE OTEXT
BKPF  BKPF_AWOBJ FI_DOCUMENT_SENDER                    Бухгалт. документ
TR-TM            TRCA_DOCUMENT_SENDER_TRTM             Финанс. менеджмент
Подозреваю, что верный вызов ФМ FI_DOCUMENT_CHANGE требует какого-то взаимодействия с этими ФМ FI_DOCUMENT_SENDER, TRCA_DOCUMENT_SENDER_TRTM (в зависимости от того, что прописано в AWTYP: BKPF или TR-TM).
Вопрос: как поменять BKPF-XREF2_HD?