yl
2022-12-02 6ca25153c58c6c751a0316216f8b1ef0d8007ad1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
<!DOCTYPE html>
<html>
<head>
    <title>WEB报表客户端使用教程(WebSocket) - 锐浪WEB报表</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="Description" content="锐浪HTML5报表应用WEB报表客户端实现打印与数据导出。" />
    <meta name="Keywords" content="WEB报表,WEB打印,HTML5报表,WEB报表客户端" />
    <script src="grwebapp.js"></script>
    <script language="javascript" type="text/javascript">
        function window_onload() {
            //*这句特别重要*:只有在WEB报表客户端程序后,才能进行WebSocket通讯
            //如果WEB报表客户端程序为开机自启动,以下调用应该去掉。更多说明请参考帮助“WEB报表(B/S报表)->WEB报表客户端->部署与安装”部分中与谷歌Chrome浏览器的相关说明
            webapp_urlprotocol_startup(); //启动WEB报表客户端程序,以便侦听接受 WebSocket 数据
        }
 
        //消息响应函数,接受WEB报表客户端执行完打印与数据导出等任务回发的消息
        //如果不要响应任务执行完消息,此函数可以不用定义,直接去掉即可。
        function webapp_onmessage(event) {
            var message = JSON.parse(event.data);
 
            //在向打印机发送完打印数据后响应的消息,在函数体中完成自己的任务
            function OnPrintEnd() {
                var msg = "报表已经打印,输出打印机:" + message.PrinterName;
                if (message.reportid) {
                    msg += "\r\nreportid = " + message.reportid;
                }
                alert(msg);
            }
 
            //在执行了数据导出任务后响应的消息,在函数体中完成自己的任务
            function OnExportEnd() {
                var msg = "数据导出已经完成,导出文件:" + message.FileName;
                if (message.reportid) {
                    msg += "\r\nreportid = " + message.reportid;
                }
                alert(msg);
            }
 
            //alert(event.data);
            if (message.event == "PrintEnd") {
                OnPrintEnd();
            }
            else if (message.event == "ExportEnd") {
                OnExportEnd();
            }
        }
    </script>
</head>
<body onload="window_onload()">
    <h1>锐浪WEB报表客户端使用教程</h1>
    <h3><a href="webapp-overview.htm">关于锐浪WEB报表客户端</a></h3>
    
    <h3>特别提示:以下链接点击无响应,请下载安装<a href="webapp-download.htm">WEB报表客户端</a></h3>
 
    <h3>起步例子</h3>
    <p><a href='javascript:ws_ajax_preview();'>打印预览(AJAX)</a>通过AJAX方式获取报表模板与报表数据</p>
    <script language="javascript" type="text/javascript">
        function ws_ajax_preview() {
            //参数具体说明请参考帮助文档中的“WEB报表(B/S报表)->WEB报表客户端->启动参数说明”部分
            var args = {
                report: urlAddRandomNo("../grf/产品流传单A5.grf"),
                data:
                {
                    "recordset": [
                        {
                            "seq": "1",
                            "wo_code": "PO202206280001_1",
                            "partcode": "1403-001-0001",
                            "partname": "圆钢F45MnVSφ20",
                            "partspec": "φ20",
                            "routename": "测试工艺路线1",
                            "orderqty": 166,
                            "lm_user": "Admin",
                            "lm_date": "2022-06-30",
                            "stepcode": "Step01",
                            "stepname": "测试工序一",
                            "plan_qty1": 166,
                            "good_qty": 0,
                            "ng_qty": 0,
                            "stepqrcode":"PO202206280001_1;Step01"
                        },
                        {
                            "seq": "2",
                            "wo_code": "PO202206280001_1",
                            "partcode": "1403-001-0001",
                            "partname": "圆钢F45MnVSφ20",
                            "partspec": "φ20",
                            "routename": "测试工艺路线1",
                            "orderqty": 166,
                            "lm_user": "Admin",
                            "lm_date": "2022-06-30",
                            "stepcode": "Step02",
                            "stepname": "测试工序二",
                            "plan_qty1": 166,
                            "good_qty": 0,
                            "ng_qty": 0,
                            "stepqrcode": "PO202206280001_1;Step02"
                        }
                    ]
                },
                //data: "../data/DataCenter.ashx?data=Customer",
                //dataUrlParams: "如果data参数为URL,且其需要额外的参数数据,则定义在此参数中", //例子演示不需要,所以注释掉
                type: "preview",
            };
 
            webapp_ws_ajax_run(args);
        }
    </script>
 
    <p> <a href='javascript:ws_ajax_print();'>打印(AJAX)</a>通过AJAX方式获取报表模板与报表数据</p>
    <script language="javascript" type="text/javascript">
        function ws_ajax_print() {
            var args = {
                type: "preview",//print
                //showOptionDlg: true, //如果不显示打印对话框而直接打印,将此行注释去掉即可
                report: urlAddRandomNo("../grf/报工产出标签.grf"),
                //data: "../data/DataCenter.ashx?data=Customer"
                data:
                {
                    "recordset": [
                        {
                            "wo_code": "PO202206280001_1",
                            "partcode": "1403-001-0001",
                            "partname": "圆钢F45MnVSφ20",
                            "qty": "100",
                            "next_stepname": "测试工序2",
                            "qrcode": "PO202206280001_1;Step02"
                        },
                        {
                            "wo_code": "PO202206280001_1",
                            "partcode": "1403-001-0001",
                            "partname": "圆钢F45MnVSφ20",
                            "qty": "100",
                            "next_stepname": "测试工序2",
                            "qrcode": "PO202206280001_1;Step02"
                        }
                    ]
                }
            };
 
            webapp_ws_ajax_run(args);
        }
    </script>
 
 
   
 
   
   
 
</body>
</html>