|
konntest du keinen eigenen Thread aufmachen?
SAP - Fragen sind nich so leicht nachzuvollziehen, weil man dazu auch die entsprechende Umgebung haben muß. Da wir nicht hellsehen können, wäre es sehr hilfreich wenigstens zu sagen wo der Fehler im Code auftritt.
ist das Makro schon älter und lief irgendwann mal fehlerfrei, liegts eher daran das sich deine Umgebung bei Verwendung verändert hat. Ist es neu, dann frag den Entwickler.
eine Kurzanalyse von einer Browser Ki ergibt :
| Variable |
Status |
| wsBestandsreport |
Nicht deklariert, nicht gesetzt |
| wbImport |
Nicht deklariert, falsch zugewiesen |
Aber häufig sind wohl auch unpassende SAP Schnittstellen
1. SAP GUI Scripting ist nicht aktiviert
-
Serverseitig deaktiviert → OLE-Objekte können nicht erzeugt werden
-
Clientseitig deaktiviert → GetObject("SAPGUI") liefert Nothing
-
Typischer Fehler: "Der Objektverweis wurde nicht festgelegt" oder OLE-Automationfehler
2. Das SAP-Fenster ist noch nicht bereit
SAP lädt Elemente asynchron. Wenn dein VBA-Code schneller ist als SAP, passiert Folgendes:
Typische Fehlermeldung: “The control could not be found by id” oder OLE error 800A03EC
3. Falsche oder veraltete SAP GUI IDs
IDs ändern sich bei:
Wenn die ID nicht existiert → OLE-Fehler.
4. SAP GUI läuft nicht im Vordergrund
SAP GUI Scripting benötigt ein sichtbares, aktives Fenster. Wenn SAP minimiert ist oder im Hintergrund läuft, können OLE-Operationen fehlschlagen.
5. Mehrere SAP-Sessions – aber dein Code erwischt die falsche
Wenn du z.?B. Session(0) ansprichst, aber der User arbeitet in Session(1), kann das Objektmodell inkonsistent werden.
6. SAP GUI hängt oder blockiert
Wenn SAP intern „busy“ ist (Sanduhr), liefert die OLE-Schnittstelle keine gültigen Objekte.
7. Sicherheitsabfragen oder Popups blockieren den Ablauf
Beispiele:
Wenn dein Code ein Element anspricht, das durch ein Popup verdeckt ist → OLE-Fehler.
usw......
|