callWebServiceSap.ashx 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <%@ WebHandler Language="C#" Class="callWebServiceSap" %>
  2. using System;
  3. using System.Web;
  4. using System.Xml;
  5. using System.Xml.Linq;
  6. using DK.XuWei.WebMes;
  7. using System.Collections;
  8. using System.Collections.Generic;
  9. using System.Dynamic;
  10. using System.IO;
  11. using System.Linq;
  12. using System.Net;
  13. using System.Text;
  14. using System.Threading.Tasks;
  15. using System.Xml.Serialization;
  16. using System.Web.Services.Description;
  17. public class callWebServiceSap : IHttpHandler {
  18. public void ProcessRequest (HttpContext context) {
  19. context.Response.ContentType = "text/plan";
  20. string postData = @"
  21. <soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/' xmlns:urn='urn:sap-com:document:sap:rfc:functions'>
  22. <soapenv:Header/>
  23. <soapenv:Body>
  24. <urn:ZPPFM008>
  25. <!--Optional:-->
  26. <TABLE_IN>
  27. <!--Zero or more repetitions:-->
  28. <item>
  29. <WERKS>1</WERKS>
  30. <GROES>1</GROES>
  31. <MATNR>1</MATNR>
  32. <ZGHNU>1</ZGHNU>
  33. <ZJDNU>1</ZJDNU>
  34. <ZSCNU>1</ZSCNU>
  35. <VBELN>1</VBELN>
  36. <POSNR>1</POSNR>
  37. <ZKSSJ>1</ZKSSJ>
  38. <ZJSRQ>1</ZJSRQ>
  39. <ZCLNG>1</ZCLNG>
  40. <ZSPNG>1</ZSPNG>
  41. <ZQCNG>1</ZQCNG>
  42. <ZHSNG>1</ZHSNG>
  43. <ZGBNG>1</ZGBNG>
  44. <ZBZBS>1</ZBZBS>
  45. <ZTYPE>1</ZTYPE>
  46. <ZMSG>1</ZMSG>
  47. <MJAHR>1</MJAHR>
  48. <MBLNR1>1</MBLNR1>
  49. <ZTYPE1>1</ZTYPE1>
  50. <ZMSG1>1</ZMSG1>
  51. <MBLNR2>1</MBLNR2>
  52. <ZTYPE2>1</ZTYPE2>
  53. <ZMSG2>1</ZMSG2>
  54. <MBLNR3>1</MBLNR3>
  55. <ZTYPE3>1</ZTYPE3>
  56. <ZMSG3>1</ZMSG3>
  57. <MBLNR4>1</MBLNR4>
  58. <ZTYPE4>1</ZTYPE4>
  59. <ZMSG4>1</ZMSG4>
  60. </item>
  61. </TABLE_IN>
  62. <!--Optional:-->
  63. <TABLE_OUT>
  64. <!--Zero or more repetitions:-->
  65. <item>
  66. <WERKS>1</WERKS>
  67. <GROES>1</GROES>
  68. <MATNR>1</MATNR>
  69. <ZGHNU>1</ZGHNU>
  70. <ZJDNU>1</ZJDNU>
  71. <ZSCNU>1</ZSCNU>
  72. <VBELN>1</VBELN>
  73. <POSNR>1</POSNR>
  74. <ZKSSJ>1</ZKSSJ>
  75. <ZJSRQ>1</ZJSRQ>
  76. <ZCLNG>1</ZCLNG>
  77. <ZSPNG>1</ZSPNG>
  78. <ZQCNG>1</ZQCNG>
  79. <ZHSNG>1</ZHSNG>
  80. <ZGBNG>1</ZGBNG>
  81. <ZBZBS>1</ZBZBS>
  82. <ZTYPE>1</ZTYPE>
  83. <ZMSG>1</ZMSG>
  84. <MJAHR>1</MJAHR>
  85. <MBLNR1>1</MBLNR1>
  86. <ZTYPE1>1</ZTYPE1>
  87. <ZMSG1>1</ZMSG1>
  88. <MBLNR2>1</MBLNR2>
  89. <ZTYPE2>1</ZTYPE2>
  90. <ZMSG2>1</ZMSG2>
  91. <MBLNR3>1</MBLNR3>
  92. <ZTYPE3>1</ZTYPE3>
  93. <ZMSG3>1</ZMSG3>
  94. <MBLNR4>1</MBLNR4>
  95. <ZTYPE4>1</ZTYPE4>
  96. <ZMSG4>1</ZMSG4>
  97. </item>
  98. </TABLE_OUT><ZSUM>1</ZSUM>
  99. <!--Optional:-->
  100. </urn:ZPPFM008>
  101. </soapenv:Body>
  102. </soapenv:Envelope>
  103. ";
  104. postData = postData.Replace("'", "\"");
  105. string url = "http://S4DEVAPP.hegii.com:8080/sap/bc/srt/rfc/sap/zppfm008/240/zppfm008/zppfm008_bind";
  106. NetworkCredential credential = new NetworkCredential("hgsapdk", "Sapdk#240");
  107. XmlDocument xml = SoapClient.Post(url, postData, credential);
  108. context.Response.Write(xml.InnerXml + "\n\n");
  109. string ztype = xml.DocumentElement["soap-env:Body"]["n0:ZPPFM008Response"]["ZTYPE"].InnerXml;
  110. string zmsg = xml.DocumentElement["soap-env:Body"]["n0:ZPPFM008Response"]["ZMSG"].InnerXml;
  111. context.Response.Write("ZTYPE:" + ztype + " ");
  112. context.Response.Write("ZMSG:" + zmsg + " ");
  113. }
  114. public bool IsReusable {
  115. get {
  116. return false;
  117. }
  118. }
  119. }