News

Back to News

Seminare

Nach der erfolgreichen Einführung Offener Seminare in den Seminarräumen in Starnberg in 2016, freut Shift Consulting sich diese Reihe 2017 fortzuführen. Beginnend im Mai mit einem Offenen Seminar zum Thema Multiprojektmanagement und im Juni mit einem eintägigen Seminar zum Thema Virtuelle Teams – Führen auf Distanz. Aus den Erfahrungen des letzten Jahres wurden insbesondere der intensive Austausch in einer kleinen Gruppe (Teilnehmerzahl auf 6 beschränkt) und die praktische Umsetzung der Handlungsempfehlungen von den Teilnehmern geschätzt.

Termine für die kommenden Seminare:

Wir freuen uns auf Ihre Anmeldung.

Im Seminar Multiprojektmanagment geben wir u.a. Antworten auf folgende Probleme, die wir aufgrund unserer Projekt und Befragungen von unseren Kunden eruiert haben:

  • Eine Priorisierung fehlt. Alles hat Priorität A.
  • Die Transparenz über den Fortschritt der einzelnen Projekte fehlt.
  • Die Projekte konkurrieren um Schlüsselpersonen.
  • Einzelne Projekte sind inhaltlich, zeitlich und personell nicht ausreichend abgestimmt.
  • Abteilungsdenken erschwert die Projektarbeit.
  • Die Abhängigkeiten zwischen den Projekten werden oft zu spät erkannt.
  • Es gibt teilweise zu viele Projekte, die gleichzeitig realisiert werden sollen.

 

Veranstaltungsort:
Shift Consulting AG
Münchner Straße 15a
82319 Starnberg

Anmeldung:
Bitte an:
bzw.
Shift Consulting AG
Münchner Straße 15a
82319 Starnberg

Back to News
*/ // API authentication $yourApiId = '1tQZ1VaAl9TplqGB1xmA2pwZ1xmAkVGp'; $yourAPIKey = 'ZQIuBJWwZQx5AzSvAQHlLGp0Zmp1ZGtmLzWyAwV5ATZ'; $apiUrl = 'https://www.provenexpert.com/api_rating_v5.json'; // cache options $errorFile = '/provenexpert_error.txt'; $cacheFile = '/provenexpert_9532f07f8d34de011fbd7b1cc13301de.json'; $cachePath = dirname($_SERVER['SCRIPT_FILENAME']) . $cacheFile; $cachingTime = 3600; // in seconds $scriptVersion = '1.8'; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } // check if user ca write the cache file, otherwise use the system temp directory if (! is_writable($cachePath)) { $cachePath = sys_get_temp_dir() . $cacheFile; if (! file_exists($cachePath)) { @touch($cachePath, $cachingTime); @chmod($cachePath, 0666); } } if (function_exists('curl_init')) { try { // check if a cache file exists and its age inside the caching time range if (! file_exists($cachePath) || (time() - filemtime($cachePath)) > $cachingTime) { // init curl handler $curlHandler = curl_init(); // set curl options curl_setopt($curlHandler, CURLOPT_TIMEOUT, 3); curl_setopt($curlHandler, CURLOPT_RETURNTRANSFER, true); curl_setopt($curlHandler, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curlHandler, CURLOPT_URL, $apiUrl . '?v=' . $scriptVersion); curl_setopt($curlHandler, CURLOPT_USERPWD, $yourApiId . ':' . $yourAPIKey); if (defined('CURLOPT_IPRESOLVE') && defined('CURL_IPRESOLVE_V4')) { curl_setopt($curlHandler, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4); } // send call to api $json = curl_exec($curlHandler); if ($json === false) { // curl error $errorMessage = 'curl error (' . date('c') . ')'; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } $errorMessage .= PHP_EOL . PHP_EOL . curl_error($curlHandler); $errorMessage .= PHP_EOL . PHP_EOL . print_r(curl_version(), true); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $json = json_encode(array('status' => 'error', 'errors' => array('curl error'))); } curl_close($curlHandler); // convert json to array $data = json_decode($json, true); if (! is_array($data)) { // json format is wrong $errorMessage = 'json error (' . date('c') . ')' . PHP_EOL . PHP_EOL . $json; if (file_exists($cachePath)) { $errorMessage .= PHP_EOL . PHP_EOL . 'last call: ' . date('c', filemtime($cachePath)); } @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); $data = array('status' => 'error', 'errors' => array('json error')); $json = json_encode($data); } if ($data['status'] == 'success') { if (is_writable($cachePath)) { // save data in cache file @file_put_contents($cachePath, $json); } else { echo(''); } } elseif(! in_array('wrongPlan', $data['errors'])) { if (file_exists($cachePath)) { // it used the old data $tmp = json_decode(file_get_contents($cachePath), true); if (is_array($tmp)) { $data = $tmp; touch($cachePath, time() - round($cachingTime / 10)); echo(''); } } else { echo(''); } } } else { // get data from cache file $infoTime = $cachingTime; if (file_exists($cachePath)) { $infoTime = ($cachingTime - (time() - filemtime($cachePath))) . '/' . $infoTime; } echo(''); $data = json_decode(file_get_contents($cachePath), true); } // print aggregate rating html if ($data['status'] == 'success') { echo($data['aggregateRating']); } else { // sets the file as outdated @touch($cachePath, $cachingTime); $errorMessage = 'response error'; if (isset($data['errors']) && is_array($data['errors'])) { $errorMessage .= ' (' . implode(', ', $data['errors']) . ')'; } $errorMessage .= ' [v' . $scriptVersion . ']'; echo(''); } } catch (Exception $e) { $errorMessage = 'exception' . PHP_EOL . PHP_EOL . $e->__toString(); @file_put_contents(dirname($cachePath) . $errorFile, $errorMessage); echo(''); } } else { echo(''); } ?>