0

使用 BAPI_ACC_DOCUMENT_REV_POST 反转通过 BAPI_ACC_DOCUMENT_POST 提出的条目,但是我们收到以下错误

E RW 609 文档错误:BKPFF $ SYS600 BKPFF

E RW 632 Document BKPFF 900026 SYS600 cannot be reverse BKPFF

E RW 630 无法在组件财务会计中冲销财务会计

E F5A 9 无法冲销,参考的会计凭证。不存在 BKPFF

参考代码

Dim companyAPI As IRfcFunction = _ecc.Repository.CreateFunction("BAPI_ACC_DOCUMENT_REV_POST")
    Dim rev As IRfcStructure = companyAPI.GetStructure("REVERSAL")
    rev.SetValue("OBJ_TYPE", "BKPFF")
    rev.SetValue("OBJ_SYS", "$")
    rev.SetValue("OBJ_KEY", "900026N0342016")
    rev.SetValue("OBJ_KEY_R", "900026N0342016")
    rev.SetValue("COMP_CODE", "D756")
    rev.SetValue("REASON_REV", "01")
    Dim transfunction = _ecc.Repository.CreateFunction("BAPI_TRANSACTION_COMMIT")
    transfunction.SetValue("WAIT", "X")
    companyAPI.Invoke(_ecc) 
    transfunction.Invoke(_ecc)
    Dim dt As DataTable = GetDataTableFromRFCTable(companyAPI.GetTable("RETURN"))
4

1 回答 1

0

乍一看,最后的错误消息(E F5A 9 ...accounting document for the ref. doesn't exist BKPFF)指向一个可能的解决方案。

我看到您将文档编号 ( 900026)、公司代码 ( N034) 和财务期间 ( 2016) 作为键传递,但我感觉您需要将文档编号补零到十位数。发送OBJ_KEYOBJ_KEY_R作为“0000900026N0342016”,看看是否有帮助。文档编号在内部存储为十位数字,我认为 BAPI 期望它采用这种格式。

于 2015-06-28T13:30:51.900 回答