Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:mi_searchsourcecode_ad

mi_SearchSourceCode_Ad

Durchsucht den Source-Code von Objekten, die „T-SQL“-Code enthalten.

HTTP-MethodGET
HTTP-AuthOptional
Tags
Engine-Kategoriesystem administration
Engine-TypDaten-Ermittlung
Letzte Aktualisierung7.0.7 (2015-01-29)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
SearchPattern Ausdruck, nach dem (mit dem „LIKE“-Operator) im Quelltext gesucht werden soll
varchar(100)5.1.8
CaseSensitive0 Möchte unter Berücksichtigung von Groß- und Kleinschreibung suchen lassen, übergibt man hier den Wert „1“
bit5.1.8
DoNotSearchInCommentPart1 Wo soll gesucht werden :
„0“ : AUCH in Kommentaren
„1“ : NICHT in Kommentare
„2“ : NUR in Kommentaren
tinyint5.1.8
SearchOnlyThisObjectNameNULL Soll nur ein bestimmtes Objekt durchsucht werden, kann man hier den entsprechenden Namen angeben (derzeit nur eine Prozedur oder ein Trigger). Ist der Quelltext dieses Objektes nicht (in „syscomments“) vorhanden, gibt es einen Fehler !
varchar(50)5.1.8
SearchOnlyObjectTypeNULL Wird nur beachtet, wenn „NULL“ für „SearchOnlyThisObjectName“ angegeben ist ! Falls angegeben, werden nur Objekte dieses Typs durchsucht. Mögliche Werte :
* „StoredProc“ (für Prozeduren)
* „Trigger“
* „SQLFunct“ (für SQL-Funktionen)
varchar(10)5.1.8
GetDistinctObjectNamesOnly0 Ist man lediglich an einer Auflistung der „ObjectName“s, in denen „SearchPattern“ gefunden wurde, interessiert, gibt man hier „1“ an (und erhält dann eine andere Rückgabemenge)
bit5.5.0
SearchObjectsWithNameLikeNULL Wird nur beachtet, falls „NULL“ für „SearchOnlyThisObjectName“ angegeben wurde ! Wenn angegeben, werden alle Objekte (des Typs „SearchOnlyObjectType“ falls angegeben) durchsucht, deren Name bei Anwendung des „LIKE“-Operators übereinstimmt.
varchar(100)5.5.2

Rückgabe

wenn GetDistinctObjectNamesOnly = 0

Spaltenname Beschreibung SQL-Datentyp4) ab Version
ObjectNameName des Objektes, in dessen Source-Code „SearchPattern“ vorkommt
varchar(50)5.1.8
ObjectTypeGibt an, um was für einen Typ es sich bei dem Objekt „ObjectName“ handelt. Mögliche Werte :
* „StoredProc“ (für Prozeduren)
* „Trigger“
* „SQLFunct“ (für SQL-Funktionen)
varchar(10)5.1.8
CodeLineNumberEindeutige Nummer der Zeile im Source-Code von „ObjectName“, in der „SearchPattern“ gefunden wurde
smallint5.1.8
CodeLineDer komplette Code, der in Zeile „CodeLineNumber“ des Source-Codes von „ObjectName“ steht
varchar(255)5.1.8
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • ObjectName (aufsteigend)
  • ObjectType (aufsteigend)
  • CodeLineNumber (aufsteigend)

wenn GetDistinctObjectNamesOnly = 1

Spaltenname Beschreibung SQL-Datentyp5) ab Version
ObjectNameName des Objektes, in dessen Source-Code „SearchPattern“ vorkommt
varchar(50)5.5.0
Sortierung der Rückgabe

