FineReport报表按条件筛选问题

大佬们,按条件筛选的情况下,如果想要实现不输入查询条件的时候默认搜出来前10行数据展示,该怎么写,以下是我的语句:

select  

* from dbo.salesIssue si  

left join dbo.checkAndAccept caa 

on si.fineId=caa.FineId

left join dbo.invoicing inv 

on inv.fineId=caa.FineId

left join dbo.makeCollections mc 

on mc.fineId=inv.fineId

where 1=1

${if(len(text_productCode)==0,"","AND si.productCode ='"+text_productCode+"'")}

${if(len(text_documentNo)==0,"","AND si.documentNo ='"+text_documentNo+"'")}

${if(len(text_purchaserUnit)==0,"","AND si.purchaserUnit ='"+text_purchaserUnit+"'")}

${if(len(text_orderNo)==0,"","AND si.orderNo ='"+text_orderNo+"'")}  

;

FineReport 九霄云外 发布于 2022-12-1 10:30
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2022-12-1 10:35(编辑于 2022-12-1 10:37)

select

${if(and(len(text_orderNo)==0,len(text_purchaserUnit)==0,len(text_documentNo)==0,len(text_productCode)==0),top 10 *,*)}    

 from dbo.salesIssue si  

left join dbo.checkAndAccept caa 

on si.fineId=caa.FineId

left join dbo.invoicing inv 

on inv.fineId=caa.FineId

left join dbo.makeCollections mc 

on mc.fineId=inv.fineId

where 1=1

${if(len(text_productCode)==0,"","AND si.productCode ='"+text_productCode+"'")}

${if(len(text_documentNo)==0,"","AND si.documentNo ='"+text_documentNo+"'")}

${if(len(text_purchaserUnit)==0,"","AND si.purchaserUnit ='"+text_purchaserUnit+"'")}

${if(len(text_orderNo)==0,"","AND si.orderNo ='"+text_orderNo+"'")}  

  • 九霄云外 九霄云外(提问者) 数据集里面是没问题了,就是在web界面刚加载出来的时候不显示,不知道是不是查询按钮的问题
    2022-12-01 10:51 
  • 用户k6280494 用户k6280494 回复 九霄云外(提问者) 可以远程嘛?
    2022-12-01 11:00 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-12-1 10:33(编辑于 2022-12-1 10:36)

SqlServer?mysql?oracle?

----------

sqlserver 

select  

${and(len(text_productCode)==0,len(text_documentNo)==0,len(text_purchaserUnit)==0,len(text_orderNo)==0),"top 10 ",""} * from dbo.salesIssue si  

left join dbo.checkAndAccept caa 

on si.fineId=caa.FineId

left join dbo.invoicing inv 

on inv.fineId=caa.FineId

left join dbo.makeCollections mc 

on mc.fineId=inv.fineId

where 1=1

${if(len(text_productCode)==0,"","AND si.productCode ='"+text_productCode+"'")}

${if(len(text_documentNo)==0,"","AND si.documentNo ='"+text_documentNo+"'")}

${if(len(text_purchaserUnit)==0,"","AND si.purchaserUnit ='"+text_purchaserUnit+"'")}

${if(len(text_orderNo)==0,"","AND si.orderNo ='"+text_orderNo+"'")}  

  • 2关注人数
  • 243浏览人数
  • 最后回答于:2022-12-1 10:37
    请选择关闭问题的原因
    确定 取消
    返回顶部