站內搜尋:Yahoo搜尋的結果,如果沒有給完整的網址,請在站內再搜尋一次!

2013-04-03

如何使用ASP執行AS/400的RGP程式(有傳入參數值,並回傳參數值)

只要掌握幾個要點,要透過ASP來執行AS/400的RGP程式,並不是一件很難的事
使用IBMDA400所提供的ADODB(OLEDB)連線存取功能,以connection物件建立連線,再以command物件建立要傳入傳出的參數,執行command,即可透過ASP執行RPG程式。
<%
  set conn=server.createobject("ADODB.connection")    
  ConnStr = "Provider=IBMDA400;Data Source=400主機網址;User Id=帳號;Password=密碼;"
  conn.open ConnStr
  set ccmd = server.CreateObject("ADODB.Command")
  set ccmd.ActiveConnection = conn
  ccmd.CommandType = adCmdText   
  '''必須包含{{}},這個RGPNAME共有三個參設
  ccmd.CommandText = "{{call TSTLIB.RGPNAME(?,?,?)}}"
  ccmd.NamedParameters = True
  ccmd.Prepared = True
  '''依序建立這三個參數
  '''第一個參數以資料型態char(10),值=zPara1,傳入給RPG的PARA1接收。
  set para = ccmd.CreateParameter("PARA1",adChar,adParamInput,10,zPara1)
  ccmd.Parameters.Append para
  set para = ccmd.CreateParameter("PARA2",adChar,adParamInput,10,zPara2)
  ccmd.Parameters.Append para
  '''第三個參數以資料型態char(10),接收給RPG的PARA3的回傳值。
  set para = ccmd.CreateParameter("PARA3",adChar,adParamOutput,10,zPara3)
  ccmd.Parameters.Append para
  ccmd.Execute()
  zPARA = ccmd.Parameters("PARA3").value
  conn.close()
%>

沒有留言:

張貼留言