//连接视图名称,视图在数据库写好
<%@ WebHandler Language="C#" Class="GetwmsReport" %> using System;
using System.Drawing;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Web;
using System.Text;
using CloudSaaS.DAL;
using CloudSaaS.Model;
using Newtonsoft.Json;
using CloudSaaS.Common;
using CloudSaaS.DB.Handler;
using Newtonsoft.Json.Linq; public class GetwmsReport : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{ var json = string.Empty;
var req = context.Request["req"].Trim();
string tenantId = HttpContext.Current.Request.Cookies["tenantID"].Value;
switch(req){
case "GetDeliverSum":
json = GetDeliverSum(tenantId, context);//当日发货汇总
break;
case "GetDeliverDetail":
json = GetDeliverDetail(tenantId, context);//当日发货明细
break;
case "GetReceiptSum":
json = GetReceiptSum(tenantId, context);//当日收获汇总
break;
case "GetReceiptDetail":
json = GetReceiptDetail(tenantId, context);//当日收货明细
break; }
context.Response.ContentType = "text/json";
context.Response.Write(json);
context.Response.End();
context.Response.Close(); }
/*--当日收货明细:UV_SYSWMSREPORT_1 --当日发货明细:UV_SYSWMSREPORT_2 --当日收货汇总:UV_SYSWMSREPORT_3 --当日发货汇总:UV_SYSWMSREPORT_4*/
/// <summary>
///当日发货汇总
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日发货汇总</returns>
public string GetDeliverSum(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_4 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
// obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
} /// <summary>
///当日发货明细
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日发货明细</returns>
public string GetDeliverDetail(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_2 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
//obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
}
/// <summary>
///当日收货汇总
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日收货汇总</returns>
public string GetReceiptSum(string tenantId, HttpContext context)
{
DataTable dt = new DataTable();
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_3 where 1=1 "); DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
dt = ds.Tables[0];
// obj.code = "200";
// obj.msg = "操作成功!";
}
return Newtonsoft.Json.JsonConvert.SerializeObject(dt);
}
/// <summary>
///当日收货明细
/// </summary>
/// <param name="BillNo "></param>
/// <returns>当日收货明细</returns>
public string GetReceiptDetail(string tenantId, HttpContext context)
{
dynamic obj = new System.Dynamic.ExpandoObject();
obj.code = "1000";
obj.msg="提交时出现错误!";
try {
// DataTable dt = new DataTable();
// dalSYSWMSInputBillHead dal = new dalSYSWMSInputBillHead(tenantId);
StringBuilder strSql = new StringBuilder();
string hetong = context.Request["hetong"]; //摘要
string product = context.Request["product"]; //文件名称
string project = context.Request["project"];
strSql.Append("select * from UV_SYSWMSREPORT_1 where 1=1 ");
/* if (!string.IsNullOrEmpty(hetong))
{
strSql.AppendFormat(" and 合同编号 like '%{0}%'",hetong);
}
// strSql.AppendFormat(" order by 序号 desc");
*/
DataSet ds = CloudSaaS.DB.Handler.CloudDB.GetHandler(tenantId).Query(strSql.ToString());
if (ds.Tables.Count > 0)
{
obj.data = ds.Tables[0];
obj.code = "200";
obj.msg = "操作成功!";
}
}
catch (Exception ex)
{
string strMsg = string.Format("提交时出现错误{0}", ex.Message);
obj.code = "1000";
obj.msg = strMsg;
}
// return Newtonsoft.Json.JsonConvert.SerializeObject(obj);
return JsonConvert.SerializeObject(obj);
} public bool IsReusable
{
get
{
return false;
}
} }

