PMS32 Online- Hilfereferenz
Action - Handler aller Aktionen
Verkürzter Zugriff auf Informationen für Menüs.
*/ Zugriff auf den Handler (Action) My.Action...
Rückgabe:[Variant], Holen eines Wertes aus einer anderen Tabelle. Angegeben wird der Tabellenname nicht der Alias!
Variant = My.Action.GetVar(tcDbf AS String,tcSField AS String,tvSearch AS Variant,tcRField AS String,tcSI AS String) Variant = My.Action.GetVar(tcDbf,tcSField,tvSearch,tcRField,tcSI)
*/ Codebeispiel LOCAL lnEk */ Ermitteln der EK-Brutto aus dem Artikelstamm bei "teilweise" bekannter Artikelnummer lnEk = My.Action.GetVar("B01","ARTNR","SIE.3TH","EKBR") */ Diese Beispiel ermittelt den EK-Brutto des "ersten" Artikels mit obiger Artikelnummer */ Der "letzte" Parameter kann angegeben werden, wenn die Tabelle sprachabhängig ist! */ In diesem Fall wird der Sprachindex mitgegeben: "DE ","FR ","EN ",... */ Dies gilt für alle Funktionen (GetVar,GetVar2,HoleWert), die Werte ermitteln. lcBez = My.Action.GetVar("C22","IDC22","UPS","BEZEI","DE ")
Rückgabe:[Variant], Holen eines Wertes aus einer anderen Tabelle. Angegeben wird der Tabellenname nicht der Alias!
Variant = My.Action.GetVar2(tcDbf AS String,tcSearch AS String,tcRField AS String,tcSI AS String) Variant = My.Action.GetVar2(tcDbf,tcSearch,tcRField,tcSI)
*/ Codebeispiel LOCAL lnEk */ Ermitteln der EK-Brutto aus dem Artikelstamm bei "teilweise" bekannter Artikelnummer lnEk = My.Action.GetVar2("B01",[ARTNR="SIE.3TH" AND IPB01="001"],"EKBR") */ Diese Beispiel ermittelt den EK-Brutto des "ersten" Artikels mit obiger Artikelnummer */ Der "letzte" Parameter kann angegeben werden, wenn die Tabelle sprachabhängig ist! */ In diesem Fall wird der Sprachindex mitgegeben: "DE ","FR ","EN ",... */ Dies gilt für alle Funktionen (GetVar,GetVar2,HoleWert), die Werte ermitteln. lcBez = My.Action.GetVar2("C22",[IDC22="UPS"],"BEZEI","DE ")
Gibt den Namen der Maske zurück, die per MenüHit angesprungen werden soll.
tcFromMask AS String = Quellmaske
tcMasterTable AS String = Zieltabelle (Master) der Maske
Siehe auch: MenuHit.Define
String = My.Action.HitMask(tcFromMask AS String,tcMasterTable AS String) String = My.Action.HitMask(tcFromMask,tcMasterTable)
Rückgabe:[String], Holen eines Wertes aus einer anderen Tabelle. Angegeben wird der Tabellenname nicht der Alias!
String = My.Action.HoleWert(tcDbf AS String,tcSField AS String,tvSearch AS Variant,tcRField AS String,tcSI AS String) String = My.Action.HoleWert(tcDbf,tcSField,tvSearch,tcRField,tcSI)
*/ Codebeispiel LOCAL lnEk */ Ermitteln der EK-Brutto aus dem Artikelstamm bei "teilweise" bekannter Artikelnummer lnEk = My.Action.HoleWert("B01","ARTNR","SIE.3TH","EKBR") */ Diese Beispiel ermittelt den EK-Brutto des "ersten" Artikels mit obiger Artikelnummer */ Der "letzte" Parameter kann angegeben werden, wenn die Tabelle sprachabhängig ist! */ In diesem Fall wird der Sprachindex mitgegeben: "DE ","FR ","EN ",... */ Dies gilt für alle Funktionen (GetVar,GetVar2,HoleWert), die Werte ermitteln. lcBez = My.Action.HoleWert("C22","IDC22","UPS","BEZEI","DE ")
Zugriff auf Y01 - RecordObjekte wie unter ...Misc.vY01 jedoch steht HIER die gesamte Y01 zur Verfügung
Zurückgegeben wird ein RecordObject der Tabelle Y01. Die Felder können aus dem DataDictionary ermittelt werden.
Sie können das DataDictionary auch ausdrucken!
String = My.Action.VY01[tcIndex1 AS String | tiIndex1 AS Integer , tiIndex2 AS Integer] String = My.Action.VY01[tcIndex1|,tiIndex1,tiIndex2]
*/ Codebeispiel LOCAL loY01 AS Object */ Abruf der Informationen für eine Auftragsbestätigung loY01 = My.Action.vY01["101"] WAIT WINDOW loY01.Bezei
Mandanten-ID. Diese ist in der Datei pms32.pth gespeichert und dient dort zur Zuordnung des Mandante und dessen Pfade.
Auszug aus der Pfaddatei pms32.pth:
*/ Verzeichnis der Microcube - Dateien. Wenn leer dann gleich: cDbfdir
cCubdir = ""
*/ Ein 'anderes' Dokumentenverzeichnis kann angegeben werden. Wenn nicht angegeben dann gleich: cDbfdir+'docs\'
*/ cDocDir = ""
*/ Verzeichnis der Mandantentabellen. Hier ein Beispiel mit UNC Pfaden.
*/ Wird die Freigabe auf dem Server 'versteckt' \pms$\ angegeben, so kann ein Cryptovirius das Verzeichnis nicht finden!
cDbfdir = "\\server\pms$\pms32\daten\demo.32\"
*/ Verzeichnis der Reporttabellen
*/ Gibt man Bilddateien in einem Report mit My.Clients.Path.cFrxDir+'BILDNAME.JPG' an, so kann PMS32 einfach auf einen anderen Rechner kopiert werden!
cFrxdir = "\\server\pms$\pms32\reports\demo.32\"
*/ Beschreibung des Mandanten
cIcx02 = "TESTMANDANT DEMO"
*/ ID der Firmenparameter zum Mandant.
cIdx09 = "DEMO"
*/ Kann unter der Mandanteninformation leer sein, wenn für mehrere Mandanten das 'gleiche' Systemverzeichnis gültig ist.
cSysdir = ""
*/ Willkommens-Information als Hintergrundbild in PMS32
cWelcome= "pms32.htm"
*/ Nummer des Mandanten, beim Einsatz eines BarcodeScanners sollte diese Nummer EINDEUTIG sein!
nNumber = 1
<>
String = My.Action.cIdx02
*/ Abfrage der Mandanten-ID WAIT WINDOW My.Action.cIdx02 */ Wenn man mittels VFP Zugriff auf die Applikation braucht: */ 1. vfp9.exe öffenen */ 2. In das Startverzeichnis von PMS32 wechseln (MUSS) CD c:\pms\pms32 */ 3. My Instanziieren My = NEWOBJECT("pmsmy","pmsmyhandler.vcx","pmsmyhandler.app") */ 4. Den letzten aktuellen Mandanten zuweisen My.cIdx02 = My.cIdx02 */ 5. Los gehts...
Methode in der der letzte Fehler auftrat.
Aufbau: [Fehlernummer] [Methode] [Zeilennummer] [Message]
String = My.Action.cMethod
*/ Abruf... WAIT WINDOW My.Action.cMethod
Wert:[Integer], Gibt den Wert für DISABLED = .T. = 1 zurück.
Folgende Informationen könenn abgefragt werden:
MASTER => Betrifft des Master der Maske
CHILD => Betrifft das Child der Maske
BLOCK => Betrifft die Blockfunktionen des Childs
FIELD => Betrifft die Feldfunktionen aller Felder einer Maske incl. Datenraster (Child)
MASKE => Betrifft die Maske selbst
*/ Sonderfunktionen
EXCEL => Übertragung an Excel
TABLE => Tabelle über das Clipboard versenden
BARCODE=> Barcodefunktionen
EPLAN => EPLAN Funktionen
SPECIALS => Spezielle Funktionen
Number = My.Action.iDim[tcIndex1 AS String | tiIndex1 AS Integer , tiIndex2 AS Integer] Number = My.Action.iDim[tcIndex1|,tiIndex1,tiIndex2]
*/ Dieses Codebeispiel funktioniert nur unter der Laufzeitumgebung von PMS32! LOCAL liDim AS Interger */ Abfrage, welche Aktionen für den Master der Maske gedimmt werden müssen liDim = My.Action.iDim["MASTER"] */ Die Rückgabe ist eine 32 Bit Integer, wobei jede Binärstelle ausgewertet werden kann IF BITTEST(m.liDim,0) */ Bit-0 ist 1 => dimmen ENDIF *... IF BITTEST(m.liDim,31) */ Bit-31 ist 1 => dimmen ENDIF
Wert:[Integer], Gibt den Wert für ENABLED = .T. = 1 zurück.
iEnable ist die Umkehrfunktion zu iDim!
Number = My.Action.iEnable[tcIndex1 AS String | tiIndex1 AS Integer , tiIndex2 AS Integer] Number = My.Action.iEnable[tcIndex1|,tiIndex1,tiIndex2]
*/ Dieses Codebeispiel funktioniert nur unter der Laufzeitumgebung von PMS32! LOCAL liEnable AS Interger */ Abfrage, welche Aktionen für den Master der Maske gedimmt werden müssen liEnable = My.Action.iEnable["MASTER"] */ Die Rückgabe ist eine 32 Bit Integer, wobei jede Binärstelle ausgewertet werden kann IF BITTEST(m.liEnable,0) */ Bit-0 ist 1 => freigegeben ENDIF *... IF BITTEST(m.liEnable,31) */ Bit-31 ist 1 => freigegeben ENDIF
Wert:[Integer], Gibt den Wert für DISABLED = .T. = 1 zurück., jedoch Zeitverzögert. (1 Sekunde)
Die Properties iTDim und iTEnable geben die gleichen Werte wie iDim und iEnable zurück, jedoch wird nicht jedes Mal das Bitmuster neu berechnet. Die Gültigkeit verfällt nach ca. einer Sekunde! Diese Funktionen werdsen dann benötigt, wenn mehrerer "gleiche" Informationsabfragen in nacheinander erfolgen sollen.
Number = My.Action.iTDim[tcIndex1 AS String | tiIndex1 AS Integer , tiIndex2 AS Integer] Number = My.Action.iTDim[tcIndex1|,tiIndex1,tiIndex2]
Wert:[Integer], Gibt den Wert für ENABLED = .T. = 1 zurück, jedoch Zeitverzögert. (1 Sekunde)
Die Properties iTDim und iTEnable geben die gleichen Werte wie iDim und iEnable zurück, jedoch wird nicht jedes Mal das Bitmuster neu berechnet. Die Gültigkeit verfällt nach ca. einer Sekunde! Diese Funktionen werdsen dann benötigt, wenn mehrerer "gleiche" Informationsabfragen in nacheinander erfolgen sollen.
Number = My.Action.iTEnable[tcIndex1 AS String | tiIndex1 AS Integer , tiIndex2 AS Integer] Number = My.Action.iTEnable[tcIndex1|,tiIndex1,tiIndex2]
Führt einen Reset in der Klasse durch
Boolean = My.Action.lReset
My.Action.lReset = .T.
Fehlernummer des letzten Fehlers.
Ist der Wert kleiner null, so handelt es sich um einen logischen Fehler.
Number = My.Action.nError
WAIT WINDOW My.Action.nError
Zeilennummer, in der der letzte Fehler auftrat
Number = My.Action.nLine
WAIT WINDOW My.Action.nLine
Siehe auch : Hauptmenü / Hauptindex / Such Index / Cursor Index / Programm Module / Tabellen Index / Tabellenmodule / Masken Index / Programmcode Index / Servicepacks / My.Struktur / Funktionen / Sonstiges Index
Lokale Benutzerhilfe : Meine eigene Hilfe / Zurück zur PMS32 - Hilfe
Dateiversion:1.0.04#3648 - H.U.DD#SSFF 02.12.2022
Senden Sie Ihren Kommentar zu diesem Thema an das Entwicklungsteam von PMS32
Weitere Informationen finden Sie unter der aktuellen
PMS32 WEB-Hilfe
Die Informationen dieser Mitteilung sind vertraulich und nur für Sie bestimmt. Unbefugtes Weiterleiten,
Veröffentlichen, Kopieren usw. sind untersagt und werden gerichtlich verfolgt.
© PMS Compelec GmbH 2022 ® el-Projekt