Я использую BAPI_QUALNOT_CREATE в JCo для создания уведомления о качестве, и это работает. Единственное, что не работает, это создание 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)
}
Но текст никогда не появляется в уведомлении о качестве. Что не так с моим кодом?
т.е. компоненты OBJTYPE и OBJKEY LONGTEXTS должны быть заполнены в соответствии с правилами, изложенными в документации




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.
Как и для справки, в документации BAPI есть специальные инструкции для длинных текстов.