C# 报表接口样例,简单实用的更多相关文章

  1. 【gRPC】C++异步服务端优化版,多服务接口样例

    官方的C++异步服务端API样例可读性并不好,理解起来非常的费劲,各种状态机也并不明了,整个运行过程也容易读不懂,因此此处参考网上的博客进行了重写,以求顺利读懂. C++异步服务端实例,详细注释版 g ...

  2. Ajax调用WebService接口样例

    在做手机端h5的应用时,通过Ajax调用http接口时没啥问题的:但有些老的接口是用WebService实现的,也来不及改成http的方式,这时通过Ajax调用会有些麻烦,在此记录具体实现过程.本文使 ...

  3. go语言多态接口样例

    感觉比java玄幻啊~~~ package main import ( "fmt" ) type notifier interface{ notify() } type user ...

  4. 怎样把报表放到网页中显示(Web页面与报表简单集成样例)

    1.问题描写叙述 如今用户开发的系统基本上趋向于BS架构的浏览器/server模式.这些系统可能由不同的语言开发.如HTML.ASP.JSP.PHP等.因此须要将制作好的报表嵌入到这些页面中. Fin ...

  5. 最简单的视音频播放演示样例4:Direct3D播放RGB(通过Texture)

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  6. VC6 鼠标钩子 最简单样例

    Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的.而钩子是Windows系统中非常重要的系统接口,用它能够截获并处理送给其它应用程序的消息,来完毕普通应用程序 ...

  7. 最简单的视音频播放演示样例8:DirectSound播放PCM

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  8. 最简单的视音频播放演示样例3:Direct3D播放YUV,RGB(通过Surface)

    ===================================================== 最简单的视音频播放演示样例系列文章列表: 最简单的视音频播放演示样例1:总述 最简单的视音频 ...

  9. JBoss 系列九十六:JBoss MSC - 简介及一个简单演示样例

    什么是 JBoss MSC JBoss MSC 即 JBoss Modular Service Container,是第三代 JBoss 产品 JBoss 7和WildFfly的内核,JBoss MS ...

  10. 百度地图 Android SDK - 检索功能使用的简单演示样例

    百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...

随机推荐

  1. Flutter异常监控 - 贰 | 框架Catcher原理分析

    前言 在给 Flutter 应用做异常监控的时候,一开始我是拒绝滴,如果不考虑 Flutter Engine 和 native 侧的监控,用我另一篇文章中不得不知道的 Flutter 异常捕获知识点 ...

  2. [cocos2d-x]从源码角度思考convertToWorldSpace()与convertToWorldSpaceAR()坐标系的转换

    convertToWorldSpace() 话不多说,先上源码,之后再慢慢讲解: (5和6图截图的时候重复了,这里就不弄出来了) 只要通过图1到图8中我写的注释进行分析(不懂的地方可以自己去翻一下co ...

  3. 线段树套线性基——题解P4839 P哥的桶

    文章历史 2022-08-03: 文章初稿,由于对算法介绍过于少而被管理员打回重造. 2020-08-06:将算法介绍进行扩写,并删除了一些可有可无的内容或玩梗内容. 管理员审核题解辛苦了. 简要题意 ...

  4. C++Day09 深拷贝、写时复制(cow)、短字符串优化

    一.std::string 的底层实现 1.深拷贝 1 class String{ 2 public: 3 String(const String &rhs):m_pstr(new char[ ...

  5. windows系统批量转换CRLF和LF格式代码,解决eslint报错Delete `␍`解决'unix2dos' is not recognized as an internal or external command

    每天都要开心(▽)哇: 最近写代码,工程配置为lf格式,但是拉取代码后,代码都变成了CRLF,于是满屏幕报错 在做跨平台开发移植的时候,最常见的问题就是不同操作系统的换行不同(例如,Windows 上 ...

  6. 在Typescript项目中,使用ESLint和Prettier,以及解决保存代码后ESLint配置冲突问题

    首先,检查项目中根目录.eslintrc.js文件,该文件中定义了ESLint的基础配置,找到其中的rules 例如: const prettierConfig = require('./.prett ...

  7. DLL的两种加载方式

    案例简述 在某项目中,需要使用两个不同版本的HCNetSDK库,我们通常使用的静态加载DLL的方式不能满足该需求,故用到动态加载DLL的方式. 背景技术及术语解释 静态加载:也称隐式调用,指在运行程序 ...

  8. 【题解】[LNOI2022] 盒

    题目分析: 我们可以对每一条边单独计算贡献,这样会发现贡献很好算: \[ans = \sum_{i=0}^{n-1} w_i \sum_{j=0}^S |j - s_i| \binom{i+j-1}{ ...

  9. 结对项目总结 -- 基于Qt开发的win10桌面应用

    担任角色 在这次结对项目中,由于采用了我的个人项目作为参考,所以我继续担任后端开发的角色. 开发环境 前端采用Qt Creator4.13.2 (Community) 后端采用C++ 如何复用个人项目 ...

  10. @EnableDiscoveryClient和@EnableEurekaClient springboot3.x

    @EnableDiscoveryClient和@EnableEurekaClient 将一个微服务注册到Eureka Server(或其他服务发现组件,例如Zookeeper.Consul等)的步骤 ...