【问题标题】:How to create LONGTEXTS with BAPI_QUALNOT_CREATE in SAP?如何在 SAP 中使用 BAPI_QUALNOT_CREATE 创建 LONGTEXTS?
【发布时间】:2019-07-09 18:08:40
【问题描述】:

我在 JCo 中使用 BAPI_QUALNOT_CREATE 来创建质量通知并且它有效。唯一不起作用的是创建 LONGTEXTS。

我正在使用以下代码:

JCoTable tblText = function.getTableParameterList().getTable("LONGTEXTS")
if (tblText == null) {
    throw new Exception("...")
}

def rowNo = 0
tblText.appendRows(meldungsTextLang.size())
for (String text : meldungsTextLang) {
    if (text != null && text.length() > 132) text = text.substring(0, 132)
    tblText.setRow(rowNo++)
    tblText.setValue("FORMAT_COL", "*")
    tblText.setValue("TEXT_LINE", text)
} 

但文字从未出现在质量通知中。 我的代码有什么问题?

【问题讨论】:

  • 仅供参考,BAPI 的文档中有关于长文本的具体说明。
  • 即LONGTEXTS 的 OBJTYPE 和 OBJKEY 组件必须按照文档中规定的规则填写

标签: java abap jco sap-erp


【解决方案1】:

Objtyp 和 objkey 未填充在强制的代码中,因此请尝试以下更正的代码。

JCoTable tblText = function.getTableParameterList().getTable("LONGTEXTS")
if (tblText == null) {
    throw new Exception("...")
}

def rowNo = 0
tblText.appendRows(meldungsTextLang.size())
for (String text : meldungsTextLang) {
    if (text != null && text.length() > 132) text = text.substring(0, 132)
    tblText.setRow(rowNo++)
    tblText.setValue("OBJTYP","QMSM")
    tblText.setValue("OBJKEY","1")
    tblText.setValue("FORMAT_COL", "*")
    tblText.setValue("TEXT_LINE", text)
}  

【讨论】:

  • 它是OBJTYPE,最后是E(不是OBJTYP/文档有错字)。 QMSM 仅用于通知“任务”,它可以是其他值,具体取决于参数 NOTIF_TYPE。目前,我们不知道 SipCat 想要创建什么类型的通知。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-01
  • 2020-09-14
  • 2016-04-26
  • 1970-01-01
相关资源
最近更新 更多