一直找不到asp调用rfc的例子,网上更多的是asp.net调用rfc的,
本来对asp代码是一窍不通的,不过这边涉及的代码还是比较简单的。
<%@ Language=VBScript %>
<html>
<head>
<%
DIM oLogonControl
DIM oBapiControl
DIM oConn
DIM oCompanyCode
Dim otabCompanyCodes
Dim oReturn
Dim oCol
Dim oRow
DIM ITAB
DIM ofun
DIM func
DIM icall
dim i
sub Main()
’set oBapiControl=CreateObject(”SAP.BAPI.1″)
set oLogonControl=CreateObject(”SAP.LogonControl.1″)
set oConn=oLogonControl.NewConnection
oConn.ApplicationServer=”ipaddress” ‘ip地址
oConn.System=”00″ ‘系统编号
oConn.Client=”600″ ‘系统
oConn.User=”USER” ‘用户名
oConn.Password=”PASSWORD” ‘密码
oConn.Language=”EN”
retcd=oConn.Logon(0,true)
Response.Write(retcd)
Response.Write(”<BR>”)
if(retcdtrue)then
Response.Write(”no logon”)
stop
else
‘oBapiControl.Connection=oConn
‘Set oCompanyCode=oBapiControl.GetSAPObject(”CompanyCode”)
Set ofun = CreateObject(”SAP.FUNCTIONS”)
Set ofun.Connection = oConn
Set func = ofun.Add(”Z_PP_PROODR3″) ‘这里是我调用的RFC(取生产订单)
func.Exports(”INIDAT”) = “20101124″ ‘输入参数
func.Exports(”ENDDAT”) = “20101128″ ‘输入参数
icall = func.Call
Set iTAB = func.tables.Item(”ZAFPO”) ‘我的RFC里面的内表(取出来的生产订单)
Response.Write(”<BR>”)
for i = 1 to itab.rows.count
for each oCol in itab.columns
response.write oCol.value(i)
Response.Write(” “)
next
Response.Write(”<BR>”)
next
end if
End Sub
%>
</head>
<body>
<% Call Main() %>
</body>
</html>