[gelöst]Erkennen ob der Code über Webservice gestartet wurde

4. Mai 2010 11:46

Hallo
Ich habe bei eine Tabellenfeld im OnValidate Trigger ein Code. Nun möchte ich das diese sich anders verhält, wenn dieser über ein Webservice aufgerufen wird. Kann man das irgendwie erkennen.

lg
stony
Zuletzt geändert von stony am 4. Mai 2010 12:55, insgesamt 1-mal geändert.

Re: Erkennen ob der Code über Webservice gestartet wurde

4. Mai 2010 11:52

Hallo stony,

mittlerweile gibt es vier Varianten, wie du auf eine NAV-Datenbank zugreifen kannst:
ClassicClient, NAS, RTC oder Webservice.

Mit folgendem Programmcode kannst du die vier Varianten abfragen:
Code:
GetClientType() : Text[30]
// > TL6.00:05 >>>
// +------------------------------------------------------------------------+
// | Based on the idea of Eric Wauters a.k.a. 'waldo'                       |
// | http://dynamicsuser.net/blogs/waldo/archive/2009/12/01/where-am-i.aspx |
// +------------------------------------------------------------------------+

IF ISSERVICETIER THEN
  IF GUIALLOWED THEN
    EXIT(SELECTSTR(3,Text0001))  // Role Tailored Client (RTC)
  ELSE
    EXIT(SELECTSTR(4,Text0001))  // Web Service (WS)
ELSE
  IF GUIALLOWED THEN
    EXIT(SELECTSTR(1,Text0001))  // Classic Client (CC)
  ELSE
    EXIT(SELECTSTR(2,Text0001))  // NAV Application Server (NAS)
// < TL6.00:05 <<<

Code:
Name       ConstValue
Text0001   CC,NAS,RTC,WS