UIJ030070.cs 74 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Collections;
  10. using CoreFS.CA06;
  11. using System.IO;
  12. using Microsoft.Office.Interop.Excel;
  13. using ET;
  14. namespace Core.LZMes.Client.UIJ
  15. {
  16. public partial class UIJ030070 : FrmBase
  17. {
  18. public UIJ030070()
  19. {
  20. InitializeComponent();
  21. }
  22. public override void ToolBar_Click(object sender, string ToolbarKey)
  23. {
  24. switch (ToolbarKey)
  25. {
  26. case "Query":
  27. this.DoQuery();
  28. break;
  29. case "Save":
  30. this.DoSave();
  31. break;
  32. case "Export":
  33. this.DoExport();
  34. break;
  35. case "Receive":
  36. this.DoReceive();
  37. break;
  38. case "Exit":
  39. this.Close();
  40. break;
  41. }
  42. }
  43. /// <summary>
  44. /// 查询发货实绩
  45. /// </summary>
  46. private void DoQuery()
  47. {
  48. string dlivDirNo = this.textBox3.Text;
  49. string shipProgCd = this.ultraComboEditor2.SelectedIndex < 0 ? "" : this.ultraComboEditor2.Value.ToString();
  50. string trnfDTime = this.ultraDateTimeEditor1.Value == null ? "" : this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  51. string coilProgCd = "";
  52. if (this.ultraComboEditor2.SelectedIndex >= 0)
  53. {
  54. if (ultraComboEditor2.Value.ToString().Equals("0"))
  55. {
  56. trnfDTime = "";
  57. coilProgCd = "YFA";
  58. }
  59. else
  60. {
  61. coilProgCd = "YFF";
  62. if (ultraDateTimeEditor1.Value == null)
  63. {
  64. MessageBox.Show("需要选择出库时间,否则数据量过大,不便于查找!");
  65. return;
  66. }
  67. }
  68. }
  69. else
  70. {
  71. MessageBox.Show("状态区分必须选择,否则导致数据量过大!");
  72. return;
  73. }
  74. this.dataSet1.Tables[0].Clear();
  75. CoreClientParam ccp = new CoreClientParam();
  76. ccp.ServerName = "UIJ.UIJ03.UIJ030070";
  77. ccp.MethodName = "queryShippingResult";
  78. ccp.ServerParams = new Object[] { dlivDirNo, trnfDTime, shipProgCd };
  79. ccp.SourceDataTable = this.dataSet1.Tables[0];
  80. this.ExecuteQueryToDataTable(ccp, CoreInvokeType.Internal);
  81. DataRowCollection drs = dataSet1.Tables[0].Rows;
  82. for (int i = 0; i < drs.Count; i++)
  83. {
  84. ultraGrid1.Rows[i].Cells[0].Value = false;
  85. }
  86. }
  87. /// <summary>
  88. ///
  89. /// </summary>
  90. private void DoSave()
  91. {
  92. if (this.ultraDateTimeEditor1.Value == null)
  93. {
  94. MessageBox.Show("出库时间信息不能为空,请选择相应的出库时间!");
  95. return;
  96. }
  97. String tftime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  98. String ntime = DateTime.Now.ToString("yyyyMMdd");
  99. if (tftime != ntime)
  100. {
  101. if (MessageBox.Show("所选发运日期(" + tftime + ")不属于今天(" + ntime + "),是否继续发运?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
  102. {
  103. return;
  104. }
  105. }
  106. Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  107. for (int i = 0; i < rs.Count; i++)
  108. {
  109. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  110. {
  111. string coilWgt = rs[i].Cells["COIL_WGT"].Text;
  112. string transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text;
  113. if (coilWgt.Equals(""))
  114. {
  115. MessageBox.Show("第"+(i+1)+"行卷重数据为空,请核对后再点击保存!");
  116. return;
  117. }
  118. if (transCarNo.Equals(""))
  119. {
  120. MessageBox.Show("第" + (i + 1) + "行车辆号为空,请核对后再点击保存!");
  121. return;
  122. }
  123. }
  124. }
  125. ArrayList list = new ArrayList();
  126. string[] param = null;
  127. string regId = this.UserInfo.GetUserID();
  128. for (int i = 0; i < rs.Count; i++)
  129. {
  130. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  131. {
  132. if ("0".Equals(rs[i].Cells["SHIP_PROG_CD"].Text))
  133. {
  134. param = new string[38];
  135. param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号
  136. param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号
  137. param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号
  138. param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点
  139. param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地
  140. param[5] = rs[i].Cells["EXLV_LINE_CD"].Text;//专用线
  141. param[6] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点
  142. param[7] = rs[i].Cells["BY_SEA_YN"].Text;//水运区分
  143. param[8] = rs[i].Cells["DEPARTURE_CD"].Text;//出发港
  144. param[9] = rs[i].Cells["ARRIVAL_CD"].Text;//到达港
  145. param[10] = rs[i].Cells["COIL_NO"].Text;//生产钢卷号
  146. param[11] = rs[i].Cells["TOT_DEC_GRD"].Text;//综合判定等级
  147. param[12] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量
  148. param[13] = rs[i].Cells["COIL_OUTDIA"].Text;//钢卷外径
  149. param[14] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码
  150. param[15] = rs[i].Cells["CRET_NO"].Text;//品质保证书号
  151. param[16] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间
  152. param[17] = "01";//钢卷公共表中的状态字段 SHIP_PROG_CD
  153. param[18] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号
  154. param[19] = rs[i].Cells["BEF_PROG_CD"].Text;//钢卷公共表中当前状态做前状态使用
  155. param[20] = rs[i].Cells["BEF_PROG_CD_DTIME"].Text;//状态改变时间
  156. param[21] = rs[i].Cells["BEF_PROG_CD_PGM"].Text;//状态改变人
  157. param[22] = rs[i].Cells["ORD_NO"].Text;//合同号
  158. param[23] = rs[i].Cells["ORD_SEQ"].Text;//订单号
  159. param[24] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码
  160. param[25] = rs[i].Cells["COIL_STAT"].Text;//钢卷状态
  161. param[26] = rs[i].Cells["CUR_PROG_CD"].Text;//当前状态
  162. param[27] = rs[i].Cells["CUR_PROG_CD_PGM"].Text;//当前状态修改人
  163. param[28] = regId;//登录人
  164. param[29] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志
  165. param[30] = rs[i].Cells["COIL_INDIA"].Text;//钢卷内径
  166. param[31] = rs[i].Cells["OLD_SAMPL_NO"].Text;//钢卷号
  167. param[32] = rs[i].Cells["CUST_NM"].Text;//合同单位
  168. param[33] = rs[i].Cells["ORD_NM"].Text;//收货单位
  169. param[34] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站
  170. param[35] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称
  171. param[36] = rs[i].Cells["SM_CFNM"].Text;//产品名称
  172. param[37] = rs[i].Cells["PKG_WGT"].Text;//产品名称
  173. // param[31] = rs[i].Cells["COIL_INDIA"].Text;//钢卷内径
  174. list.Add(param);
  175. //检查接口表是否有数据
  176. //CoreClientParam ccp = new CoreClientParam();
  177. //ccp.ServerName = "UIJ.UIJ03.UIJ030070";
  178. //ccp.MethodName = "hasCoilINTBJ";
  179. //ccp.ServerParams = new Object[] { rs[i].Cells["OLD_SAMPL_NO"].Text };
  180. //ccp = this.ExecuteQuery(ccp, CoreInvokeType.Internal);
  181. //int count = int.Parse(ccp.ReturnObject.ToString());
  182. //if (count > 0)
  183. //{
  184. // MessageBox.Show("选择的钢卷已在销售接口中,无法发运!");
  185. // return;
  186. //}
  187. }
  188. }
  189. }
  190. if (list.Count > 0)
  191. {
  192. //出库班次、出库班组、出库人、出库时间、草支垫重量
  193. string trnfShift = this.UserInfo.GetUserOrder();
  194. string trnfGroup = this.UserInfo.GetUserGroup();
  195. string trnfRegId = this.UserInfo.GetUserID(); ;
  196. string trnfDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  197. // string czdWgt = "25";//草支垫重量改为固定25KG//this.textBox1.Text.Trim();
  198. string czdWgt = "";
  199. CoreClientParam ccp = new CoreClientParam();
  200. ccp.ServerName = "UIJ.UIJ03.UIJ030070";
  201. ccp.MethodName = "saveYtgResult";
  202. ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime,czdWgt, list };
  203. this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  204. this.ultraComboEditor2.SelectedIndex = 1;
  205. }
  206. //生成发货实绩后再次查询
  207. this.DoQuery();
  208. }
  209. private void DoExport()
  210. {
  211. try
  212. {
  213. if (this.saveFileDialog1.ShowDialog(this) == DialogResult.OK)
  214. {
  215. string fileName = this.saveFileDialog1.FileName;
  216. ultraGridExcelExporter1.Export(ultraGrid1, fileName);
  217. System.Diagnostics.Process.Start(fileName);
  218. }
  219. }
  220. catch (Exception ex)
  221. {
  222. MessageBox.Show(ex.ToString());
  223. }
  224. }
  225. /// <summary>
  226. /// 打印发货明细
  227. /// </summary>
  228. private void DoReceive()
  229. {
  230. Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  231. ArrayList list = new ArrayList();
  232. string[] param = null;
  233. string regId = this.UserInfo.GetUserID();
  234. for (int i = 0; i < rs.Count; i++)
  235. {
  236. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  237. {
  238. if ("3".Equals(rs[i].Cells["SHIP_PROG_CD"].Text))
  239. {
  240. param = new string[38];
  241. param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号
  242. param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号
  243. param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号
  244. param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点
  245. param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地
  246. param[5] = rs[i].Cells["EXLV_LINE_CD"].Text;//专用线
  247. param[6] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点
  248. param[7] = rs[i].Cells["BY_SEA_YN"].Text;//水运区分
  249. param[8] = rs[i].Cells["DEPARTURE_CD"].Text;//出发港
  250. param[9] = rs[i].Cells["ARRIVAL_CD"].Text;//到达港
  251. param[10] = rs[i].Cells["COIL_NO"].Text;//生产钢卷号
  252. param[11] = rs[i].Cells["TOT_DEC_GRD"].Text;//综合判定等级
  253. param[12] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量
  254. param[13] = rs[i].Cells["COIL_OUTDIA"].Text;//钢卷外径
  255. param[14] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码
  256. param[15] = rs[i].Cells["CRET_NO"].Text;//品质保证书号
  257. param[16] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间
  258. param[17] = "4";//钢卷公共表中的状态字段 SHIP_PROG_CD
  259. param[18] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号
  260. param[19] = rs[i].Cells["BEF_PROG_CD"].Text;//钢卷公共表中当前状态做前状态使用
  261. param[20] = rs[i].Cells["BEF_PROG_CD_DTIME"].Text;//状态改变时间
  262. param[21] = rs[i].Cells["BEF_PROG_CD_PGM"].Text;//状态改变人
  263. param[22] = rs[i].Cells["ORD_NO"].Text;//合同号
  264. param[23] = rs[i].Cells["ORD_SEQ"].Text;//订单号
  265. param[24] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码
  266. param[25] = rs[i].Cells["COIL_STAT"].Text;//钢卷状态
  267. param[26] = rs[i].Cells["CUR_PROG_CD"].Text;//当前状态
  268. param[27] = rs[i].Cells["CUR_PROG_CD_PGM"].Text;//当前状态修改人
  269. param[28] = regId;//登录人
  270. param[29] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志
  271. param[30] = rs[i].Cells["COIL_INDIA"].Text;//钢卷内径
  272. param[31] = rs[i].Cells["OLD_SAMPL_NO"].Text;//钢卷号
  273. param[32] = rs[i].Cells["CUST_NM"].Text;//合同单位
  274. param[33] = rs[i].Cells["ORD_NM"].Text;//收货单位
  275. param[34] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站
  276. param[35] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称
  277. param[36] = rs[i].Cells["SM_CFNM"].Text;//产品名称
  278. param[37] = rs[i].Cells["PKG_WGT"].Text;//产品名称
  279. list.Add(param);
  280. }
  281. }
  282. }
  283. if (list.Count > 0)
  284. {
  285. //出库班次、出库班组、出库人、出库时间、草支垫重量
  286. string trnfShift = this.UserInfo.GetUserOrder();
  287. string trnfGroup = this.UserInfo.GetUserGroup();
  288. string trnfRegId = this.UserInfo.GetUserID(); ;
  289. string trnfDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  290. CoreClientParam ccp = new CoreClientParam();
  291. ccp.ServerName = "UIJ.UIJ03.UIJ030070";
  292. ccp.MethodName = "saveCoilIn";
  293. ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime, list };
  294. this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  295. this.ultraComboEditor2.SelectedIndex = 1;
  296. }
  297. //生成发货实绩后再次查询
  298. this.DoQuery();
  299. }
  300. /// <summary>
  301. /// 打印后修改发货状态
  302. /// </summary>
  303. private void print()
  304. {
  305. ArrayList list = new ArrayList();
  306. ArrayList listP = new ArrayList();
  307. string[] param = null;
  308. string[] paramP = null;
  309. string regId = this.UserInfo.GetUserID();
  310. string name = string.Empty;
  311. Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  312. for (int i = 0; i < rs.Count; i++)
  313. {
  314. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  315. {
  316. if ("07".Equals(rs[i].Cells["SHIP_PROG_CD"].Text))
  317. {
  318. param = new string[38];
  319. param[0] = rs[i].Cells["SHIP_DIRNO"].Text; ;//发货指示号
  320. param[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号
  321. param[2] = rs[i].Cells["TRANS_CAR_NO"].Text;//车辆号
  322. param[3] = rs[i].Cells["GET_ON_PCD"].Text;//装车地点
  323. param[4] = rs[i].Cells["DEST_PCD"].Text;//目的地
  324. param[5] = rs[i].Cells["EXLV_LINE_CD"].Text;//专用线
  325. param[6] = rs[i].Cells["GET_OFF_PCD"].Text;//卸车地点
  326. param[7] = rs[i].Cells["BY_SEA_YN"].Text;//水运区分
  327. param[8] = rs[i].Cells["DEPARTURE_CD"].Text;//出发港
  328. param[9] = rs[i].Cells["ARRIVAL_CD"].Text;//到达港
  329. param[10] = rs[i].Cells["COIL_NO"].Text;//生产钢卷号
  330. param[11] = rs[i].Cells["TOT_DEC_GRD"].Text;//综合判定等级
  331. param[12] = rs[i].Cells["COIL_WGT"].Text;//钢卷重量
  332. param[13] = rs[i].Cells["COIL_OUTDIA"].Text;//钢卷外径
  333. param[14] = rs[i].Cells["SHIP_INVNO"].Text;//发货清单号码
  334. param[15] = rs[i].Cells["CRET_NO"].Text;//品质保证书号
  335. param[16] = rs[i].Cells["TRNF_DTIME"].Text;//发货时间
  336. param[17] = "08";//钢卷公共表中的状态字段 SHIP_PROG_CD
  337. param[18] = rs[i].Cells["SPEC_STL_GRD"].Text;//标冷牌号
  338. param[19] = rs[i].Cells["BEF_PROG_CD"].Text;//钢卷公共表中当前状态做前状态使用
  339. param[20] = rs[i].Cells["BEF_PROG_CD_DTIME"].Text;//状态改变时间
  340. param[21] = rs[i].Cells["BEF_PROG_CD_PGM"].Text;//状态改变人
  341. param[22] = rs[i].Cells["ORD_NO"].Text;//合同号
  342. param[23] = rs[i].Cells["ORD_SEQ"].Text;//订单号
  343. param[24] = rs[i].Cells["SHIP_COMP_CD"].Text;//运输公司编码
  344. param[25] = rs[i].Cells["COIL_STAT"].Text;//钢卷状态
  345. param[26] = rs[i].Cells["CUR_PROG_CD"].Text;//当前状态
  346. param[27] = rs[i].Cells["CUR_PROG_CD_PGM"].Text;//当前状态修改人
  347. param[28] = regId;//登录人
  348. param[29] = rs[i].Cells["DLIV_TP"].Text;//火运汽运标志
  349. param[30] = rs[i].Cells["COIL_THK"].Text;//钢卷内径
  350. param[31] = rs[i].Cells["ORD_CD"].Text;//钢卷内径
  351. param[32] = rs[i].Cells["CUST_NM"].Text;//合同单位
  352. param[33] = rs[i].Cells["ORD_NM"].Text;//收货单位
  353. param[34] = rs[i].Cells["DEST_PCD_DESC"].Text;//到站
  354. param[35] = rs[i].Cells["SHIP_COMP_NM"].Text;//运输公司名称
  355. param[36] = rs[i].Cells["SM_CFNM"].Text;//产品名称
  356. param[37] = rs[i].Cells["PKG_WGT"].Text;//包装
  357. list.Add(param);
  358. paramP = new string[22];
  359. paramP[0] = rs[i].Cells["ORD_NO"].Text;//合同号
  360. paramP[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号
  361. paramP[2] = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  362. paramP[3] = rs[i].Cells["SHIP_INVNO"].Text;
  363. paramP[4] = rs[i].Cells["CUST_NM"].Text;
  364. paramP[5] = rs[i].Cells["DEST_PCD_DESC"].Text;
  365. paramP[6] = this.UserInfo.GetUserName();
  366. paramP[7] = rs[i].Cells["TRANS_CAR_NO"].Text;
  367. paramP[8] = rs[i].Cells["ORD_NM"].Text;
  368. paramP[9] = rs[i].Cells["HCOLOUR_REM"].Text;
  369. paramP[10] = rs[i].Cells["SM_CFNM"].Text;
  370. paramP[11] = rs[i].Cells["SPEC_ABBSYM"].Text;
  371. paramP[12] = rs[i].Cells["OLD_SAMPL_NO"].Text.Substring(0, 9);
  372. paramP[13] = rs[i].Cells["SPEC_STL_GRD"].Text;
  373. paramP[14] = rs[i].Cells["T_W"].Text;
  374. paramP[15] = rs[i].Cells["COIL_WGT"].Text;
  375. paramP[16] = rs[i].Cells["OLD_SAMPL_NO"].Text;
  376. paramP[17] = rs[i].Cells["TOT_DEC_GRD_DESC"].Text;
  377. paramP[18] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text;
  378. paramP[19] = "";
  379. // paramP[20] = "25";//this.textBox1.Text.Trim();
  380. paramP[20] = "";
  381. paramP[21] = rs[i].Cells["PKG_WGT"].Text;
  382. listP.Add(paramP);
  383. }
  384. else if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text))
  385. {
  386. paramP = new string[22];
  387. paramP[0] = rs[i].Cells["ORD_NO"].Text;//合同号
  388. paramP[1] = rs[i].Cells["DLIV_DIRNO"].Text;//运输指示号
  389. paramP[2] = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  390. paramP[3] = rs[i].Cells["SHIP_INVNO"].Text;
  391. paramP[4] = rs[i].Cells["CUST_NM"].Text;
  392. paramP[5] = rs[i].Cells["DEST_PCD_DESC"].Text;
  393. paramP[6] = this.UserInfo.GetUserName();
  394. paramP[7] = rs[i].Cells["TRANS_CAR_NO"].Text;
  395. paramP[8] = rs[i].Cells["ORD_NM"].Text;
  396. paramP[9] = rs[i].Cells["HCOLOUR_REM"].Text;
  397. paramP[10] = rs[i].Cells["SM_CFNM"].Text;
  398. paramP[11] = rs[i].Cells["SPEC_ABBSYM"].Text;
  399. paramP[12] = rs[i].Cells["OLD_SAMPL_NO"].Text.Substring(0, 9);
  400. paramP[13] = rs[i].Cells["SPEC_STL_GRD"].Text;
  401. paramP[14] = rs[i].Cells["T_W"].Text;
  402. paramP[15] = rs[i].Cells["COIL_WGT"].Text;
  403. paramP[16] = rs[i].Cells["OLD_SAMPL_NO"].Text;
  404. paramP[17] = rs[i].Cells["TOT_DEC_GRD_DESC"].Text;
  405. paramP[18] = rs[i].Cells["MATLQLTY_DEC_GRD_DESC"].Text;
  406. paramP[19] = "";
  407. paramP[20] = "";
  408. paramP[21] = rs[i].Cells["PKG_WGT"].Text;
  409. listP.Add(paramP);
  410. }
  411. }
  412. }
  413. if (listP.Count > 0 && list.Count > 0)
  414. {
  415. //出库班次、出库班组、出库人、出库时间、草支垫重量
  416. string trnfShift = this.UserInfo.GetUserOrder();
  417. string trnfGroup = this.UserInfo.GetUserGroup();
  418. string trnfRegId = this.UserInfo.GetUserID();
  419. string trnfDtime = this.ultraDateTimeEditor1.DateTime.ToString("yyyyMMdd");
  420. string czdWgt = "";
  421. CoreClientParam ccp = new CoreClientParam();
  422. ccp.ServerName = "UIJ.UIJ03.UIJ030070";
  423. ccp.MethodName = "printShippingResult";
  424. ccp.ServerParams = new Object[] { trnfShift, trnfGroup, trnfRegId, trnfDtime, czdWgt, list };
  425. this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  426. //状态修改失败返回
  427. if (0 != ccp.ReturnCode)
  428. {
  429. MessageBox.Show("系统错误!!!!");
  430. return;
  431. }
  432. //string printerName = "HP LaserJet P1505";
  433. string printerName = new System.Drawing.Printing.PrintDocument().PrinterSettings.PrinterName;
  434. string tmpPrintName = AppDomain.CurrentDomain.BaseDirectory + "\\tmpPrint.xls";
  435. ExportExcel(listP, tmpPrintName,name);
  436. this.printExcel(tmpPrintName, printerName);
  437. }
  438. else if (listP.Count > 0 && list.Count<=0)
  439. {
  440. string printerName = new System.Drawing.Printing.PrintDocument().PrinterSettings.PrinterName;
  441. string tmpPrintName = AppDomain.CurrentDomain.BaseDirectory + "\\tmpPrint.xls";
  442. ExportExcel(listP, tmpPrintName,name);
  443. this.printExcel(tmpPrintName, printerName);
  444. }
  445. }
  446. private void UIJ030070_Load(object sender, EventArgs e)
  447. {
  448. this.ultraDateTimeEditor1.Value = null;
  449. this.ultraComboEditor2.SelectedIndex = 0;
  450. this.DoQuery();
  451. }
  452. /// <summary>
  453. /// 导出 Excel 文件
  454. /// </summary>
  455. /// <param name="list">要导出的数据</param>
  456. /// <param name="regId">操作人</param>
  457. private void ExportExcel(ArrayList list, String strExcelFileName,string name)
  458. {
  459. if (list == null || list.Count < 1)
  460. {
  461. return;
  462. }
  463. string[] param1 = (string[])list[0];
  464. StreamWriter writer = new StreamWriter(strExcelFileName,false,Encoding.UTF8);
  465. writer.WriteLine("<?xml version=\"1.0\" encoding=\"utf-8\" ?> ");
  466. writer.WriteLine("<?mso-application progid=\"Excel.Sheet\"?> ");
  467. writer.WriteLine("<Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\" ");
  468. writer.WriteLine("xmlns:o=\"urn:schemas-microsoft-com:office:office\" ");
  469. writer.WriteLine("xmlns:x=\"urn:schemas-microsoft-com:office:excel\" ");
  470. writer.WriteLine("xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\" ");
  471. writer.WriteLine("xmlns:html=\"http://www.w3.org/TR/REC-html40\"> ");
  472. writer.WriteLine("<DocumentProperties xmlns=\"urn:schemas-microsoft-com:office:office\"> ");
  473. writer.WriteLine("<Author>siy</Author> ");
  474. writer.WriteLine("<LastAuthor>siy</LastAuthor> ");
  475. writer.WriteLine("<Created>11111</Created> ");
  476. writer.WriteLine("<Company>steering</Company> ");
  477. writer.WriteLine("<Version>11.8107</Version> ");
  478. writer.WriteLine("</DocumentProperties> ");
  479. writer.WriteLine("<ExcelWorkbook xmlns=\"urn:schemas-microsoft-com:office:excel\"> ");
  480. writer.WriteLine("<WindowHeight>13590</WindowHeight> ");
  481. writer.WriteLine("<WindowWidth>19200</WindowWidth> ");
  482. writer.WriteLine("<WindowTopX>0</WindowTopX> ");
  483. writer.WriteLine("<WindowTopY>285</WindowTopY> ");
  484. writer.WriteLine("<ProtectStructure>False</ProtectStructure> ");
  485. writer.WriteLine("<ProtectWindows>False</ProtectWindows> ");
  486. writer.WriteLine("</ExcelWorkbook> ");
  487. writer.WriteLine("<Styles> ");
  488. writer.WriteLine("<Style ss:ID=\"Default\" ss:Name=\"Normal\"> ");
  489. writer.WriteLine("<Alignment ss:Vertical=\"Center\"/> ");
  490. writer.WriteLine("<Borders/> ");
  491. writer.WriteLine("<Font ss:FontName=\"宋体\" x:CharSet=\"134\" ss:Size=\"12\"/> ");
  492. writer.WriteLine("<Interior/> ");
  493. writer.WriteLine("<NumberFormat/> ");
  494. writer.WriteLine("<Protection/> ");
  495. writer.WriteLine("</Style> ");
  496. writer.WriteLine("<Style ss:ID=\"s11\"> ");
  497. writer.WriteLine("<Alignment ss:Horizontal=\"Center\" ss:Vertical=\"Center\"/> ");
  498. writer.WriteLine("<Borders> ");
  499. writer.WriteLine("<Border ss:Position=\"Bottom\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/>");
  500. writer.WriteLine("<Border ss:Position=\"Left\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  501. writer.WriteLine("<Border ss:Position=\"Right\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  502. writer.WriteLine("<Border ss:Position=\"Top\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  503. writer.WriteLine("</Borders> ");
  504. writer.WriteLine("<Font ss:FontName=\"SimSun\" x:CharSet=\"134\" ss:Size=\"18\" ss:Bold=\"1\"/> ");
  505. writer.WriteLine("<Interior ss:Color=\"#FFFFFF\" ss:Pattern=\"Solid\"/> ");
  506. writer.WriteLine("</Style> ");
  507. writer.WriteLine("<Style ss:ID=\"s21\"> ");
  508. writer.WriteLine("<Alignment ss:Horizontal=\"Left\" ss:Vertical=\"Center\"/> ");
  509. writer.WriteLine("<Borders> ");
  510. writer.WriteLine("<Border ss:Position=\"Bottom\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/>");
  511. writer.WriteLine("<Border ss:Position=\"Left\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  512. writer.WriteLine("<Border ss:Position=\"Right\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  513. writer.WriteLine("<Border ss:Position=\"Top\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\" ss:Color=\"#D8D8D8\"/> ");
  514. writer.WriteLine("</Borders> ");
  515. writer.WriteLine("<Font ss:FontName=\"SimSun\" x:CharSet=\"134\" ss:Size=\"12\" ss:Bold=\"1\"/> ");
  516. writer.WriteLine("<Interior ss:Color=\"#FFFFFF\" ss:Pattern=\"Solid\"/> ");
  517. writer.WriteLine("</Style> ");
  518. writer.WriteLine("<Style ss:ID=\"s22\"> ");
  519. writer.WriteLine("<Alignment ss:Horizontal=\"Center\" ss:Vertical=\"Center\"/> ");
  520. writer.WriteLine("<Borders> ");
  521. writer.WriteLine("<Border ss:Position=\"Bottom\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\"/> ");
  522. writer.WriteLine("<Border ss:Position=\"Left\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\"/> ");
  523. writer.WriteLine("<Border ss:Position=\"Right\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\"/> ");
  524. writer.WriteLine("<Border ss:Position=\"Top\" ss:LineStyle=\"Continuous\" ss:Weight=\"1\"/> ");
  525. writer.WriteLine("</Borders> ");
  526. writer.WriteLine(" <Font ss:FontName=\"SimSun\" x:CharSet=\"134\" ss:Size=\"12\" ss:Bold=\"1\"/> ");
  527. writer.WriteLine("<Interior ss:Color=\"#FFFFFF\" ss:Pattern=\"Solid\"/> ");
  528. writer.WriteLine("</Style> ");
  529. writer.WriteLine("</Styles> ");
  530. writer.WriteLine("<Worksheet ss:Name=\"Sheet1\"> ");
  531. writer.WriteLine("<Table ss:DefaultColumnWidth=\"54\" ss:DefaultRowHeight=\"14.25\"> ");
  532. writer.WriteLine("<Column ss:Width=\"94\"/> ");
  533. writer.WriteLine("<Column ss:Width=\"64\"/> ");
  534. writer.WriteLine("<Column ss:Width=\"94\"/> ");
  535. writer.WriteLine("<Column ss:Width=\"64\"/> ");
  536. writer.WriteLine("<Column ss:Width=\"124\"/> ");
  537. writer.WriteLine("<Column ss:Width=\"64\"/> ");
  538. writer.WriteLine("<Column ss:Width=\"64\"/> ");
  539. writer.WriteLine("<Column ss:Width=\"94\"/> ");
  540. writer.WriteLine("<Row ss:AutoFitHeight=\"0\" ss:Height=\"48\"> ");
  541. writer.WriteLine(" <Cell ss:StyleID=\"s11\" ss:MergeAcross=\"7\"> ");
  542. writer.WriteLine(" <Data ss:Type=\"String\">新余钢铁股份有限公司钢卷发货明细单("+name+")</Data> ");
  543. writer.WriteLine(" </Cell> ");
  544. writer.WriteLine("</Row> ");
  545. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  546. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  547. writer.WriteLine(" <Data ss:Type=\"String\">合 同 号:</Data> ");
  548. writer.WriteLine(" </Cell> ");
  549. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  550. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[0] + "</Data> ");
  551. writer.WriteLine(" </Cell> ");
  552. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  553. writer.WriteLine(" <Data ss:Type=\"String\">发货单号:</Data> ");
  554. writer.WriteLine(" </Cell> ");
  555. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"3\"> ");
  556. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[1] + "</Data> ");
  557. writer.WriteLine(" </Cell> ");
  558. writer.WriteLine("</Row> ");
  559. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  560. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  561. writer.WriteLine(" <Data ss:Type=\"String\">用户编码:</Data> ");
  562. writer.WriteLine(" </Cell> ");
  563. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  564. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  565. writer.WriteLine(" </Cell> ");
  566. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  567. writer.WriteLine(" <Data ss:Type=\"String\">发货日:</Data> ");
  568. writer.WriteLine(" </Cell> ");
  569. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  570. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[2] + "</Data> ");
  571. writer.WriteLine(" </Cell> ");
  572. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  573. writer.WriteLine(" <Data ss:Type=\"String\">第" + param1[3] + "号</Data> ");
  574. writer.WriteLine(" </Cell> ");
  575. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  576. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  577. writer.WriteLine(" </Cell> ");
  578. writer.WriteLine("</Row> ");
  579. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  580. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  581. writer.WriteLine(" <Data ss:Type=\"String\">用户名称:</Data> ");
  582. writer.WriteLine(" </Cell> ");
  583. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  584. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[4] + "</Data> ");
  585. writer.WriteLine(" </Cell> ");
  586. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  587. writer.WriteLine(" <Data ss:Type=\"String\">到站:</Data> ");
  588. writer.WriteLine(" </Cell> ");
  589. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  590. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[5] + "</Data> ");
  591. writer.WriteLine(" </Cell> ");
  592. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  593. writer.WriteLine(" <Data ss:Type=\"String\">制表:</Data> ");
  594. writer.WriteLine(" </Cell> ");
  595. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  596. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[6] + "</Data> ");
  597. writer.WriteLine(" </Cell> ");
  598. writer.WriteLine("</Row> ");
  599. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  600. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  601. writer.WriteLine(" <Data ss:Type=\"String\">计划单号:</Data> ");
  602. writer.WriteLine(" </Cell> ");
  603. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  604. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  605. writer.WriteLine(" </Cell> ");
  606. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  607. writer.WriteLine(" <Data ss:Type=\"String\">车号:</Data> ");
  608. writer.WriteLine(" </Cell> ");
  609. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  610. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[7] + "</Data> ");
  611. writer.WriteLine(" </Cell> ");
  612. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  613. writer.WriteLine(" <Data ss:Type=\"String\">收货单位:</Data> ");
  614. writer.WriteLine(" </Cell> ");
  615. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  616. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[8] + "</Data> ");
  617. writer.WriteLine(" </Cell> ");
  618. writer.WriteLine("</Row> ");
  619. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  620. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  621. writer.WriteLine(" <Data ss:Type=\"String\">发货备注:</Data> ");
  622. writer.WriteLine(" </Cell> ");
  623. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  624. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[9] + "</Data> ");
  625. writer.WriteLine(" </Cell> ");
  626. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  627. writer.WriteLine(" <Data ss:Type=\"String\">产品名称:</Data> ");
  628. writer.WriteLine(" </Cell> ");
  629. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  630. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[10] + "</Data> ");
  631. writer.WriteLine(" </Cell> ");
  632. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  633. writer.WriteLine(" <Data ss:Type=\"String\">标准:</Data> ");
  634. writer.WriteLine(" </Cell> ");
  635. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  636. writer.WriteLine(" <Data ss:Type=\"String\">" + param1[11] + "</Data> ");
  637. writer.WriteLine(" </Cell> ");
  638. writer.WriteLine("</Row> ");
  639. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  640. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  641. writer.WriteLine(" <Data ss:Type=\"String\">轧批号</Data> ");
  642. writer.WriteLine(" </Cell> ");
  643. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  644. writer.WriteLine(" <Data ss:Type=\"String\">钢号</Data> ");
  645. writer.WriteLine(" </Cell> ");
  646. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  647. writer.WriteLine(" <Data ss:Type=\"String\">规格(厚*宽)mm</Data> ");
  648. writer.WriteLine(" </Cell> ");
  649. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  650. writer.WriteLine(" <Data ss:Type=\"String\">重量(吨)</Data> ");
  651. writer.WriteLine(" </Cell> ");
  652. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  653. writer.WriteLine(" <Data ss:Type=\"String\">钢卷号</Data> ");
  654. writer.WriteLine(" </Cell> ");
  655. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  656. writer.WriteLine(" <Data ss:Type=\"String\">等级</Data> ");
  657. writer.WriteLine(" </Cell> ");
  658. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  659. writer.WriteLine(" <Data ss:Type=\"String\">性能</Data> ");
  660. writer.WriteLine(" </Cell> ");
  661. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  662. writer.WriteLine(" <Data ss:Type=\"String\">草支垫</Data> ");
  663. writer.WriteLine(" </Cell> ");
  664. writer.WriteLine("</Row> ");
  665. int index = 0;
  666. int coilCount = 0;
  667. double wgtCount = 0,sumPkgWgt = 0,sumCzdWgt = 0;
  668. for (; index < list.Count; index++)
  669. {
  670. string[] param = (string[])list[index];
  671. double coilWgt = 0;
  672. double pkgWgt = 0, czdWgt = 0 ;
  673. try
  674. {
  675. coilWgt = double.Parse(param[15])/1000;
  676. pkgWgt = double.Parse(param[21]);
  677. czdWgt = double.Parse(param[20]);
  678. }
  679. catch (Exception ex)
  680. {
  681. }
  682. wgtCount += coilWgt;
  683. sumPkgWgt += pkgWgt;
  684. sumCzdWgt = czdWgt;//草支垫为界面输入整车重量 不需要相加
  685. coilCount++;
  686. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  687. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  688. writer.WriteLine(" <Data ss:Type=\"String\">" + param[12] + "</Data> ");
  689. writer.WriteLine(" </Cell> ");
  690. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  691. writer.WriteLine(" <Data ss:Type=\"String\">" + param[13] + "</Data> ");
  692. writer.WriteLine(" </Cell> ");
  693. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  694. writer.WriteLine(" <Data ss:Type=\"String\">" + param[14] + "</Data> ");
  695. writer.WriteLine(" </Cell> ");
  696. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  697. writer.WriteLine(" <Data ss:Type=\"String\">" + coilWgt + "</Data> ");
  698. writer.WriteLine(" </Cell> ");
  699. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  700. writer.WriteLine(" <Data ss:Type=\"String\">" + param[16] + "</Data> ");
  701. writer.WriteLine(" </Cell> ");
  702. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  703. writer.WriteLine(" <Data ss:Type=\"String\">" + param[17] + "</Data> ");
  704. writer.WriteLine(" </Cell> ");
  705. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  706. writer.WriteLine(" <Data ss:Type=\"String\">" + param[18] + "</Data> ");
  707. writer.WriteLine(" </Cell> ");
  708. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  709. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  710. writer.WriteLine(" </Cell> ");
  711. writer.WriteLine("</Row> ");
  712. }
  713. for (; index < 12; index++)
  714. {
  715. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  716. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  717. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  718. writer.WriteLine(" </Cell> ");
  719. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  720. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  721. writer.WriteLine(" </Cell> ");
  722. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  723. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  724. writer.WriteLine(" </Cell> ");
  725. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  726. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  727. writer.WriteLine(" </Cell> ");
  728. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  729. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  730. writer.WriteLine(" </Cell> ");
  731. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  732. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  733. writer.WriteLine(" </Cell> ");
  734. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  735. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  736. writer.WriteLine(" </Cell> ");
  737. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  738. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  739. writer.WriteLine(" </Cell> ");
  740. writer.WriteLine("</Row> ");
  741. }
  742. writer.WriteLine("<Row ss:AutoFitHeight=\"0\"> ");
  743. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  744. writer.WriteLine(" <Data ss:Type=\"String\">小计</Data> ");
  745. writer.WriteLine(" </Cell> ");
  746. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  747. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  748. writer.WriteLine(" </Cell> ");
  749. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  750. writer.WriteLine(" <Data ss:Type=\"String\">" + coilCount + "卷</Data> ");
  751. writer.WriteLine(" </Cell> ");
  752. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  753. writer.WriteLine(" <Data ss:Type=\"String\">" + wgtCount + "</Data> ");
  754. writer.WriteLine(" </Cell> ");
  755. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  756. writer.WriteLine(" <Data ss:Type=\"String\">包装合计:" + sumPkgWgt + "公斤</Data> ");
  757. writer.WriteLine(" </Cell> ");
  758. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  759. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  760. writer.WriteLine(" </Cell> ");
  761. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  762. writer.WriteLine(" <Data ss:Type=\"String\"></Data> ");
  763. writer.WriteLine(" </Cell> ");
  764. writer.WriteLine(" <Cell ss:StyleID=\"s22\"> ");
  765. writer.WriteLine(" <Data ss:Type=\"String\">合计:" + sumCzdWgt + "公斤</Data> ");
  766. writer.WriteLine(" </Cell> ");
  767. writer.WriteLine("</Row> ");
  768. writer.WriteLine("<Row ss:AutoFitHeight=\"0\" ss:Height=\"28.5\"> ");
  769. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  770. writer.WriteLine(" <Data ss:Type=\"String\">物流服务评价:</Data> ");
  771. writer.WriteLine(" </Cell> ");
  772. writer.WriteLine(" <Cell ss:StyleID=\"s21\" > ");
  773. writer.WriteLine(" <Data ss:Type=\"String\">满意□</Data> ");
  774. writer.WriteLine(" </Cell> ");
  775. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  776. writer.WriteLine(" <Data ss:Type=\"String\">一般□</Data> ");
  777. writer.WriteLine(" </Cell> ");
  778. writer.WriteLine(" <Cell ss:StyleID=\"s21\"> ");
  779. writer.WriteLine(" <Data ss:Type=\"String\">不满意□</Data> ");
  780. writer.WriteLine(" </Cell> ");
  781. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  782. writer.WriteLine(" <Data ss:Type=\"String\">原因:</Data> ");
  783. writer.WriteLine(" </Cell> ");
  784. writer.WriteLine(" <Cell ss:StyleID=\"s21\" ss:MergeAcross=\"1\"> ");
  785. writer.WriteLine(" <Data ss:Type=\"String\">收货人签名:</Data> ");
  786. writer.WriteLine(" </Cell> ");
  787. writer.WriteLine("</Row> ");
  788. writer.WriteLine("</Table> ");
  789. writer.WriteLine("<WorksheetOptions xmlns=\"urn:schemas-microsoft-com:office:excel\"> ");
  790. writer.WriteLine("<Unsynced/> ");
  791. writer.WriteLine("<Selected/> ");
  792. writer.WriteLine("<DoNotDisplayGridlines/> ");
  793. writer.WriteLine("<Panes> ");
  794. writer.WriteLine("<Pane> ");
  795. writer.WriteLine("<Number>3</Number> ");
  796. writer.WriteLine("<ActiveRow>1</ActiveRow> ");
  797. writer.WriteLine("<ActiveCol>1</ActiveCol> ");
  798. writer.WriteLine("</Pane> ");
  799. writer.WriteLine("</Panes> ");
  800. writer.WriteLine("<ProtectObjects>False</ProtectObjects> ");
  801. writer.WriteLine("<ProtectScenarios>False</ProtectScenarios> ");
  802. writer.WriteLine("</WorksheetOptions> ");
  803. writer.WriteLine("</Worksheet> ");
  804. writer.WriteLine("</Workbook> ");
  805. writer.Close();
  806. }
  807. private bool printExcel(string fileName,string printerName)
  808. {
  809. object missing = System.Reflection.Missing.Value;
  810. try
  811. {
  812. if (isExcelInstalled())
  813. {
  814. Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
  815. Microsoft.Office.Interop.Excel.Workbook workbook = excel.Application.Workbooks.Add(fileName);
  816. //excel.Visible = true;
  817. Microsoft.Office.Interop.Excel._Worksheet ws = (Microsoft.Office.Interop.Excel._Worksheet)workbook.Worksheets["Sheet1"];
  818. ws.PageSetup.Orientation = Microsoft.Office.Interop.Excel.XlPageOrientation.xlLandscape;
  819. ws.PrintOut(1, 2, 1, false, printerName, false, false, missing);//"HP LaserJet P1505"
  820. workbook.Saved = true;
  821. workbook.Close(missing, missing, missing);
  822. excel.Quit();
  823. System.Runtime.InteropServices.Marshal.ReleaseComObject(ws);
  824. System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);
  825. }
  826. else
  827. {
  828. ET.Application et = new ET.Application();
  829. ET._Workbook ewb = et.Workbooks.Add(fileName);
  830. //et.Visible = true;
  831. ET._Worksheet ews = (ET._Worksheet)ewb.Worksheets["Sheet1"];
  832. ews.PageSetup.Orientation = ET.XlPageOrientation.xlLandscape;//"EPSON LQ-1600KIII"
  833. ews.PrintOut(1, 1, 1, false, printerName, false, false, missing, false, 1, 1, 0, 0, false, ET.ETPaperTray.etPrinterDefaultBin, false, ET.ETPaperOrder.etPrinterRepeat);
  834. ewb.Saved = true;
  835. ewb.Close(missing, missing, missing);
  836. et.Quit();
  837. System.Runtime.InteropServices.Marshal.ReleaseComObject(ews);
  838. System.Runtime.InteropServices.Marshal.ReleaseComObject(et);
  839. }
  840. return true;
  841. }
  842. catch (Exception ex)
  843. {
  844. MessageBox.Show(ex.ToString());
  845. return false;
  846. }
  847. }
  848. bool isExcelInstalled()
  849. {
  850. Type type = Type.GetTypeFromProgID("Excel.Application");
  851. return type != null;
  852. }
  853. #region 根据发运指示号选择
  854. private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  855. {
  856. try
  857. {
  858. if (e.Cell.Column.Key == "CHK")
  859. {
  860. e.Cell.Row.Update();
  861. if (e.Cell.Value.ToString().ToUpper() == "TRUE")
  862. {
  863. string vDLIV_DIRNO = e.Cell.Row.Cells["DLIV_DIRNO"].Text;
  864. Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  865. for (int i = 0; i < rs.Count; i++)
  866. {
  867. if (rs[i].Cells["DLIV_DIRNO"].Text == vDLIV_DIRNO)
  868. {
  869. rs[i].Cells["CHK"].Value = true;
  870. rs[i].Appearance.ForeColor = System.Drawing.Color.Blue;
  871. if (i.Equals(rs.Count - 1) && 1 == this.ultraComboEditor2.SelectedIndex)
  872. {
  873. this.textBox3.Text = rs[i].Cells["DLIV_DIRNO"].Value.ToString();
  874. }
  875. }
  876. else
  877. {
  878. rs[i].Cells["CHK"].Value = false;
  879. rs[i].Appearance.ForeColor = System.Drawing.Color.Black;
  880. }
  881. }
  882. }
  883. //else
  884. //{
  885. // string vDLIV_DIRNO = e.Cell.Row.Cells["DLIV_DIRNO"].Text;
  886. // Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  887. // for (int i = 0; i < rs.Count; i++)
  888. // {
  889. // if (rs[i].Cells["DLIV_DIRNO"].Text == vDLIV_DIRNO)
  890. // {
  891. // rs[i].Cells["CHK"].Value = false;
  892. // rs[i].Appearance.ForeColor = System.Drawing.Color.Black;
  893. // }
  894. // }
  895. //}
  896. }
  897. }
  898. catch (Exception ex)
  899. {
  900. System.Diagnostics.Debug.WriteLine(ex.ToString());
  901. }
  902. }
  903. #endregion
  904. private void button1_Click(object sender, EventArgs e)
  905. {
  906. Infragistics.Win.UltraWinGrid.RowsCollection rs = this.ultraGrid1.Rows;
  907. for (int i = 0; i < rs.Count; i++)
  908. {
  909. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  910. {
  911. string coilWgt = rs[i].Cells["COIL_WGT"].Text;
  912. string transCarNo = rs[i].Cells["TRANS_CAR_NO"].Text;
  913. if (coilWgt.Equals(""))
  914. {
  915. MessageBox.Show("第" + (i + 1) + "行卷重数据为空,请核对后再点击保存!");
  916. return;
  917. }
  918. if (transCarNo.Equals(""))
  919. {
  920. MessageBox.Show("第" + (i + 1) + "行车辆号为空,请核对后再点击保存!");
  921. return;
  922. }
  923. }
  924. }
  925. ArrayList list = new ArrayList();
  926. string[] param = null;
  927. string regId = this.UserInfo.GetUserID();
  928. for (int i = 0; i < rs.Count; i++)
  929. {
  930. if ("TRUE".Equals(rs[i].Cells["CHK"].Text.ToUpperInvariant()))
  931. {
  932. if ("08".Equals(rs[i].Cells["SHIP_PROG_CD"].Text))
  933. {
  934. param = new string[1];
  935. param[0] = rs[i].Cells["DLIV_DIRNO"].Text; ;//发货指示号
  936. list.Add(param);
  937. }
  938. }
  939. }
  940. if (list.Count > 0)
  941. {
  942. //直接在C#中调用后天Java方法,向物流跟踪平台发送明细数据
  943. CoreClientParam ccp = new CoreClientParam();
  944. ccp.ServerName = "UIJ.UIJ05.UIJ050010";
  945. ccp.MethodName = "resend";
  946. ccp.ServerParams = new Object[] { list, "" };
  947. this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
  948. }
  949. }
  950. }
  951. }