Archive by Author

Sql Reporting Services Parameter by URL

Wert an die URL anhängen z.b.: &KundeId=2, im Sharpoint &rp:UserFCodes=1

sql agent running ? mit tsql

if 0<(select count(*) from sys.sysprocesses where program_name like ‘SQLAgent%’) begin print ‘sql agent is running’ end else begin print ‘sql agent is not running’ end

typed Dataset: mit Null Werte umgehen

verwende SetXXXNull() IsXXXNull() Methode der typed Datarow Instanzen

asp.net 4.0 deployment on IIS 7.0

aspnet_regiis –i um asp4.0 auf iis7 zum Laufen zu kriegen

Transactionale Replikation:

Zunächst wird mit einem SQLAgentJob ein Snapshot angelegt, und zwar macht das der Raplikationsagent, also das WIndows Konto das beim Einrichten des Publishers angegeben wurde. wichtig: dieser Agent braucht schreibrechte auf der Freigabe, die zum Speichern des Snapshots verwendet wird – dort wird ein unc Directory angelegt und darin wieder eines mit dem Publikationsnamen, darin [...]

Zusammenfassung Delegates, anonyme Methoden usw.

Evolution der Delegates in C#: delegate void TestDelegate(string s); TestDelegate testDelA = new TestDelegate(M); //C#1.0 explicite Method M must me declared TestDelegate testDelB = delegate(string s) { Console.WriteLine(s); }; //C#2.0 inline “anonymos method TestDelegate testDelC = (x) => { Console.WriteLine(x); }; // C# 3.0. lambda expr. Action <string> TestDelegate; //C#4.0 DelegateDefinition einfacher //C# 4.0 Actions [...]

custom config section class

Eine eigen configsection Klasse muss von ConfigurationSection abgeleitet sein, braucht eine Property SectionName, anbei der Code zum lesen und Schreiben, bei Fehlersuche ist es ratsam im Visual Studio unter Debug/Exceptions bei CLR Exceptions das Häckchen bei Thrown anzuhacken, da Fehler sonst vom Configurationmanager unterdrückt werden. Aktiviert man aber dass die Ausführung bei thrown Exceptions unterbricht,bekommt [...]

Default Values in Stored Procedures, Severity Levels

ALTER PROCEDURE testRaiseError @Severity int =18 AS BEGIN – SET NOCOUNT ON added to prevent extra result sets from – interfering with SELECT statements. SET NOCOUNT ON; Raiserror(‘Test Raiserrror’,@Severity,10) END Fehler ab einer Severity von 10 brechen ein laufendes TSQL Script ab und gelten als Fehler

Transaktion mit Fehlerbehandlung in TSQL

Beispiel Insert und Update in einer Transaktion, wenn eines fehlschlägt wird zurückgerollt und der Fehler weitergegeben BEGIN TRAN T1 BEGIN TRY –write all values to mcit.auditrail (@UserId) INSERT INTO [AuditTrail] ([ActionType],[ObjectType],[ObjectId],[OldValues],[NewValues],[UserId]) SELECT ‘Update’,’Products’,Id,CONVERT(Nvarchar(MAX),Price),CONVERT(Nvarchar(MAX),Price*@PriceFact),@UserId from product where [year]=@Year and SupplierGroupId=@SupplierGroupId and IsDeleted=0 update mcit.product set Price=Price*@PriceFact where [year]=@Year and SupplierGroupId=@SupplierGroupId and IsDeleted=0 END TRY BEGIN CATCH [...]

log4net – einfaches Besipiel fuer rolling file appender, Email und Datenbank appender

appender schreiben die messages in files, mails, datenbanken …; die messages werden mit den loggern erzeugt, wobei es eine logger hirachie gibt an deren Spitze der root logger steht, der auch alle messages die von anderen loggern erzeugt wurden loggt (also an seine appender weitergibt). So ist es möglich mit einem logger z.b. alle log [...]