急问:关于水晶报表的问题!100分相送!(分不够在加)

时间:2022-04-16 21:25:53
各位同仁好,本人要做个打印的程序,用的是日文VB6和SQL Server2000 数据库,
打印用水晶报表,本人不太明白,想请各位帮帮忙,谢拉。
1、数据库中的日期格式为2004-02-02,可不可以在水晶报表中直接转换成16/02/02的格式??怎么样转换??
2、水晶报表的标题,日期,要通过程序传递参数,如何做??
具体的步骤??最好给一段代码。
3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。

12 个解决方案

#1


学学就知道了!

#2


日本人可惡、可惡!!!
不想講!

#3


做日期显示格式设置在报表设计阶段进行.选择对象,然后设置对象格式,如果该对象绑定到日期类型的数据,那么打开的对话框将允许你进行日期时间格式设置.按照提示一步步做就是了.

另外说明一点.我讨厌日本人.

    strSQL = "SELECT Product_id,Product_Name,product_unit,produce_num,Product_Price," _
            & "Product_Discount,Product_Price2,Product_Money" _
            & " FROM (select 0 AS seq, b.Product_id," _
            & "LEFT(LEFT(b.Product_name,20-LEN(b.model_name)) + b.model_name,20) AS Product_Name," _
            & "b.product_unit," _
            & "a.produce_num," _
            & "b.product_retail_price AS Product_Price," _
            & "a.product_discount AS Product_Discount," _
            & "a.produce_price AS Product_Price2," _
            & "a.get_money AS Product_Money from " _
            & "shop_sale_info_detail_tb a,shop_sale_product_tb b" _
            & " WHERE a.product_id = b.product_id" _
            & " AND a.sale_dh='" & ListLine & "' "
    strSQL = strSQL & "UNION ALL select TOP 1 1,'合      计'," _
            & "''," _
            & "''," _
            & "(SELECT SUM(produce_num) FROM shop_sale_info_detail_tb WHERE sale_dh='" & ListLine & "')," _
            & "NULL," _
            & "NULL," _
            & "NULL," _
            & "(SELECT sum(get_money) FROM shop_sale_info_detail_tb WHERE sale_dh='" & ListLine & "') " _
            & " FROM shop_sale_info_tb a WHERE a.sale_dh='" & ListLine & "') ORDER BY seq ASC"
    rs.ActiveConnection = gSysConnObj
    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenKeyset
    rs.Open strSQL
    Dim CRXApplication As CRAXDRT.Application
    Dim CRXReport As CRAXDRT.Report
    Set CRXApplication = CreateObject("CrystalRuntime.Application")
    Set CRXReport = CRXApplication.OpenReport(App.Path & "\db\salesheet.rpt")
    '这里就是传递的日期参数
    Call CRXReport.ParameterFields(1).SetCurrentValue(CDate(sale_date), 16)

    Call CRXReport.ParameterFields(2).SetCurrentValue(CStr(ListLine), 12)
    Call CRXReport.ParameterFields(3).SetCurrentValue(CStr(gAddr), 12)
    Call CRXReport.ParameterFields(4).SetCurrentValue(CStr(gUserName), 12)
    Call CRXReport.ParameterFields(5).SetCurrentValue(CStr(cmbPaymentType.Text), 12)
    Call CRXReport.ParameterFields(6).SetCurrentValue(CStr(gTele), 12)
    Call CRXReport.ParameterFields(7).SetCurrentValue(CStr(gLineTitle), 12)
    CRXReport.Database.SetDataSource rs
    CRXReport.ReadRecords
    CRXReport.PrintOut False
    rs.Close
    Set rs = Nothing

#4


呵呵,樓主,我來回答斧一個問題,試一試
2、水晶报表的标题,日期,要通过程序传递参数,如何做??
具体的步骤??最好给一段代码。

不用代碼了,直接把參數槓放上去就行了,View-->Field Explorer,這樣你想用的參數就顯示出來了。

#5


谢谢各位,偶作的是对日开发。

还有问题:
3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。

#6


这些都是很基本的问题呀!买本书看看就能够解决了!真的!我不骗你!

#7


研究研究,水晶报表即知!!

#8


学习

#9


关注

#10


down

#11


水晶报表的标题,日期,要通过程序传递参数,如何做??
参数如何在水晶报表里设置??我没怎么用过水晶报表,望指点!
3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。

