-
AS400 Schriftfarbe per Excel Makro auslesen
Ich versuche die Schriftfarbe einer bestimmten Position in einem AS-400 Fenster aus einem Excel-Macro heraus zu bestimmen. Die Textfarbe kann entweder Grün(=Standart) oder Rot sein.
Da es keinen direkten Weg dafür zu geben scheint ('GetColor' funktioniert nicht), versuche ich es über den Umweg 'autECLSession.autECLPS.WaitForAttrib' mit einer Millisekunde Wartezeit - bei Timeout sollte der Wert 'False' zurückgegeben werden = Schrift ist nicht Grün oder eben 'True' = Schrift ist Grün.
Ich weiß aber nicht , was für Werte ich eingeben muss.
autECLSession.autECLPS.WaitForAttrib(row, col, Waitdata, [optional] MaskData, [optional] plane , [optional] TimeOut, [optional] WaitForIr)
Kann mir jemand weiterhelfen? Bin ich sowieso komplett auf dem falschen Weg, und/oder weiß jemand einen besseren?
Vielen Dank im voraus.
-
Ich würde mir da eher die Bedingung hierfür mittels SQL über ODBC holen!
Es gibt sicherlich einen datentechnischen Grund warum ein Wert in Rot dargestellt wird.
Diesen kann man sicherlich auch per SQL erfragen.
Für die 5250-Emulation gibt es noch andere API's: HLLAPI/EHLLAPI
Wenn das CA-Toolkit mit installiert ist, kannst du im Verzeichnis
C:\Program Files (x86)\IBM\Client Access\Toolkit\Include
die Datei ehlapi32.h betrachten um herauszufinden, wie man von einer Sitzung ein bestimmtes Feld/Attribut abfragt.
Aber wie gesagt, SQL ist einfacher und sicherer.
Ein User kann ja auch mehrere Fenster aufhaben.
-
Ja, würde ich auch lieber eleganter lösen, hab aber ebenfalls Gründe, warum ich es so lösen muss. Leider hab ich z.B. keinen SQL etc Zugriff, sondern muss mich mit den beschränkten Möglichkeiten zufrieden geben, die das Sitzungsfenster mir bietet. Unsere EDV-Profis würden mich auch bestenfalls auf ihr To-Do-Liste setzen und in ungefähr zwei Jahren (eventuell) prüfen, ob sich der Aufwand lohnt. Was vermutlich nicht der Fall sein wird, weil nicht alle Filialen das nutzen würden...
Das mit den anderen API's werde ich prüfen. Bis dahin würde ich mich sehr freuen, wenn jemand eine Idee zu meiner urspünglichen Frage wegen den WaitForAttrib hätte.
-
Hab das Problem gelöst, wer das Handbuch liest ist klar im Vorteil.
Versucht hatte ich:
autECLSession.autECLPS.WaitForAttrib(7, 6, 0, "3c", 2, 1) in diversen Variationen
Der Farbwert (dritte Position) muss aber als 1-Byte Hex geschrieben werden. Richtig ist also:
autECLSession.autECLPS.WaitForAttrib(7, 6, "00", "3c", 2, 1)
Similar Threads
-
By kuetemaj in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 10-02-03, 09:14
-
By andigoering in forum NEWSboard Server Software
Antworten: 4
Letzter Beitrag: 18-10-02, 12:32
-
By MEXX in forum NEWSboard Windows
Antworten: 3
Letzter Beitrag: 15-10-02, 16:05
-
By Andonny in forum NEWSboard Windows
Antworten: 5
Letzter Beitrag: 13-01-02, 16:50
-
By Andonny in forum IBM i Hauptforum
Antworten: 5
Letzter Beitrag: 13-01-02, 16:50
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks