源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

水晶易表调用C#的WebService,返回数据集合的应用分析

  • 时间:2020-03-18 23:31 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:水晶易表调用C#的WebService,返回数据集合的应用分析
1. 水晶易表不能识别WS接口返回的DataTable或DataSet数据类型,会提示“无法加载URL” 3. C#调用Oracle的Package,并返回数据列表 2. 经查证,可以接受string类型的,如果需要返回数据列表,那么需要借助数组来返回,代码实现如下:
[u]复制代码[/u] 代码如下:
public WeekSale_Table GetData(string skc1, string skc2, string week1, string week2, string week3, string week4)         {             try             {          //C#调用Oracle的包,返回数据列表                 OracleConnection orcn = new OracleConnection(ConfigurationManager.AppSettings["SAPBI"].ToString());                 OracleCommand cmd = new OracleCommand("pkg_cx_Productlifecycle.skcweeksale", orcn);                 cmd.CommandType = CommandType.StoredProcedure;                 OracleParameter ip0 = new OracleParameter("skc1", OracleType.VarChar);                 OracleParameter ip1 = new OracleParameter("skc2", OracleType.VarChar);                 OracleParameter ip2 = new OracleParameter("week1", OracleType.VarChar);                 OracleParameter ip3 = new OracleParameter("week2", OracleType.VarChar);                 OracleParameter ip4 = new OracleParameter("week3", OracleType.VarChar);                 OracleParameter ip5 = new OracleParameter("week4", OracleType.VarChar);                 ip0.Value = skc1;                 ip1.Value = skc2;                 ip2.Value = week1;                 ip3.Value = week2;                 ip4.Value = week3;                 ip5.Value = week4;                 cmd.Parameters.Add(ip0);                 cmd.Parameters.Add(ip1);                 cmd.Parameters.Add(ip2);                 cmd.Parameters.Add(ip3);                 cmd.Parameters.Add(ip4);                 cmd.Parameters.Add(ip5);                 OracleParameter p1 = new OracleParameter("p_rc", OracleType.Cursor);                 p1.Direction = System.Data.ParameterDirection.Output;                 cmd.Parameters.Add(p1);                 OracleDataAdapter command = new OracleDataAdapter(cmd);                 DataSet ds = new DataSet();                 command.Fill(ds, "Table");                 DataTable dt = ds.Tables["Table"];                 WeekSale_Table wt = new WeekSale_Table();                 wt.row = new WeekSale_Row[dt.Rows.Count];                 int rcount = dt.Rows.Count;                 for (int i = 0; i < rcount; i++)                 {                     DataRow dr = dt.Rows[i];                     WeekSale_Row row = new WeekSale_Row();                     row.DISCOUNT1 = dr["DISCOUNT1"].ToString();                     row.DISCOUNT2 = dr["DISCOUNT2"].ToString();                     row.FCALCSUMS1 = dr["FCALCSUMS1"].ToString();                     row.FCALCSUMS2 = dr["FCALCSUMS2"].ToString();                     row.NUMS1 = dr["NUMS1"].ToString();                     row.NUMS2 = dr["NUMS2"].ToString();                     row.SKC1 = dr["SKC1"].ToString();                     row.SKC2 = dr["SKC2"].ToString();                     row.WEEK = dr["WEEK"].ToString();                     row.WEEKS = dr["WEEKS"].ToString();                     wt.row[i] = row;                 }                 return wt;             }             catch             {                 return null;             }         }
[u]复制代码[/u] 代码如下:
//定义Row,一行 public class WeekSale_Row     {         public string WEEKS;         public string SKC1;         public string SKC2;         public string FCALCSUMS1;         public string FCALCSUMS2;         public string NUMS1;         public string NUMS2;         public string DISCOUNT1;         public string DISCOUNT2;         public string WEEK;     } //定义Table public class WeekSale_Table     {         public WeekSale_Row[] row;     }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部