Inhalt Der Bericht "Fakturavorrat" zeigt für die auswählten Kunden den auftragsbezogenen Fakturavorrat (SAP Transaktion VF04).
|
||||||||
Datenbeschaffung Im SAP-System wird der Fakturavorrat in Transaktion VF04 als "ALV Grid" angezeigt:
Eine Möglichkeit, die Werte des
Grid zu lesen, ist die Funktion "GridToTable" der SAP GUI Scripting
Schnitstelle in CIS mobile. Das geht analog wie Schritt 4.01 in der
Beschreibung Add-on
Fertigungsauftrag. Wir starten aus VB.NET diesen Report und erhalten die Daten des ALV Grid als Texttabelle zurück, in der die einzelnen Spalten durch "|" getrennt sind:
VB.net
Der Text zur Fakturaart, also zum Beispiel "Rechnung (F2)", ist nicht als Spalte im ALV Grid enthalten. Wir lesen deshalb über die RFC Datenbankschnittstelle aus Tabelle TVFKT den Text für die Anzeige noch hinzu. Da hierfür viele einzelne Zugriffe anfallen, ist es wichtig, durch den Parameter dbcache="yes" im S10 Repository die Tabelle TVFKT zu puffern (siehe nächster Abschnitt). ' read billing type text via SAP Select vtext = "" saptvfkt.fkart = fkart If saptvfkt.ic.RfcDatabaseRead() Then vtext = saptvfkt.vtext End If |
||||||||
Performance Im S10 Repository steht Ihnen über Runtime->Trace eine oft nützliche Trace-Funktion zur Verfügung. Sie zeigt bei Reportaufrufen die Selektionsparameter und die verbrauchte Zeit:
Ebenso alle Datenbankzugriffe der RFC Select Schnittstelle. Wir haben sie im CIS mobile Testsystem in verschiedenen Konstellationen gemessen:
Falls man Daten dazu lesen möchte, die nicht im Cache gehalten werden können und mit vielen Einzelzugriffen zu rechnen ist, kann man zunächst alle Schlüssel sammeln und dann die Zugriffe gebündelt absetzen.
Das VB.NET Coding ist für diesen Fall etwas anspruchsvoller,
hier die dafür relevanten Teile: In unserem Beispiel werden nur zwei Zugriffe gebündelt abgesetzt (siehe Trace 4 oben), da nur "F2" und "BV" als Fakturatypen vorkommen.
|
||||||||
Layout Die Ausgabetabelle bauen wir in VB.NET als HTML-String auf, wobei über CSS die Angaben für Fonts, Abmessungen, Farben etc. gesetzt werden. Das Coding ist analog dem Beispiel Umsätze. |
||||||||
Zusatzparameter Keine Zusatzparameter. |