【问题标题】:How to pass "Month" and "Year" Only parameter from datetimepicker to crystal report?如何将“月”和“年”参数从 datetimepicker 传递到水晶报表?
【发布时间】:2015-05-28 18:51:31
【问题描述】:

早上好,我正在为这个水晶报表问题苦苦挣扎,我的报表上有公式:

cstr(monthname(month({kwitansi1.tgl_kwitansi})))+" - " +cstr(year({kwitansi1.tgl_kwitansi}),0)

它正在工作并显示我想要的数据,就像这样:

May-2015          $1000
June-2015         $600
July-2015         $250
August-2015       $1500

我有 2 个参数,“?month1”和“?Month2”,当我预览时说字段名称未知。

这些参数适用于 datetimepicker1 和 datetimepicker2。 所以基本上我想展示,例如: 如果我点击 datetimepicker1 然后用一些随机日期填充它,但月份是 2015 年 5 月,然后我点击 datetimepicker2 也用随机日期填充它,但月份是 2015 年 8 月,然后我点击“打印”按钮,水晶报告应该显示上面那些我想要的数据。

我在 vb.form 上使用它来将参数传递给 Crystal Report。

 objrepdoc = New CRLaporanPendapatanPerbulan
        objrepdoc.SetParameterValue("month1", Format(FormCetakLaporanPendapatan.datetimepicker1.Value, "MMMM-YYYY"))
        objrepdoc.SetParameterValue("month2", Format(FormCetakLaporanPendapatan.datetimepicker2.Value, "MMMM-YYYY"))
        objrepdoc.RecordSelectionFormula = "{kwitansi1.tgl_kwitansi} >= #" & Format(FormCetakLaporanPendapatan.datetimepicker1.Value, "MMMM-YYYY") & "# And {kwitansi1.tgl_kwitansi} <= #" & Format(FormCetakLaporanPendapatan.datetimepicker2.Value, "MMMM-YYYY") & "#"

我知道这些代码是错误的,:( 因为如果我选择任何月份,水晶报告会显示所有已保存在 date (kwitansi1.tgl_kwitansi) 字段中的数据。我想要的是 CR 是仅显示 VB.Form 使用 datetimepicker1 和 datetimepicker2 发送的指定数据

【问题讨论】:

    标签: vb.net crystal-reports


    【解决方案1】:

    由于没有人回答我的问题,我将回答这个问题以供其他有同样问题的人参考。

    所以,简单的部分实际上是:

    • 制作2个参数,第一个为起始参数,第二个为结束参数,基本上我们会做一个“In between”代码。
    • 之后,右键单击打印区域(到处)并单击报告>选择公式>记录>出现的对话框>复制粘贴此{tableA.date_table} in {?parameter1} to {?parameter2}
    • 保存它们

    在 windows 窗体上使用这个:

    • 制作 2 个日期时间选择器
    • 将此复制粘贴到表单上:

    Dim objrepdoc As New ReportDocument

     `objrepdoc = New CrystalReport1
            objrepdoc.SetParameterValue("parameter1", Format(Form1.DTdate1.Value, "yyyy-MM-dd"))
            objrepdoc.SetParameterValue("parameter2", Format(Form1.DTdate2.Value, "yyyy-MM-dd"))
            objrepdoc.RecordSelectionFormula = "{tableA.date_table} >= #" & Format(Form1.DTdate1.Value, "yyyy-MM-dd") & "# And {tableA.date_table} <= #" & Format(Form1.DTdate2.Value, "yyyy-MM-dd") & "#"`
    

    注意:datetimepicker 也可以显示日期,您可以修改它,使 datetimepicker 只显示月份和年份。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多