FineReport11调用MySQL带出参的存储过程,调用是成功的,如何获取返回的参数

我自己写了一个带出参的MySQL存储过程:

CREATE DEFINER=`root`@`%` PROCEDURE `GetNumTest`(

    IN input_ym VARCHAR(10),

    OUT year_count INT,

OUT month_count INT

)

 调用如下: 

var sql="call GetNumTest('"+p_ym+"',?,?)";

 var res=FR.remoteEvaluate('=sql("填报_测试","'+sql+'",1,1)'); 

调用是成功的,但是,没取到出参,怎么获取出参呢

FineReport STLilly 发布于 2024-11-14 11:10 (编辑于 2024-11-14 11:11)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
CD20160914Lv8专家互助
发布于2024-11-14 11:34

语句没有写完整,你的没有查询表。。?在mysql你就这样写的?

CREATE DEFINER=`root`@`%` PROCEDURE `GetNumTest`(    IN input_ym VARCHAR(10),    OUT year_count INT,    OUT month_count INT ) BEGIN    -- 假设有一个名为records的表,其中有一个datetime类型的字段叫做record_date    -- 计算特定年份和月份的记录数    SELECT        COUNT(CASE WHEN YEAR(record_date) = LEFT(input_ym, 4) THEN 1 END) INTO year_count,        COUNT(CASE WHEN MONTH(record_date) = RIGHT(input_ym, 2) THEN 1 END) INTO month_count    FROM records    WHERE record_date LIKE CONCAT(input_ym, '%'); END;

改成你的表名,看在mysql调用它是否参数。

  • STLilly STLilly(提问者) 我只是复制了出参入参,存储过程是完整的,在数据库是调用成功的,只是询问在帆软怎么获取出参
    2024-11-14 13:36 
  • CD20160914 CD20160914 回复 STLilly(提问者) 你只是定义了一个出差的变量,你得有真正的值呀,类似上面。你自己测试看!
    2024-11-14 13:43 
  • STLilly STLilly(提问者) 回复 CD20160914 CREATE DEFINER=`root`@`%` PROCEDURE `GetNumTest`( IN input_ym VARCHAR(10), OUT year_count INT, OUT month_count INT ) BEGIN -- 使用DATE_FORMAT函数从日期字段中提取年份和月份 -- 假设date_field是存储日期的字段 SELECT COUNT(*) INTO month_count FROM month_sale_income_plan WHERE substr(ym,1,7) = input_ym; SELECT COUNT(*) INTO year_count FROM month_sale_income_plan WHERE substr(ym,1,4) = substr(input_ym,1,4); END这是我的完整存储过程,在数据库调用是有返回值的
    2024-11-14 13:53 
  • CD20160914 CD20160914 回复 STLilly(提问者) 写入表中吧。这样在帆软中不支持,然后再用sql函数返回表中的数据
    2024-11-14 14:41 
  • 2关注人数
  • 109浏览人数
  • 最后回答于:2024-11-14 11:34
    请选择关闭问题的原因
    确定 取消
    返回顶部