ricky9958 发表于 2021-4-28 08:57:34

我想在WebDesigner_MVC里面添加jsviewer的预览

本帖最后由 Crystal.Li 于 2021-4-28 15:52 编辑

我想在WebDesigner_MVC里面添加jsviewer的预览,但是这个 jsviewer的路径怎么设置到我WebDesigner_MVC的报表路径呢,我用了WebDesigner_MVC的路径,取到的值一直是jsviewer下面的Reports目录




Crystal.Li 发表于 2021-4-28 14:34:44

您好,这个问题我们有同事微信联系您,帮您看了~

ricky9958 发表于 2021-4-28 14:39:10

你好,这个问题我解决了,但是现在碰到一个传参数的问题,我在jsviewer传了参数
function loadViewer() {
            viewer = GrapeCity.ActiveReports.JSViewer.create({
                element: '#viewerContainer',
                reportID: '@reportId',
                reportParameters: [{ name: 'ReportParameter1', value: ["@ViewBag.MainId"] }],
                settings: {
                  zoomType: 'FitPage'
                },
            });
      }控制器加了

      
      public ActionResult Views(string id, string mainid)
      {
            var theme = Request.QueryString["theme"] ?? "blue";
            if (string.IsNullOrWhiteSpace(id)) return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            ViewBag.Id = id;
            ViewBag.MainId = mainid;
            ViewBag.Theme = theme;
            return View("Index");
      }在线设计器的SQL查询语句为

SELECT c.YanFaNo 项目编号1,c.YanpPinNo样单编号1,a.
      ,a. as 复制唯一号
      ,a. as 是否复制单
      ,a. as 生产通知单id
      ,a. as 项目编号
      ,a.as 项目名称
      ,a.as 存档编号
      ,a. as 批次号
      ,a.as 品名
      ,a.as 数量
      ,a.as 牌号
      ,a.as 色号
      ,a.as 客户名称
      ,a.as 客户编号
      ,a.as 样品审核时间
      ,a.
      ,a. as 申请时间
      ,a.as 审核时间
      ,a.
      ,a.
      ,a.
      ,a.
      ,a.
      ,a.as 机台号
      ,a.as 日期
      ,a.as 实验目的
      ,a.as 是否自研
      ,a.as 是否送样
      ,a.as 技术指标
      ,a.as 配方A文本
      ,a.as 配方B文本
      ,a.as 配方C文本
      ,a.as 配方D文本
      ,a.as 配方E文本
      ,a.as 配方A汇总
      ,a.as 配方B汇总
      ,a.as 配方C汇总
      ,a.as 配方D汇总
      ,a.as 配方E汇总
      ,a.as 实验A汇总
      ,a.as 实验B汇总
      ,a.as 实验C汇总
      ,a.as 实验D汇总
      ,a.as 实验E汇总
      ,a.as 工艺混料
      ,a.as 基础工艺机头
      ,a.as 实际工艺1区
      ,a.as 实际工艺2区
      ,a.as 实际工艺3区
      ,a.as 实际工艺4区
      ,a.as 实际工艺5区
      ,a.as 实际工艺6区
      ,a.as 实际工艺7区
      ,a.as 实际工艺8区
      ,a.as 实际工艺9区
      ,a.as 实际工艺10区
      ,a.as 实际工艺转速
      ,a.as 实际工艺玻纤数
      ,a.as 实际工艺主料
      ,a.as 实际工艺电流
      ,a.as 实际工艺真空
      ,a.as 实际工艺滤网
      ,a.as 实定工艺机头
      ,a.as 设定工艺1区
      ,a.as 设定工艺2区
      ,a.as 设定工艺3区
      ,a.as 设定工艺4区
      ,a.as 设定工艺5区
      ,a.as 设定工艺6区
      ,a.as 设定工艺7区
      ,a.as 设定工艺8区
      ,a.as 设定工艺9区
      ,a.as 设定工艺10区
      ,a.as 设定工艺转速
      ,a.as 设定工艺玻纤数
      ,a.as 设定工艺主料
      ,a.as 设定工艺电流
      ,a.as 设定工艺真空
      ,a.as 设定工艺滤网
      ,a.
      ,a.as 定方值
      ,a.as 确认方值
      ,a.as 实验pqcid
      ,a.
      ,a.as 送样时间
      ,a.as 送样备注
      ,a.as 审核人
      ,b.as 用户名
      
FROM .. as a left join.. as bon a.F_CreateUserId=b.F_UserId inner join..ProductionNotice c
on   a.ProductionNoticeId = c.Id
   where a.id=@Id

预览的时候,没有任何数据 ,说明这个ID没有传进去

Crystal.Li 发表于 2021-4-28 15:01:19

本帖最后由 Crystal.Li 于 2021-4-28 15:02 编辑

ricky9958 发表于 2021-4-28 14:39
你好,这个问题我解决了,但是现在碰到一个传参数的问题,我在jsviewer传了参数
控制器加了
在线设计器的 ...
您这个值是个变量吧:@ViewBag.MainId
如果按照["@ViewBag.MainId"] 这个写法,是不是就把它当作一个字符串传过去了呢
变量要按照这种模板字符串的方式写呢:[`${@ViewBag.MainId}`];
后面有问题需要重新开贴哦~~~

ricky9958 发表于 2021-4-28 15:29:08

已经搞定了,谢谢,用这样写就行了
viewer = GrapeCity.ActiveReports.JSViewer.create({
                element: '#viewerContainer',
                reportID: '@reportId',
                reportParameters: [{ name: 'Id', values: ['@ViewBag.MainId'] }],
                settings: {
                  zoomType: 'FitPage'
                },
            });

Crystal.Li 发表于 2021-4-28 15:52:04

ricky9958 发表于 2021-4-28 15:29
已经搞定了,谢谢,用这样写就行了

好的,解决就行:hjyzw:
页: [1]
查看完整版本: 我想在WebDesigner_MVC里面添加jsviewer的预览