Skip to main content
Skip table of contents

Event "Bei Berechnung des Infotexts für Personen-Daten"

Event "Bei Berechnung des Infotexts für Personen-Daten"

Dieser Event wird ab be Version 7.8.1.1 aufgerufen, wenn Informationen über Personen in der Personensuche (Globale Personensuche, Termin-Kalender, Vorgesetzte im Personalstamm, Alternative Logins) ermittelt werden. Die angezeigte Zusatzinformationen können beeinflusst werden.
Zusätzlich kann die Spalte "Info" für die Listen im E-Mail-Versand-Dialog durch diesen Event bearbeitet werden, wenn der Feature Toggle /SHOW_NEW_EMAIL_DIALOG aktiviert ist.

Beispiel

CODE
| nEvtNo:P1, nType:P2, cText:P3, nWorkArea:P4, nID:P5, oTable:P6, oDab005:P7, cNewText, oCacheTbl |

//################################################################################
// Event wird bei der Berechnung von Info-Text von Personen-Daten (gegenwärtig in
//   der Personensuche und im E-Mail-Versand-Dialog ausgeführt). Hiermit kann man
//   den Info-Text ändern, indem man den neuen Text als Ergebnis dieses Programms
//   zurückgibt.
//
// nType - zeigt aus welcher Umgebung das Ereignis ausgeführt wird (Read-Only) -
//         bpittPersonFinder - aus der Personensuche
//         bpittEmailSendDlg - aus dem E-Mail-Versanddialog
// cText - der bestehende Text (Read-Only)
// nWorkArea - die Workarea der Tabelle (Read-Only)
// nID - der ID des Datensatzes (Read-Only)
// oTable - wenn vorhanden, wird die Haupttabelle positioniert übergeben.
// oDab005 - wenn vorhanden, wird die Kontakten-Tabelle positioniert übergeben.
// ACHTUNG bei der Anpassung der Werte oder beim Navigieren der oTable oder oDab005 sind
// die Auswirkungen ggf. nicht überschaubar und könnten bestimmte Prozesse kaputt machen!
// Rückgabe: Der neue Infotext (string)
//################################################################################

function IsContact()
   Result := not Empty(oDab005),
end,

cNewText := cText,

if EditorMode() then
   nWorkArea := waDab000,
   nID := 3,
endif,

if oTable = nil then
   oCacheTbl := DBGetTable(gl_oDM, nWorkArea, 'EMAILVERSAND_CACHE'),
   DBLocate('ID',{nID},,oCacheTbl),
else
   oCacheTbl := oTable,
endif,
startseq
   case nWorkArea
      of waDab000 ::
         cNewText := 'Kunden-Nr: ' + Str(oCacheTbl:KDNR),
      of waDab100 ::
         cNewText := 'Lieferanten-Nr: ' + Str(oCacheTbl:LINR),
      of waDab062 ::
         cNewText := 'Vertreter-Nr: ' + Str(oCacheTbl:VTNR),
      of waDabFil ::
         cNewText := 'DabFil-Datei: ' + Str(oCacheTbl:DATEI),
      of waDab262 ::
         cNewText := 'Personen-Nr: ' + Str(oCacheTbl:PERSNR),
      of waDab330 ::
         cNewText := 'Ressourcen-ID: ' + Str(oCacheTbl:ID),
      of waDabUSR ::
         cNewText := 'Benutzer-Nr.: ' + Str(oCacheTbl:USER_NR),
      of waDab005 ::
         if IsContact() then
            cNewText := 'Kontakten-ID: ' + Str(oDab005:ID),
            case oCacheTbl.WorkArea
               of waDab000 ::
                  cNewText += ', Kunden-Nr: ' + Str(oCacheTbl:KDNR),
               of waDab100 ::
                  cNewText += ', Lieferanten-Nr: ' + Str(oCacheTbl:LINR),
               of waDab062 ::
                  cNewText += ', Vertreter-Nr: ' + Str(oCacheTbl:VTNR),
            endcase,
         else
            cNewText := 'Wie kommt es dazu??',
         endif,
   endcase,
always
   if oCacheTbl <> oTable then
      DestroyObject(oCacheTbl),
   endif,
stopseq,

case nType
   of bpittPersonFinder :: cNewText += ' (PSuche - noch welches Info)',
   of bpittEmailSendDlg :: cNewText += ' (Email)',
   otherwise
endcase,

cNewText 


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.