Ошибка при обращении документа в SAP с использованием BAPI
Используя BAPI_ACC_DOCUMENT_REV_POST, чтобы отменить записи, представленные через BAPI_ACC_DOCUMENT_POST, однако мы получаем следующие ошибки
E RW 609 Ошибка в документе: BKPFF $ SYS600 BKPFF
E RW 632 Документ BKPFF 900026 SYS600 не может быть отменен 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"))
1 ответ
На первый взгляд, окончательное сообщение об ошибке (E F5A 9... бухгалтерский документ для ссылки не существует BKPFF) указывает на возможное решение.
Я вижу, вы передаете номер документа (900026
), код компании (N034
) и финансовый период (2016
) в качестве ключа, но у меня есть ощущение, что вам нужно обнулить номер документа до десяти цифр. послать OBJ_KEY
а также OBJ_KEY_R
как '0000900026N0342016` и посмотрите, поможет ли это. Номер документа хранится внутри в виде десяти цифр, и я думаю, что BAPI ожидает его в этом формате.