Urlaubszeit: Abwesenheitsnotiz automatisch generieren

laptop in a spring field

Die Erstellung einer Abwesenheitsnotiz für das Mailpostfach ist ein wichtiger Bestandteil auf dem Weg in den Urlaub. Oft wird diese noch kurz vor knapp zusammengeschrieben, und zack: schon kommt es zu Unstimmigkeiten beim Rückkehrdatum in der deutschen und englischen Variante. Das hinterlässt beim Kunden neben der Verwirrung über die eigentliche Rückkehr aus dem Urlaub auch den Eindruck, dass schlampig gearbeitet wird.

Continue reading

VBA Makros in Unternehmen

makro_kv
Im Jahr 1993 hat Microsoft eine auf Visual Basic basierende Skriptsprache veröffentlicht, die bis heute in den Microsoft-Office Dateien der Unternehmen eingesetzt wird. Eine proprietäre Skriptsprache, die nur für ein einziges Office-Paket entwickelt wurde und dessen Quellcode heutzutage eigentlich kein Unternehmen mehr pflegen möchte – es aber trotzdem macht. Ich spreche hier von VBA (Visual Basic for Applications). In vielen Excel-Sheets von Unternehmen steckt unperformanter VBA-Code, der so manchen Anwender und Entwickler auf eine Gedulds-Probe stellen kann. Continue reading

Rapid Prototyping im Projekt – Wie lassen sich meine Anforderungen kurzfristig verifizieren?

Die Anforderungsermittlung steht am Anfang jeder Entwicklung eines Softwaresystems. Egal ob komplexe, verteilte Applikationen, die unterschiedliche Geschäftsprozesse abbilden, oder webbasierte Anwendungen mit Userschnittstellen – Anforderungen stellen immer die Basis dessen dar, wie ein zu implementierendes System am Ende auszusehen hat. Da es sich um das vermeintliche Zielbild oder Design einer Software handelt, gibt es bei der Ermittlung von technischen und fachlichen Anforderungen oft Diskussionsbedarf.
Continue reading

Liferay in Action – wie kann ich fancy AngularJS Apps mit meiner bestehenden B2X-Portal-Infrastruktur verbinden?

© maciek905 - Fotolia.com

AngularJS ist derzeit in aller Munde: jede Webentwicklerzeitschrift berichtet über den Einsatz des JavaScript Frameworks. Der Google-Trend schießt durch die Decke – die Software & Support Media Group bietet sogar eigene AngularJS-Trainings, die sogenannten http://angularjs-days.de an. Doch trägt das Framework und ist es für den Unternehmenseinsatz geeignet? Genau diese Frage hat sich ein Kunde von doubleSlash gestellt.

Die Ausgangspunkte unseres Kunden:

  1. Weltweites Unternehmen
  2. Bestehende B2X-Infrastruktur/bestehende Zuliefersysteme
  3. Intranetanwendungen sollen erweitert und als mobile Website bzw. als App bereitgestellt werden

Die Frage: Wie ist es möglich, eine AngularJS-Anwendung in die bestehenden Compliance-Vorgaben eines derartigen Unternehmens nachhaltig zu integrieren? Nach ausgedehnten Evaluierungen fiel die Entscheidung auf eine AngularJS-Anwendung, die mittels Liferay-REST-Services auf die Unternehmensdaten zugreift.

Hierbei wurde ein Service mittels Liferay-Webservices erstellt und dokumentiert:

Abbildung 1: JSON WebService API von Liferay. Nach Auswahl des DS-Demo-portlet werden dessen angeboten Service Methoden dargestellt.
Abbildung 1: JSON WebService API von Liferay. Nach Auswahl des DS-Demo-portlet werden dessen angeboten Service Methoden dargestellt.
Abbildung 2: Liferay bietet die Möglichkeit die Methoden direkt im Browser zu testen und bietet bereits einCode Beispiel an.
Abbildung 2: Liferay bietet die Möglichkeit die Methoden direkt im Browser zu testen und bietet bereits einCode Beispiel an.

Die AngularJS-Anwendung konsumiert nun den Liferay-Webservice mit all seinen Vorteilen, die das Enterprise-Portal bereits mitbringt.

Wie erstellt man einen Liferay-Webservice?

Um einen Liferay-Webservice erstellen zu können, benötigt man die aktuelle Liferay IDE und erstellt ein neues Liferay-Plug-in auf Basis von Maven. Hierfür fügt man im Ordner WEB-INF eine Datei mit dem Name service.xml mit bspw. folgendem Inhalt hinzu:

< !DOCTYPE service-builder PUBLIC "-//Liferay//DTD Service Builder 6.0.0//EN" "http://www.liferay.com/dtd/liferay-service-builder_6_0_0.dtd">
 
	Demo
 
 
		<!-- PK fields -->
 
 
		<!-- Group instance -->
 
 
		<!-- Audit fields -->
 
 
 
 
 
 
		<!-- Other fields -->

Mittels des Liferay Targets „build-service“ wird der Service erstellt. Als nächstes müssen die benötigten Service-Methoden in den Klassen ausimplementiert werden, in unserem Beispiel die Klasse „DemoServiceImpl“. Anschließend muss nochmals das Liferay Target „build-service“ via Maven ausgeführt werden. Zum Schluss wird der Service mittels des Maven Targets „deploy“ in Liferay installiert und kann über http://yourdomain.de/api/json/ ausgewählt werden.

Hier der Sourcecode des beschriebenen Beispielprojekts zum Download: DS-Demo

Effizientere Anwendungsentwicklung durch Software Design Patterns

Software Design PatternHäufig stehen wir Software Architekten vor gleichen oder ähnlichen Herausforderungen, die es im Arbeitsalltag möglichst effizient zu meistern gilt. Neben den gängigen Entwicklungswerkzeugen können Software Design Patterns für viele Standard-Probleme eine Standard-Lösung anbieten, die, wenn man sie korrekt einsetzt, eine Menge Code ersparen und die Anwendung wesentlich testbarerer gestalten.
Continue reading

Wie IoT das Marketing verändert

Wie IoT das Marketing verändertWerbemassenversände, wilde Plakatierungen, zahllose Anzeigenschaltungen… willkommen im Gießkannenprinzip des Marketings von gestern – verursacht durch die einheitliche Ansprache aller nur vorhandenen Kontakte aus der Kundendatei. Das Ergebnis: Hohe Streuverluste und verlorene Verkaufsoptionen, denn auf diese Weise ist es schlicht unmöglich, den reellen Bedarf eines jeden Kunden anzusprechen [1]. Continue reading

Tutorial: Bedingte Formatierung in Microsoft Excel mit .NET programmatisch erstellen

Bedingte Formatierung in Excel mit .NET via C#Microsoft Office Excel bietet vielfältige Unterstützung für die bedingte Formatierung. Diese kann auf einen oder mehrere Zellbereiche – basierend auf ihren Zell- oder Formelwerten – angewendet werden. Bei doubleSlash wird diese Funktionalität hauptsächlich bei Abweichungen von Aufwandsschätzungen bzw. bei Controllinginstrumenten im Projektmanagement verwendet. Somit ist leicht einsehbar, ob für Kosten, Budget oder eine Timeline bestimmte Schwellwerte unter- oder überschritten werden.
Continue reading