#12


谢谢各位,传递参数的问题已经解决。

还有下边的问题:

3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。

#1


学学就知道了!

#2


日本人可惡、可惡!!!
不想講!

#3


做日期显示格式设置在报表设计阶段进行.选择对象,然后设置对象格式,如果该对象绑定到日期类型的数据,那么打开的对话框将允许你进行日期时间格式设置.按照提示一步步做就是了.

另外说明一点.我讨厌日本人.

    strSQL = "SELECT Product_id,Product_Name,product_unit,produce_num,Product_Price," _
            & "Product_Discount,Product_Price2,Product_Money" _
            & " FROM (select 0 AS seq, b.Product_id," _
            & "LEFT(LEFT(b.Product_name,20-LEN(b.model_name)) + b.model_name,20) AS Product_Name," _
            & "b.product_unit," _
            & "a.produce_num," _
            & "b.product_retail_price AS Product_Price," _
            & "a.product_discount AS Product_Discount," _
            & "a.produce_price AS Product_Price2," _
            & "a.get_money AS Product_Money from " _
            & "shop_sale_info_detail_tb a,shop_sale_product_tb b" _
            & " WHERE a.product_id = b.product_id" _
            & " AND a.sale_dh='" & ListLine & "' "
    strSQL = strSQL & "UNION ALL select TOP 1 1,'合      计'," _
            & "''," _
            & "''," _
            & "(SELECT SUM(produce_num) FROM shop_sale_info_detail_tb WHERE sale_dh='" & ListLine & "')," _
            & "NULL," _
            & "NULL," _
            & "NULL," _
            & "(SELECT sum(get_money) FROM shop_sale_info_detail_tb WHERE sale_dh='" & ListLine & "') " _
            & " FROM shop_sale_info_tb a WHERE a.sale_dh='" & ListLine & "') ORDER BY seq ASC"
    rs.ActiveConnection = gSysConnObj
    rs.CursorLocation = adUseClient
    rs.CursorType = adOpenKeyset
    rs.Open strSQL
    Dim CRXApplication As CRAXDRT.Application
    Dim CRXReport As CRAXDRT.Report
    Set CRXApplication = CreateObject("CrystalRuntime.Application")
    Set CRXReport = CRXApplication.OpenReport(App.Path & "\db\salesheet.rpt")
    '这里就是传递的日期参数
    Call CRXReport.ParameterFields(1).SetCurrentValue(CDate(sale_date), 16)

    Call CRXReport.ParameterFields(2).SetCurrentValue(CStr(ListLine), 12)
    Call CRXReport.ParameterFields(3).SetCurrentValue(CStr(gAddr), 12)
    Call CRXReport.ParameterFields(4).SetCurrentValue(CStr(gUserName), 12)
    Call CRXReport.ParameterFields(5).SetCurrentValue(CStr(cmbPaymentType.Text), 12)
    Call CRXReport.ParameterFields(6).SetCurrentValue(CStr(gTele), 12)
    Call CRXReport.ParameterFields(7).SetCurrentValue(CStr(gLineTitle), 12)
    CRXReport.Database.SetDataSource rs
    CRXReport.ReadRecords
    CRXReport.PrintOut False
    rs.Close
    Set rs = Nothing

#4


呵呵,樓主,我來回答斧一個問題,試一試
2、水晶报表的标题,日期,要通过程序传递参数,如何做??
具体的步骤??最好给一段代码。

不用代碼了,直接把參數槓放上去就行了,View-->Field Explorer,這樣你想用的參數就顯示出來了。

#5


谢谢各位,偶作的是对日开发。

还有问题:
3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。

#6


这些都是很基本的问题呀!买本书看看就能够解决了!真的!我不骗你!

#7


研究研究,水晶报表即知!!

#8


学习

#9


关注

#10


down

#11


水晶报表的标题,日期,要通过程序传递参数,如何做??
参数如何在水晶报表里设置??我没怎么用过水晶报表,望指点!
3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。

#12


谢谢各位,传递参数的问题已经解决。

还有下边的问题:

3、打印是带表格的形式,页数如何控制??最好给一段代码。
4、分组和统计怎么做?包括页脚的合计和横行的合计。并且要将页脚的合计放在题头位置。