<< Click to Display Table of Contents >> Navigation: SQL-Server Objekte > Von rimacon gelieferte Prozeduren und Funktionen |
Folgende gespeicherte Prozeduren und Funktionen werden von rimacon offiziell ausgeliefert und können in Ihren T-SQL-Scripten genutzt werden.
fnc_cmdb_CNLOG_GetCurrentID
Gibt die mit der aktuellen Verbindung verknüpfte CNLOG_ID der Tabelle CNLOG oder eine 0 zurück.
fnc_cmdb_GetGlobvarAsString
Gibt den Inhalt der globalen Variable zurück. Wenn die Variable nicht vorhanden ist, wird eine leere Zeichenfolge zurückgegeben.
Parameter:
@pName varchar(256) |
Name der Variable |
Rückgabewert: nvarchar(max)
Hinweis: Diese Funktion kann nur für unverschlüsselt gespeicherte Variablen genutzt werden.
fnc_cmdb_GetTextEquivalentForENUMColumn
Gibt die Textäquivalente für ein Attribut von Typ Auswahl zurück.
siehe auch Basisattribute (Eigenschaften / Merkmale)
Parameter:
@pMdtId int |
Mandant-ID, normalerweise 1 |
@pTable varchar(100) @pColumn varchar(100) |
Tabelle und Spalte. Z.B. ‚ANW’ und ‚ANW_Extern’ |
Rückgabewert: table(int_value int, text_value nvarchar(100) )
Beispiel:
select * from dbo.fnc_cmdb_GetTextEquivalentForENUMColumn(1, 'ANW', 'ANW_Extern')
|
fnc_cmdb_GetCurrentWebANW
Gibt die mit der aktuellen Verbindung verknüpfte ANW_ID der Tabelle ANW oder eine 0 zurück.
fnc_htmlspecialchars
Konvertiert nicht-HTML-Zeichen in HTML-Entitiäten.Konkret:
& |
& |
" |
" |
' |
' |
< |
< |
> |
> |
sp_cmdb_add_bg_deletecianddeps
Löscht ein Objekt/CI, identifiziert über Tabelle und Zeile-ID. Das Löschen erfolgt nicht sofort. Die Anforderung wird in der Tabelle BGDELCIDEPS gespeichert und im Hintergrund läuft regelmäßig eine Routine, die die Objekte aus BGDELCIDEPS ausliest und löscht.
Parameter:
@table varchar(100) |
Tabellenname, z.B. „HWM“ |
@objId int |
ID, z.B. konkrete HWM_ID |
@scope int = 6 |
Was außer dem Hauptobjekt (optional) gelöscht werden soll Werte: siehe auch rimacon.cmdb.DeleteCIAndDepsScope |
sp_cmdb_AddBCCToEmailDirekt
Fügt einen BCC-Empfänger hinzu.
Parameter:
@pEmailID int |
E-Mail ID |
@pMail |
nvarchar(100) |
@pName |
nvarchar(100) |
sp_cmdb_AddBCCToEmailOverSQL
sp_cmdb_AddCCToEmailOverSQL
Fügt einen oder mehrere CC- oder BCC-Empfänger hinzu. Siehe auch sp_cmdb_AddRecipientToEmailOverSQL
sp_cmdb_AddCCToEmailDirekt
Fügt einen CC-Empfänger hinzu.
Parameter:
@pEmailID int |
E-Mail ID |
@pMail |
nvarchar(100) |
@pName |
nvarchar(100) |
sp_cmdb_AddRecipientToEmailDirekt
Fügt einen Empfänger hinzu.
Parameter:
@pEmailID int |
E-Mail ID |
@pMail nvarchar(100) |
Empfänger-Adresse (hmustermann@meinefirma.de) |
@pName nvarchar(100) |
Empfänger-Name (Hans Mustermann) |
sp_cmdb_AddRecipientToEmailOverSQL
Fügt einen oder mehrere Empfänger hinzu.
Parameter:
@pEmailID int |
E-Mail ID |
@pSQL nvarchar(max) |
SQL-Ausdruck, der Empfänger-Namen und Empfänger-Email erzeugt und als Recordset zurückgibt. |
@pFieldMail varchar(100) |
Name der Spalte, die die Empfänger-Email enthält |
@pFieldName varchar(100) |
Name der Spalte, die den/die Empfänger-Name(n) enthält |
Beispiel:
exec sp_cmdb_AddRecipientToEmailOverSQL 12345, N'select VCOL_Name, VCOL_EMAIL from VTAB_Leute WHERE VCOL_IsSAPAdmin=1', 'VCOL_EMAIL', 'VCOL_Name' |
sp_cmdb_add_int_to_conndata
sp_cmdb_add_sqldbg
Einfügen einer Zeile in die Tabelle SQLDBG. Diese Tabelle dient nur für das Speichern von Debuginformationen von T-SQL-Scripten. Sie können beliebig genutzt werden.
Parameter:
@key varchar(50) |
Wert für die Spalte key |
@value1 varchar(4000) |
Wert für die Spalte value1 |
@value2 varchar(4000) |
Wert für die Spalte value2 |
@value3 varchar(4000) |
Wert für die Spalte value3 |
sp_cmdb_bgisbatch_init
Startet einen regelbasierten Ist/Soll-Abgleich
@key as varchar(50) |
Identifiziert den konkreten regelbasierten Ist/Soll-Abgleich |
|
@prms as varchar(8000) |
Parameter, als Pärchen name=value. Mehrere Parameter müssen mit Semikolon getrennt werden. |
|
exec sp_cmdb_bgisbatch_init 'hwm_und_switch', 'rfcid=123;procid=abcd'
|
sp_cmdb_cigroup_start
Startet die Aktualisierung einer Gruppe, siehe auch Gruppen aktualisieren.
@key varchar(50) |
Identifiziert die Gruppe, siehe auch Reiter „Allgemein“ |
sp_cmdb_CreateEmail
Erstellt eine E-Mail ohne Empfänger-Adresse, ohne diese zu verschicken. Die Empfänger-Adressen müssen nachträglich hinzugefügt werden.
Der Inhalt ist ein Klar-Text. Um einen HTML-Inhalt zu schicken, nutzen Sie die Prozedur sp_cmdb_SetEmailHtmlBody.
Parameter:
@pNewIdAsRS int |
Wenn gleich 1: Die Prozedur gibt ein Recordset zurück, das eine Zeile und eine Spalte (EMAIL_ID) enthält. Die Spalte enthält die ID der neuen E-Mail aus der EMAIL-Tabelle.
Wenn ungleich 1: Die Prozedur gibt kein Recordset zurück. Stattdessen wird die neue ID in Parameter @pNewEmailID gespeichert. |
@pNewEmailID int output |
siehe @pNewIdAsRS |
@pSendDate datetime |
Versandzeitpunkt. Wenn null 🡪 aktuelles Datum und Zeit. |
@pFromMail nvarchar(100) |
Sender-Adresse (admin@meinefirma.de |
@pFromName nvarchar(100) |
Sender-Name (admin) |
@pReplyTo nvarchar(100) |
Antwort-Adresse |
@pSubject nvarchar(100) |
Betreff |
@pBody nvarchar(max) |
Inhalt |
sp_cmdb_CreateOneShotGrantedRightsForUserform
Mit dieser Funktion kann für einen konkreten Webbenutzer eine einmalige Berechtigung für eine individuelle Maske vergeben werden. Dies ist sinnvoll, wenn Sie z.B. eine URL für individuelle Maske generieren und der Webbenutzer evtl. keine Berechtigungen für die Maske hat.
Parameter:
@pKey varchar(50) |
Eine zufällige Zeichenfolge, die Sie vorher generieren und später beim Aufruf der individuellen Maske als pGrantedRightsKey-Parameter benutzen |
|
@pAnwID int |
Webbenutzer ID (ANW.ANW_ID) |
|
@pRights int |
Berechtigungen als Bitmask 1 = select, 2 = insert, 4 = update |
|
@pUserformID int |
|
|
@pObjID int |
Konkrete CI-ID |
|
Beispiel für ein Webmenüpunkt.
declare @key varchar(50), @url varchar(500) set @key = newid() exec sp_cmdb_CreateOneShotGrantedRightsForUserform @key, $_AnwID, 5/*1+4*/, 235,250
set @url = '/userform?pUserformID=235' set @url = @url + '&pSessionKey=$_SessionKey' set @url = @url + '&pID=250' set @url = @url + '&pGrantedRightsKey=' + @key select @url
|
sp_cmdb_CreateSMS
Erstellt eine SMS, ohne diese zu verschicken. Diese Prozedur ist fast mit sp_cmdb_SendOneSMS identisch, außer dass hier der Status auf „Building“ gesetzt wird.
Über die Prozedur sp_cmdb_SetSMSExtParam können erweiterte Parameter hinzugefügt werden, die über @pExtParams nicht hinzugefügt werden können (z.B. weil Apostroph, Semikolon oder Gleichheitszeichen enthalten sind).
Zum Schluss rufen Sie die Prozedur sp_cmdb_SendSMS auf
Parameter:
@pNewIdAsRS int |
Wenn gleich 1: Die Prozedur gibt ein Recordset zurück, das eine Zeile und eine Spalte (SMSOUT_ID) enthält. Die Spalte enthält die ID der neuen SMS aus der SMSOUT-Tabelle.
Wenn ungleich 1: Die Prozedur gibt kein Recordset zurück. Stattdessen wird die neue ID in Parameter @pNewSmsID gespeichert. |
@pNewSmsID int output |
siehe @pNewIdAsRS |
@pSendDate datetime |
Versandzeitpunkt. Wenn null ->aktuelles Datum und Zeit. |
@pFrom varchar(50) |
Sender. Kann auch leer sein. |
@pTo varchar(50) |
Mobilnummer |
@pExtParams nvarchar(max) |
Erweiterte Parameter. Beispiele: flash=1 flash=1;codierung=plain |
@pBody nvarchar(max) |
Inhalt der SMS. |
sp_cmdb_remove_int_from_conndata
sp_cmdb_SendEmail
Beschreibung: Markiert die E-Mail als „vorbereitet für den Versand“.
Parameter:
@pEmailID int |
E-Mail ID |
sp_cmdb_SendOneEmail
Verschickt eine E-Mail an nur eine (!) E-Mail-Adresse. Der Versand einer E-Mail an mehrere Empfänger ist bei dieser Prozedur nicht möglich, auch nicht durch Trennung der einzelnen Empfänger-Adressen durch Satzzeichen (z.B. Müller@rimacon.de; Meier@rimacon.de etc.).
Der Inhalt ist ein Klar-Text. Über diese Prozedur kann der Inhalt nicht als HTML geschickt werden.
Parameter:
@pNewIdAsRS int |
Wenn gleich 1: Die Prozedur gibt ein Recordset zurück, das eine Zeile und eine Spalte (EMAIL_ID) enthält. Die Spalte enthält die ID der neuen E-Mail aus der EMAIL-Tabelle.
Wenn ungleich 1: Die Prozedur gibt kein Recordset zurück. Stattdessen wird die neue ID in Parameter @pNewEmailID gespeichert. |
@pNewEmailID int output |
siehe @pNewIdAsRS |
@pSendDate datetime |
Versandzeitpunkt. Wenn null 🡪 aktuelles Datum und Zeit. |
@pFromMail nvarchar(100) |
Sender-Adresse |
@pFromName nvarchar(100) |
Sender-Name |
@pRcptMail nvarchar(100) |
Empfänger-Adresse |
@pRcptName nvarchar(100) |
Empfänger-Name |
@pReplyTo nvarchar(100) |
Antwort-Adresse |
@pSubject nvarchar(100) |
Betreff |
@pBody nvarchar(max) |
Inhalt (Klar-Text) |
sp_cmdb_SendOneSMS
Verschickt eine SMS. Diese Prozedur ist fast mit sp_cmdb_CreateSMS identisch, außer dass der Status gleich auf „vorbereitet für den Versand“ gesetzt wird und weitere Änderungen an der SMS nicht möglich sind.
Parameter: Siehe sp_cmdb_CreateSMS
sp_cmdb_SendOneSMS2
sp_cmdb_SendOneSMS3
sp_cmdb_SendOneSMS4
sp_cmdb_SendOneSMS5
Diese Prozeduren sind ähnlich wie die sp_cmdb_SendOneSMS, benutzen aber weniger Parameter und sind daher einfacher zu handhaben.
sp_cmdb_SendSMS
Markiert die SMS als „vorbereitet für den Versand“.
Parameter:
@pSmsID int |
SMS ID |
sp_cmdb_SetEmailHtmlBody
Legt den HTML-Inhalt fest
Parameter:
@pEmailID int |
E-Mail ID |
@pHtmlBody |
nvarchar(max) |
sp_cmdb_SetGlobvarAsString
Legt Inhalt der globalen Variablen fest.
Parameter:
@pName varchar(256) |
Name der Variable |
@pValue nvarchar(max) |
Wert als Zeichenfolge |
Hinweis: Diese Funktion kann nur für unverschlüsselt gespeicherte Variablen genutzt werden.
sp_cmdb_SetSMSExtParam
Legt Wert eines erweiterten Parameter für eine SMS fest.
@pSmsID int |
SMS ID |
@pName varchar(50) |
Parametername |
@pValue nvarchar(max) |
Wert |
sp_cmdb_srcsnapshot_start
Startet (asynchron) den Refresh von einer Materialized View.
Parameter:
@pKey nvarchar(50) |
Identifiziert die Materialized View |
Beispiel:
exec sp_cmdb_srcsnapshot_start N'mview_oracle01_hr_jobs'
|