ich greife mit visual basic auf nen Funktionsbaustein in SAP R/3 zu.
dazu muss ich die inputtabelle des bausteins füllen ihn aufrufen und die outputtabelle lesen.
das geht beides. ich kann auf die elemente des arrays Columns entweder über den Index zugreifen oder über deren Namen. wenn ich allerdings sowas mache, geht es nicht:
weiß jemand warum?
hintergrund der geschichte ist, dass das programm parameter übergeben kriegt in der form
ich aber nicht weiß wieviel parameter es sind und wie sie heißen.
Daher speichere ich die Parameter in 2 Arrays (einmal Name des Parameters und einmal Wert des Parameters), da es ja leider keine assoziativen Arrays gibt bei VB (afaik)
das füllen der tabelle sollte so laufen:
und das tut es nicht (Error: Type Mismatch) und es liegt definitiv an .Columns(ma_sParameterName(l_iZaehler)).Value(1)=
Hat jemand ne Idee außer den namen abzufragen, mit dem einen array zu vergleichen und das andere da einzutragen? wär je ne schleife mehr, die auf die bremse drückt
dazu muss ich die inputtabelle des bausteins füllen ihn aufrufen und die outputtabelle lesen.
PHP-Code:
with m_oRFC.Tables("I_URL")
.AddRow
.Columns(1).Value(1)="bar"
.Columns("foo").Value(1)="bar"
End With
PHP-Code:
Dim l_sfoo As String
l_sfoo="foo"
with m_oRFC.Tables("I_URL")
.AddRow
.Columns(l_sfoo).Value(1)="bar"
End With
hintergrund der geschichte ist, dass das programm parameter übergeben kriegt in der form
Code:
meine.exe /Spaltenname1InTabelle:Wert1 /Spaltenname2InTabelle:Wert2
Daher speichere ich die Parameter in 2 Arrays (einmal Name des Parameters und einmal Wert des Parameters), da es ja leider keine assoziativen Arrays gibt bei VB (afaik)
das füllen der tabelle sollte so laufen:
PHP-Code:
Dim l_iZaehler As Integer
with m_oRFC.Tables("I_URL")
.AddRow
for l_iZaehler=LBound(ma_sParameterName) to UBound(ma_sParameterName)
//LBound = untere Grenze des Arrays, UBound = obere Grenze
.Columns(ma_sParameterName(l_iZaehler)).Value(1)=ma_sParameterWert(l_iZaehler)
Next l_iZaehler
End With
Hat jemand ne Idee außer den namen abzufragen, mit dem einen array zu vergleichen und das andere da einzutragen? wär je ne schleife mehr, die auf die bremse drückt