{
val res = transaction(getSQLCon(159)) {
TransactionManager.current().exec(
"""
declare @face_id int, @data smalldatetime,@sklad_id int
set @face_id=$face_id
set @data=getdate()
exec p_sklad_show_siz_by_face @face_id,@data,@sklad_id
""".trimIndent()
) {
var result = arrayListOf<Ppe>()
while (it.next()) {
result.add(
Ppe(
it.getString("mat_nam"),
it.getString("edizm_abr"),
it.getInt("matnorm_kol"),
it.getInt("matvid_kol"),
it.getDate("docum_dat").toLocalDate().toString(),
it.getDate("vozvrat_dat").toLocalDate().toString(),
it.getInt("snkd_n")
)
)
}
return@exec result.toTypedArray()
}
}
return res
}
выполняю процедуру которая возвращает набор данных, если текст запроса из логов выполнить то все нормально, но в программе res всегда = null , такое ощущение что не видит результат
Судя по всему если exec не начинается с select то exposed не возвращает resultset ((, в первом exec вывел данные во временную таблицу, вторым сделал select из нее, отработало
о ужас.
declare ...@sklad_id int ... set ???
Может быть null. Нашел вот это решение, работает. https://github.com/JetBrains/Exposed/issues/390
Обсуждают сегодня