[gelöst] Dynamics NAV Webclient URL in Microsoft Dynamics CRM als Iframe einbinden

Standardmäßig lassen sich im NAV-Webclient Daten und Tables zwar per erweiterter URL abrufen, diese können jedoch nicht in einer anderen Webseite mit separater Domain per Iframe eingebunden werden.

Um dies jedoch zu ermöglichen, müssen folgende Änderungen durchgeführt werden:

(Die Zusammensetzung der URL wird in folgendem Microsoft Artikel beschreiben: https://msdn.microsoft.com/en-us/library/hh997130(v=nav.90).aspx )


Einstellungen im IIS des NAV Servers:

C:\inetpub\wwwroot\<NAVDBNAME>\web.config

<DynamicsNAVSettings>
<!– Specifies the comma seperated list of allowed frame ancestor URIs when web client is hosted inside an iframe.
The uris can contain wildcards. Example values: „https://mysite.sharepoint.com,https://yoursite.sharepoint.com“, „https://*.myportal.com“
–>
<add key=“AllowedFrameAncestors“ value=“https://*.sharepoint.com, https://*.<yourdomain>.at“ />

CRM Settings

  • Formular-Editor -> Iframe einbinden -> Name: IFRAME_NAV  URL: about:blank

  • Webresource mit Javascript erstellen und dies in den Formulareigenschaften unter Ereignisse hinzufügen
  • Die Webressource hat folgenden Code:

function seturl_nav() {
if (Xrm.Page.getAttribute(„new_nav_location_no„).getValue() != null)
{
var nr = Xrm.Page.getAttribute(„new_nav_location_no„).getValue();
var url = ‚https://<url-nav-server>/<db-name>/WebClient/?company=<company-name>&page=<page-id>&filter=%27Location%20Code%27%20IS%20%27′ + nr + ‚%27 &isembedded=1&showribbon=0&shownavigation=0&showuiparts=0‘;
Xrm.Page.getControl(‚IFRAME_NAV‚).setSrc(url);
}
else { }
}

seturl_nav = Funktionsname
new_nav_location_no = Feldname in DB der Entität
nr = in URL übergebener Wert
IFRAME_NAV = Name des Iframes im Formular
%20 = Leerzeichen
%27 = ‚ (wird für die Abgrenzung der Werte in der URL Verwendet, zB.
%20IS%20 = Bedingungesfeld
%20AND%20 = Bedingungs-Und-Erweiterung
‚ = Wertetrennung für Javascript

  • Handlereigenschaft eintragen als OnLoad Bedingung :

Speichern und Veröffentlichen der Anpassung
Nach erneuter Ladung der CRM Seite wird das Iframe nun im CRM angezeigt:

[gelöst] Microsoft Dynamics CRM 2016 Outlook Client – Probleme beim Verknüpfen

Seit unserem Update auf CRM 2016 (und eigentlich auch schon davor mit CRM 2011) hatten wir mit Probleme beim Verknüpfen von Mails zu kämpfen, doch nun ist es uns endlich (nach gefühlten Tagen an Tests und Versuchen) gelungen dieses Problem zu beheben, mit einem einfachen Registry Eintrag.

folgendes Komponenten sind im Einsatz:
Windows Server 2016 als Terminalserver, Office 2016 64bit, CRM Client 2016

Unser Problem lag darin, dass beim öffnen des Verknüpfung–Fensters der Internet Explorer geöffnet wird, ganze 4 Prozesse werden dafür aktiviert, dadurch dauerte das Verknüpfung teils bis zu 50 Sekunden, oft brach jedoch der Vorgang auf Grund einer Zeitüberschreitung ab.

Folgender Registry Eintrag hat unsere Probleme behoben:

HKEY_CURRENT_USER\Software\Microsoft\MSCRMClient\{1f6e7c4b-42a0-4726-895f-3a7c64b2323c} 
Value name WebBrowserType 
Value type REG_DWORD 
Value data 0x1 (1) 

Daraufhin öffnete der CRM Outlook Client innerhalb 4-6 Sekunden und die EMail wurde ebenso ordnungsgemäß mit der ausgewählten Entität verlinkt.

Bei Fragen könnt ihr gerne schreiben, vl. kann ich Leid geplagten Kollegen damit eine wenig Abhilfe bescheren.

Grüße Robert

Vesta Control Panel Backup von anderem Server einspielen

Um ein Recovery von einem vorherigen Server, bzw. von einem vorherigen Backup einzuspielen, muss die Tar Datei per SFTP auf den Server geladen werden unter /backup/   ->  die Datei sollte admin.2016-09-12.tar heißen.

um eine Recovery durchzuführen starten Sie Putty und verbinden sich auf den Server und führen Sie diesen Befehl aus.

/usr/local/vesta/bin/v-restore-user admin admin.2016-09-12.tar

Wenn Sie einen neuen User erstellen möchten, können Sie dies mit dem Befehl ermöglichen. Zuvor muss jedoch die admin.*.tar auf <ihrusername>.*.tar umbenannt werden.

/usr/local/vesta/bin/v-restore-user <ihrusername> <ihrusername>.2016-09-12.tar

Nach wenigen Sekunden / Minuten (je nach Größe der Datei) werden alle Einstellungen von diesem User wiederhergestellt, Sie sehen es dann im Terminal-Fenster, ob alles funktioniert hat.

 

Teamspeak 3 (TS3) Serveradmin Passwort ändern

Um das ServerAdmin PW zu ändern muss per SSH auf den Server zugegriffen werden.

Am Server mit root anmelden und auf den User TS3 wechseln:

su ts3

daraufhin zum TS3 Ordner verbinden:

cd /usr/local/ts3

Nun den TS3-Server stoppen:

./ts3server_startscript.sh stop

mit diesem Befehl wird der Server neu gestartet und das neue PW hinterlegt.
Somit ist der Login per YaTQA wieder möglich auf Port 10011

./ts3server_startscript.sh start serveradmin_password=neuespasswort

Bei Fragen stehe ich gerne zur Verfügung – Grüße Robert

Debian VServer + Vesta Control Panel

Auf der Suche nach einem Control Panel habe in einige Tools auf einem VServer probiert, doch nur eines war vom Handling und von den Funktionen ausreichend – VestaCP -> www.vestacp.com

list rrd graphics

Die Installation ist Kinderleicht:

Erst einmal den Server Up2date bringen

apt-get update && apt-get upgrade

daraufhin den Editor Nano & Curl installieren

apt-get install nano && apt-get install curl

Und schon kann die Installation von Vesta beginnen:

curl -O http://vestacp.com/pub/vst-install.sh

bash vst-install.sh --nginx no --apache yes --phpfpm no --vsftpd yes --proftpd no --exim yes --dovecot yes --spamassassin yes --clamav yes --named yes --iptables yes --fail2ban yes --mysql yes --postgresql yes --remi yes --quota no --hostname <deineDomain> --email <deineEMAIL> --password <Passwort> --force
 _|      _|  _|_|_|_|    _|_|_|  _|_|_|_|_|    _|_|
 _|      _|  _|        _|            _|      _|    _|
 _|      _|  _|_|_|      _|_|        _|      _|_|_|_|
   _|  _|    _|              _|      _|      _|    _|
     _|      _|_|_|_|  _|_|_|        _|      _|    _|

                                  Vesta Control Panel



Following software will be installed on your system:
   - Apache Web Server
   - Bind DNS Server
   - Exim mail server + Antivirus Antispam
   - Dovecot POP3/IMAP Server
   - MySQL Database Server
   - PostgreSQL Database Server
   - Vsftpd FTP Server
   - Iptables Firewall + Fail2Ban


Would you like to continue [y/n]: y

.......

=======================================================

Congratulations, you have just successfully installed Vesta Control Panel

 https:/xxxxxxxxxxx:8083
 username: admin
 password: test123

Nach ca. 15-20 Minuten ist das Control Panel automatisch installiert und man kann auf das Web-Portal einsteigen

https://<serverip>:8083/login/

Bildergebnis für vestacp login


Max_Upload_Size 2MB erhönen:

Standardmäßig ist in Vesta eine das Upload Limit von 2MB eingestellt. Um auch mal größere Dateien hochladen zu können muss dies angepasst werden:

Mit FileZilla auf den Server verbinden über:

Host: IP oder Domain Port: –
Protocoll: SFTP

Logon Type: Normal
User: root
PW: <euerRootPW>

Verbindet euch auf den Ordner:
/etc/php5/apache2/

und aktualisiere die php.ini um folgende Werte:

memory_limit = 256M 
post_max_size = 500M 
upload_max_filesize = 2M 
upload_max_filesize = 768M 
max_file_uploads = 150

Nach einem Restart des Servers oder des Apache Dienstes am Server, werden die Einstellungen ohne Probleme übernommen und nun steht uns nichts mehr im Weg.

 

TS3 Server unter Debian 8.5 x64 installieren

Mit nur wenigen Schritten kann man parallel zum Webserver auf dem selben VServer einen TS3 Server betreiben. (Teamspeak 3 – Voice Application)

Dazu steigt man mit dem root User ein und fügt einen neuen User hinzu:

adduser ts3

Ein Home-Verzeichnis muss erstellt werden und zugewiesen werden:

mkdir /usr/local/ts3 &&
chown ts3 /usr/local/ts3

Nun steigen wir mit dem User TS3 ein und gehen zum Home-Ordner

su ts3 &&
cd /usr/local/ts3

Nun muss die aktuelle Server-Installation heruntergeladen werden
ein aktueller Link kann unter http://dl.4players.de/ts/releases/3.0.13/ gefunden werden (link zur Datei kopieren: teamspeak3-server_linux_amd64-VERSION.tar.bz2) :

wget http://dl.4players.de/ts/releases/3.0.12.4/teamspeak3-server_linux_amd64-3.0.13.tar.bz2

Diese nun entpacken:

tar xfvj *.tar.bz2

FTP mit Root verbinden und alle Daten aus dem Subfolder in den übergeordneten Folder TS3 kopieren

Daraufhin das einmalige Runscript ausführen:

./ts3server_minimal_runscript.sh

Wenn alles erfolgreich durchläuft wird nun das Passwort und der Token angezeigt, bitte die Daten rauskopieren, diese werden nur hier angezeigt:

------------------------------------------------------------------
                      I M P O R T A N T
------------------------------------------------------------------
               Server Query Admin Account created
         loginname= "serveradmin", password= "xxxxxxxx"
------------------------------------------------------------------

------------------------------------------------------------------
                      I M P O R T A N T
------------------------------------------------------------------
      ServerAdmin privilege key created, please use it to gain
      serveradmin rights for your virtualserver. please
      also check the doc/privilegekey_guide.txt for details.

       token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
------------------------------------------------------------------

Nun kann der Teamspeak Server neu gestartet werden:

./ts3server_startscript.sh stop
./ts3server_startscript.sh start

Damit bei einem Server-Neustart der TS-Server auch mitgestartet wird, muss nun der Linux „Autorun“ Crontab angepasst werden:

su root
crontab -u ts3 -e
@reboot /usr/local/ts3/ts3server_startscript.sh start &> /dev/null

Nun muss nur mehr die VESTA-Firewall davon überzeugt werden, die Daten vom und zum Teamspeak-Server durch zu lassen, dies geschieht über die IPTables mit eurem root User:

iptables -A INPUT -p udp --dport 9987 -j ACCEPT
iptables -A INPUT -p udp --dport 6666 -j ACCEPT
iptables -A INPUT -p udp --sport 9987 -j ACCEPT
iptables -A INPUT -p tcp --dport 30033 -j ACCEPT
iptables -A INPUT -p tcp --sport 30033 -j ACCEPT
iptables -A INPUT -p tcp --dport 10011 -j ACCEPT
iptables -A INPUT -p tcp --sport 10011 -j ACCEPT
iptables-save

 

Nach einem erneuten Neustart des Servers könnt ihr euch nun von dem Autostart im CronTab überzeugen und daraufhin mit dem Teamspeak-Client auf eure IP oder Domain eine Verbindung aufbauen.

Falls ihr mehr als 32 Ports benötigt, müsst ihr eine Non-Profit Lizenz anfordern, diese erhaltet ihr unter: http://npl.teamspeakusa.com/ts3npl.php

Teamspeak-Server Verwaltung:

Zur leichteren Verwaltung der Server-Einstellungen kann ich das Tool YaTQA empfehlen: http://yat.qa/herunterladen/

Einfach mit dem ServerAdmin auf euren Server verbinden und euch stehen alle Möglichkeiten offen.

TIPP: Hiermit ist es ebenso möglich eine neue TS3-Server-Instanz einzurichten mit einem anderen Port

Netzwerk & IT Infrastruktur

Im Zuge der Erneuerung der IT Infrastruktur wurde das Netzwerk komplett überarbeitet, dabei konnte ich folgende Themen bearbeiten:

  • Planung und Implementierung des neuen Netzwerks
  • Switch Konfiguration (HP & Netgear) über Web & SSH
  • Static Routing & Link Aggregation
  • Spanning Tree Protocol & VLAN
  • Stacking der Switches über mehrere Etagen
  • ISCSI Targets & MPIO
  • SAN inkl. Failover-Clustering und LUN Konfiguration

Die Planung der neuen Infrastruktur umfasste zwei Netzwerk-Ebenen:

  • Core-Switches 10Gbit/sT  &  SFP+ Uplink (Stacked)
    • Verbindung zwischen SAN und Rack Servern für ISCSI Anbindung
  • Applications-Switches 1Gbit/s  &  10Gbit/sT + SFP+ Uplink (Stacked über 4 Switches auf 2 Etagen)
    • für allgemeine Verbindung der Server & Clients

Durch die Umsetzung konnten wir eine höhere Ausfallsicherheit & Redundanz erreichen:

  • Server & SAN sind über Link Aggregation über mehrere Switches angebunden.
  • Switches sind gestackt und ermöglichen einen reibungslosen Betrieb trotz Ausfall einer Hardware.
  • Stromunterbrechungen können durch mehrere USV bis zu einer Stunde überbrückt werden. Ab weniger als 40% Kapazität werden die Server automatisch heruntergefahren. Bei mehr Kapazität als 60% werden diese erneut automatisch gestartet.
  • Monitoring ermöglich eine Port-genaue Analyse des Netzwerks und Kontrolle der Server- & SAN-Kapazitäten. Wenn Grenzwerte unterschritten werden, werden Benachrichtigungen verschickt.

CRM 2011 Implementierung & Erweiterung

Im Zuge des Projekts CRM 2011 konnte ich folgende Themen erarbeiten:

  • Installation & Konfiguration
  • Userrechte und Security Konfiguration (CRM & SQL)
  • Erstellen neuer verknüpfter Entitäten
    • Vertragswesen inkl. Abrechnung
    • Anlagenbau inkl. Behälter, Zähler & Modem
  • Geleitete Prozesse durch Workflows & Dialoge auf allen Entitäten.
  • Formular-Anpassungen & JavaScripts
  • Migration von Stammdaten aus bestehenden Systemen
  • Datenverarbeitung & Imports durch Middleware

Ebenso wurde ein bereits bestehendes Access Programm erweitert, um Daten vom CRM abzurufen und für Auswertungen bereit zu stellen.

Prüfdaten-Imports & Verarbeitung im CRM

  • Prüfdaten werden in eine SQL Datenbank importiert. (XML)
  • Verarbeitung und Checks werden durchgeführt
  • Daten werden aufbereitet und für einen import ins CRM bereitgestellt.
  • Import der Daten ins CRM durch Scribe & Erstellung von Anfragen & Aufgaben

Neukundenprozess

  • Kunde wird angelegt
  • Vertrag wird erstellt und über vordefinierte Berichte ausgedruckt
  • Vertragsprüfungsprozess wird gestartet
  • Anlage wird erstellt und Anlagenbauprozess wird gestartet
  • Aufgaben für Behörden-Anfragen und Planung werden erstellt
  • Anlage kann beliefert werden
  • Nach erster Lieferung geht der Status der Verträge sowie die Verrechnung der Pauschalen auf Aktiv

… und diverse Andere Prozesse wie z.B. Zählertausch inkl. Verbrauchsabrechnung