(parameterunabängige Sortierung)

  • ObjectName (aufsteigend)

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 6)
-577Der Source-Code der SQL-Funktion ist nicht verfügbarnur indirekt
-574Der Source-Code des Triggers ist nicht verfügbarnur indirekt
-573Der Source-Code der Prozedur ist nicht verfügbarnur indirekt
-569Der Benutzer hat kein Ausführungsrecht für die Prozedurnur indirekt
-567Die Prozedur darf z. Zt. nicht ausgeführt werdennur indirekt
-566Die Prozedur darf mit den übergebenen Parametern nicht ausgeführt werdennur indirekt
-535Das Datum liegt nicht in der Vergangenheitnur indirekt
-530Der Wert ist nicht konvertierbarnur indirekt
-510Der Benutzer ist nicht registriertnur indirekt
-504Es ist ein Problem aufgetreten, das nicht gelöst werden kann, Prozedur wird daher abgebrochennur indirekt
-502Die Parameter-Werte der Prozedur können nicht verarbeitet werden (kein passendes Trennzeichen)nur indirekt
-500Falsche Parameternur indirekt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.7 2015-01-29Interne Änderung : Datentyp-Erweiterung des „ReferenceKey“ [für „_mi_StartProcedure“-Aufruf]
6.5.3 2013-03-181. Interne Anpassungen wg. UTF8-Unterstützung
2. Fehler : Wenn nichts gefunden wurde, gab es bislang im Fall „GetDistinctObjectNamesOnly = 1“ keine
leere Ergebnismenge sondern eine Rückgabemenge mit einem Datensatz und „NULL“ in den Rückgabespalten
6.0.4 2011-10-21Ab jetzt werden auch „SQL-Funktionen“ unterstützt ⇒ Neuer möglicher Wert für „SearchOnlyObjectType“
5.5.2 2008-10-21Neuer Parameter „SearchObjectsWithNameLike“
5.5.0 2008-01-07Neuer Parameter „GetDistinctObjectNamesOnly“
5.1.8 2006-12-12Erstmalig in dieser Version erstellt

Code-Snippets

Engine Playground

Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist:

cURL

Unformatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/mi_SearchSourceCode_Ad?SearchPattern=<value>'

Mit xmllint 7) formatierte Ausgabe:

curl -X GET  'http://<partner>-<project>.dstore.de/default/engine/mi_SearchSourceCode_Ad?SearchPattern=<value>' | xmllint --format -
dStore_php
use dStore_php\WebService;
 
$service = new WebService\Service( WebService\Scheme::HTTP,'<partner>-<project>.dstore.de', 80);
 
$request = new WebService\Requests\Engine\Procedure\Request(
			new WebService\Requests\AccessData('default'),
	'mi_SearchSourceCode_Ad',
		array(
			'SearchPattern' => '<value>',
			// 'CaseSensitive' => 0,
			// 'DoNotSearchInCommentPart' => 1,
			// 'SearchOnlyThisObjectName' => NULL,
			// 'SearchOnlyObjectType' => NULL,
			// 'GetDistinctObjectNamesOnly' => 0,
			// 'SearchObjectsWithNameLike' => NULL
		)
);
 
$service->execute($request);
 
			$xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument();
			$ResultSet = $xml_result->getRowsAsArray();
engine/execute

XML zur Ausführung mit der Methode engine/execute, z.B. per

curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>'
<?xml version="1.0" encoding="UTF-8"?>
<ListOfBatches>
	<Batch No="0">
		<Procedure Name="mi_SearchSourceCode_Ad">
			<Parameters>
				<Parameter Name="SearchPattern"><!-- varchar value --></Parameter>
				<!-- <Parameter Name="CaseSensitive">0</Parameter> -->
				<!-- <Parameter Name="DoNotSearchInCommentPart">1</Parameter> -->
				<!-- <Parameter Name="SearchOnlyThisObjectName">NULL</Parameter> -->
				<!-- <Parameter Name="SearchOnlyObjectType">NULL</Parameter> -->
				<!-- <Parameter Name="GetDistinctObjectNamesOnly">0</Parameter> -->
				<!-- <Parameter Name="SearchObjectsWithNameLike">NULL</Parameter> -->
			</Parameters>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
6)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
7)
I.d.R. auf Unix-artigen Systemen bereits installiert, Bestandteil der libxml2, siehe http://www.xmlsoft.org
engine/procedures/mi_searchsourcecode_ad.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)