Mehr

Auslösen von Ereignissen beim Laden und Beenden des Ladens aus dem WMS

Auslösen von Ereignissen beim Laden und Beenden des Ladens aus dem WMS


Ich erstelle derzeit eine Webgis-Anwendung mit OpenLayers 3.0.0 und versuche, beim Laden von Layern aus einem WMS ein Lade-Gizmo anzuzeigen. Ich habe Beispiele für OL 2.1.0 gefunden, das 'loadstart'- und 'loadend'-Ereignisse registriert.

Ich hatte jedoch keinen Erfolg damit, diese Ereignisse in OL 3.0 zu registrieren.

Hat jemand irgendwelche Hinweise, wie man das macht oder weiß, ob dies in OL 3.0 überhaupt möglich ist?

Vielen Dank!


das funktioniert gut: Ereignis auslösen, sobald die Ebene geladen ist

zum Beispiel:

var wmssource = new ol.source.ImageWMS({ url: 'http://localhost:8080/geoserver/routing/wms', imageLoadFunction: function(image, src) { var imageElement = image.getImage(); imageElement.onload = function() { console.log('loaded'); $('#spinner').hide(); }; imageElement.src = src; } }); var result = new ol.layer.Image({ source: wmssource }); map.addLayer(Ergebnis); $('#spinner').show();

Vertriebsmanagementsystem

In den letzten Jahren hat die Nutzung elektrischer Energie exponentiell zugenommen und die Kundenanforderungen und Qualitätsdefinitionen von Strom haben sich enorm verändert. Da die elektrische Energie zu einem wesentlichen Bestandteil des täglichen Lebens wurde, wurde ihre optimale Nutzung und Zuverlässigkeit wichtig. Die Echtzeit-Netzwerkansicht und dynamische Entscheidungen sind für die Optimierung von Ressourcen und die Verwaltung von Anforderungen von entscheidender Bedeutung geworden, wodurch ein Verteilungsmanagementsystem, das ordnungsgemäße Arbeitsabläufe bewältigen kann, sehr wichtig ist.


Lagerverwaltung

Unsere Enterprise 3PL Lagerverwaltungslösung ermöglicht ein hohes Maß an Konfigurierbarkeit für echte Mandantenfähigkeit (Mandanten, Einrichtung, Workflows, Sprache). Unsere Logistiklösung von Drittanbietern ist einfach zu implementieren, ohne dass Codeänderungen erforderlich sind. Schließen Sie einfach Ihre Profilvorlage an und passen Sie sie an individuelle Nutzungsszenarien an (konfigurieren Sie die leistungsstarke regel- und rollenbasierte Engine).

Vorteile unseres WMS:

  • Hohe Konfigurierbarkeit durch den Endbenutzer
  • Schnelle und einfache Bereitstellung
  • Hunderte von Bereitstellungen auf der ganzen Welt

Komponenten des WMS

  • Eingangslogistik
  • 3PL-Mehrwertdienstleistung (Arbeitsaufträge/Sonderbearbeitung)
  • Outbound-Logistik


Sie können den booleschen Wert des Kontrollkästchens wie folgt überprüfen. Hoffe das hilft

Sie sind auf dem richtigen Weg, möchten aber wahrscheinlich einige Änderungen vornehmen. Zunächst muss Ihr Trigger auch das Ereignis "Nach Update" berücksichtigen, da das Aktivieren eines Kontrollkästchens im Konto ein "Update"-Ereignis ist.

Als Nächstes ist Ihr Trigger derzeit nur für die Verarbeitung eines einzelnen Objekts eingerichtet. Es empfiehlt sich, Ihren Trigger zu bündeln, damit er eine beliebige Anzahl von Datensätzen verarbeiten kann, die in diesen Triggerkontext eintreten. Etwas in dieser Richtung sollte funktionieren:

Im obigen Beispiel beginnen wir also mit der Auswertung des Triggerkontexts, um unseren Code nur dann auszuführen, wenn es sich um After Update handelt. Dies ist wichtig, da wir immer davon ausgehen wollen, dass es mehrere Account-Datensätze gibt, die diesen Trigger bei jedem Aufruf eingeben könnten. Wenn beispielsweise ein Konto eingefügt wird, möchten wir nicht, dass es unseren Code eingibt, der nur für Konten gelten sollte, die mit diesem Kontrollkästchen aktualisiert werden.

Als nächstes instanziieren wir eine Liste von Kontakten. Dies ist der Schlüssel zur Bulkisierung Ihres Triggers. Durch das Erstellen einer Liste sind wir in der Lage, Datensätze, die eingefügt oder (in diesem Fall) aktualisiert werden müssen, zu speichern und unsere Einfüge-/Aktualisierungsoperation gleichzeitig für alle durchzuführen - anstatt einzeln, was Ihre Grenzen aufzehrt und könnte für Sie später zu Ausfällen führen. Wir durchlaufen dann alle Account-Datensätze, geben den Auslöser für diese Operation ein und rufen mit der 'trigger.oldMap' den 'alten Account' ab - die oldMap speichert eine Version des Datensatzes, bevor Änderungen vorgenommen wurden. Wenn der Benutzer beispielsweise dieses Kontrollkästchen aktiviert und auf Speichern klickt, würde das Konto in 'trigger.new' anzeigen, dass checkBox == true ist, während das in der oldMap gespeicherte Konto anzeigen würde, dass die checkBox == falsch.

Als Nächstes fügen wir weitere Logik hinzu, um nur Kontakte zu erstellen, wenn das Kontrollkästchen aktiviert wurde. Dies vergleicht die neuen Vs. das alte, um zu sehen, dass dieses Kontrollkästchen zuvor deaktiviert war und JETZT aktiviert ist. Wir erstellen dann einen neuen Kontaktdatensatz und fügen ihn der oben erstellten Liste hinzu.

Schließlich überprüfen wir, ob unsere Kontaktliste leer ist. Wenn es leer ist, bedeutet dies, dass bei keinem Account, der diesen Trigger eingegeben hat, das Kontrollkästchen Create_Contact__c aktiviert war und daher keine weiteren Maßnahmen erforderlich sind. Wenn die Liste jedoch Datensätze enthält, bedeutet dies, dass einige Accounts diese Kriterien erfüllt haben und wir die Kontakte einfügen möchten, die wir für diese angegebenen Accounts erstellt haben. Wir tun dies mit dem letzten Stück Code:


Der gewünschte Befehl ist :e (kurz für :edit ). Wenn Sie :edit! lokale Änderungen werden verworfen und neu geladen.

Sie können vim dies auch automatisch mit set autoread in Ihrem vimrc tun lassen.

In vielen Fällen funktioniert set autoread nicht, wie diese Antwort erklärt:

Autoread lädt die Datei nicht neu, es sei denn, Sie führen einen externen Befehl aus (wie !ls oder !sh usw.).

Fokusereignisse lösen Autoread aus, aber diese werden nicht erfasst, es sei denn, Sie verwenden gvim. Wenn Sie also einfaches vim in einem Terminalfenster oder tmux ausführen, installieren Sie das Plugin vim-tmux-focus-events.

Bei tmux-Versionen > 1.9 müssen Sie .tmux.conf hinzufügen:

Der Vorteil ist, dass das Hinzufügen der folgenden Elemente zu Ihrem vimrc das automatische Lesen auslöst, wenn die Puffer darin geändert werden, während Innerhalb vim:

Wenn Sie jemals einen externen Befehl von Vim ausgeführt haben, der den aktuellen Puffer ändert, haben Sie vielleicht bemerkt, dass Sie aufgefordert werden, die Datei neu zu laden, da Änderungen an der Festplatte vorgenommen wurden. Sie können diese Eingabeaufforderung tatsächlich mit dem Befehl :checktime aufrufen.

Veranlasst vim automatisch, Dateien neu zu laden, die auf die Festplatte geschrieben, aber seit dem letzten Schreiben von vim nicht im Puffer geändert wurden. Dadurch kann eine in vim geöffnete Datei mit einer anderen Anwendung bearbeitet und gespeichert werden. Wenn Sie zu vim zurückkehren, wird die Datei, solange Sie die Datei seit der letzten Änderung nicht geändert haben, automatisch aktualisiert, um die auf der Festplatte vorgenommenen Änderungen widerzuspiegeln, als ob Sie :e manuell gedrückt hätten.

Ich hatte das Problem, den Inhalt einer Datei anzusehen, die Datei extern zu aktualisieren, die geänderte Datei anzuzeigen und die Option zu haben, sie bei Bedarf zu bearbeiten. Ich habe es mit den Vim-Server- / Remote-Befehlszeilenoptionen gelöst, inspiriert von dieser Antwort.

Mit den folgenden Befehlen kann eine Datei über einen externen Befehl neu geladen werden. Öffnen Sie zunächst die betreffende Datei mit Vim, während Sie eine Serverinstanz starten.

Nehmen wir an, die Datei wurde extern geändert, z.B. durch ein Echo "Neugieriger und neugieriger" >> /tmp/alice.log . Senden Sie bei Bedarf einen Befehl an die Serverinstanz, um die Datei neu zu laden. Dieser Befehl wird schnell beendet und erzeugt keinen neuen Editor.

Wenn die geöffnete Datei in Vim und extern geändert wurde, kommt es beim Neuladen zu einem Konflikt (eine Warnmeldung wird angezeigt). Für diesen Fall muss eine Entscheidung getroffen werden: Belassen Sie es dabei und behalten Sie die Änderungen in Vim, oder verwerfen Sie lokale Änderungen und erzwingen Sie ein Neuladen.

Der obige Befehl mit --remote-send erfordert ein manuelles Neuladen. Dieser Befehl könnte jedoch an eine einfache Schleife gebunden werden, indem man Bashs for / while verwendet oder einen hackigen Einzeiler in Linux/Unix verwendet:

Obwohl nicht getestet, bin ich mir sicher, dass so etwas auch in PowerShell realisiert werden könnte.


5. Globaler Handel an einer Schwelle?

Zu Beginn des 21. Jahrhunderts wurden die Globalisierungsströme von vier markanten Trends geprägt:

  • Das anhaltende Wachstumdes internationalen Handels, sowohl in absoluten Zahlen als auch in Relation zum globalen Nationaleinkommen, ein Wachstum, das sich abzuflachen scheint. Von 1980 bis 2015 ist der Wert der Exporte, gemessen in Dollar, um das 9-fache gestiegen, das BIP um das 6-fache und die Bevölkerung um das 1,6-fache gestiegen. Seit den 2010er Jahren scheint sich der internationale Handel zu nivellieren.
  • Ein erhebliches Maß an Containerisierung von Handelsströmen, wobei der Containerumschlag proportional zum Welthandel wächst. Die Containerisierung wächst tendenziell schneller als der Handel und das BIP. Dies wurde mit dem Aufbau intermodaler Transportketten in Verbindung gebracht, die Exporteure und Importeure verbinden.
  • Ein höheres relatives Wachstum von Handel der Schwellenländer, insbesondere im pazifischen Asien, die sich auf exportorientierte Entwicklungsstrategien konzentrieren, die mit Ungleichgewichten in den Handelsbeziehungen in Verbindung gebracht wurden.
  • Die wachsende Rolle von multinationale Konzerneals Vektoren für den internationalen Handel, insbesondere im Hinblick auf den Anteil des internationalen Handels innerhalb der Konzerne und die hohe Konzentration der Zentralen.

Dennoch wirken sich viele Herausforderungen auf zukünftige Entwicklungen im internationalen Handel und Transport aus, vor allem in Bezug auf Demografie, Politik, Lieferkette, Energie und Umwelt. Während die Weltbevölkerung und die daraus resultierende Nachfrage weiter wachsen und bis 2050 rund 9 Milliarden erreichen werden, werden demografische Veränderungen wie die Alterung der Bevölkerung, insbesondere in den entwickelten Volkswirtschaften, das Konsumverhalten verändern, da ein wachsender Anteil der Bevölkerung von Wohlstands- vom Produzieren (Arbeiten und Sparen) bis zum Vermögenskonsumenten (Verkauf von Sparguthaben). Demografische Trends in Nordamerika, Europa und Ostasien (z. B. Japan, Südkorea, Taiwan) stellen sie möglicherweise nicht als Treiber des Welthandels dar, eine Funktion, die sie in den letzten Jahrzehnten übernommen haben. Die demografische Dividende in Bezug auf den Spitzenanteil der Bevölkerung im erwerbsfähigen Alter, von der viele Länder, insbesondere China, profitierten, wird zurückgehen.

Das regulatorische Umfeld und die direkte oder indirekte Beteiligung von Regierungen unterliegen zunehmender Streit. Reformen im Agrarhandel wurden nicht effektiv durchgeführt, was bedeutet, dass viele Regierungen (z. B. in der EU) ihren Agrarsektor hohe Subventionen gewähren, was die Wettbewerbsfähigkeit ausländischer Agrargüter untergräbt. Dies geschieht mit der Absicht, ihre Landwirtschaft unter Berücksichtigung der Risiken einer Abhängigkeit von ausländischen Anbietern und möglicher Preisschwankungen zu schützen. Auch geistige Eigentumsrechte bleiben ein umstrittenes Thema, da viele Waren dupliziert werden, was die Marken der großen Hersteller und Einzelhändler untergräbt. Daneben gibt es eine ganze Reihe von Subventionen, die die Wettbewerbsfähigkeit der Exporte beeinflussen, wie niedrige Energie- und Landkosten sowie Steuersenkungen. Der Anstieg protektionistischer Politiken, wie die höheren Zölle der amerikanischen Regierung auf mehrere chinesische Waren zeigen, unterstreicht ein umstrittenes Handelsumfeld.

Da sowohl der See- als auch der Luftfrachtverkehr von Erdöl abhängig ist, bleibt der internationale Handel von Schwankungen der Energiepreise beeinflusst. Das Paradoxon ist geworden, dass Zeiten hoher Energiepreise normalerweise eine Rationalisierung des internationalen Handels und der zugrunde liegenden Lieferketten erfordern. Allerdings sind Zeiten niedriger oder stark fallender Energiepreise, die dem internationalen Verkehr zugute kommen sollten, mit wirtschaftlichen Rezessionen verbunden. Umweltprobleme sind auch wichtiger geworden, da der öffentliche Sektor zunehmend dazu neigt, Komponenten des internationalen Verkehrs zu regulieren, die als negative externe Effekte eingeschätzt werden. Der internationale Handel ermöglicht es mehreren Ländern, ihren Energieverbrauch und Schadstoffausstoß maskieren durch den Import von Gütern, die anderswo produziert werden und bei denen Umweltexternalitäten erzeugt werden. So hat der internationale Handel eine Verschiebung der internationalen Produktionsaufteilung ermöglicht, aber auch eine Trennung zwischen der Erzeugung von Umweltexternalitäten und dem Konsum der mit diesen Externalitäten verbundenen Güter.

Technologische Veränderungen beeinflussen die Beschaffenheit von Fertigungssystemen durch Robotisierung und Automatisierung. Die vierte industrielle Revolution verändert die Inputkosten, insbesondere die Arbeitskosten. Da ein Großteil des internationalen Handels das Ergebnis der Bequemlichkeit komparativer Vorteile ist, können Automatisierung und Robotisierung die üblichen Vorteile niedrigerer Arbeitskosten untergraben und die Produktion an anderen Standorten, beispielsweise näher an wichtigen Märkten, produktiver machen. Da viele Entwicklungsländer weiterhin komplexe Wirtschaftsstandorte sind, da staatliche und nationale Unternehmen privilegiert sind, könnte der Verlust von Arbeitskostenvorteilen die zukünftigen Entwicklungsaussichten untergraben. Dies dürfte einen starken Einfluss auf Art und Umfang des internationalen Handels haben, der sich nivellieren oder sogar zurückbilden könnte. Wenn dies der Fall wäre, würden absolute Vorteile wie Ressourcen einen größeren Einfluss auf den Handel haben, als dies vor den 1970er Jahren der Fall war.


Wissenschaftliche Workflows werden routinemäßig in zahlreichen wissenschaftlichen Domänen verwendet, und Workflow-Management-Systeme (WMS) wurden entwickelt, um Workflow-Ausführungen auf verteilten Plattformen zu orchestrieren und zu optimieren. WMS sind komplexe Softwaresysteme, die mit komplexen Softwareinfrastrukturen interagieren. Die meisten Forschungs- und Entwicklungsaktivitäten von WMS beruhen auf empirischen Experimenten, die mit vollwertigen Software-Stacks auf tatsächlichen Hardware-Plattformen durchgeführt wurden. Diese Experimente sind jedoch auf vorhandene Hardware- und Software-Infrastrukturen beschränkt und können arbeits- und/oder zeitintensiv sein. Das alleinige Verlassen auf reale Experimente behindert daher die WMS-Forschung und -Entwicklung. Eine Alternative besteht darin, Experimente in der Simulation durchzuführen. In dieser Arbeit stellen wir WRENCH vor, ein WMS-Simulationsframework, dessen Ziele (ich) genaue und skalierbare Simulationen und (ii) einfache Entwicklung von Simulationssoftware. WRENCH erreicht sein erstes Ziel, indem es auf dem SimGrid-Framework aufbaut. Obwohl SimGrid für die Genauigkeit und Skalierbarkeit seiner Simulationsmodelle bekannt ist, bietet es nur Simulationsabstraktionen auf niedriger Ebene und daher ist bei der Implementierung von Simulatoren komplexer Systeme ein großer Softwareentwicklungsaufwand erforderlich. WRENCH erreicht damit sein zweites Ziel, indem es hochrangige und direkt wiederverwendbare Simulationsabstraktionen zusätzlich zu SimGrid bereitstellt. Nachdem wir die Softwarearchitektur und APIs von WRENCH beschrieben und begründet haben, präsentieren wir zwei Fallstudien, in denen wir WRENCH anwenden, um das Pegasus-Produktions-WMS und das Anwendungsausführungs-Framework WorkQueue zu simulieren. Wir berichten über einfache Implementierung, Simulationsgenauigkeit und Simulationsskalierbarkeit, um festzustellen, inwieweit WRENCH seine Ziele erreicht. Wir ziehen auch qualitative und quantitative Vergleiche mit einem zuvor vorgeschlagenen Workflow-Simulator.

Henri Casanova ist Professor am Department of Information and Computer Science der University of Hawaii at Manoa. Seine Forschungsinteressen umfassen den Bereich des parallelen und verteilten Rechnens mit Schwerpunkt auf der Modellierung und Simulation von Plattformen und Anwendungen sowie den theoretischen und praktischen Aspekten von Scheduling-Problemen. Weitere Informationen finden Sie unter https://henricasanova.github.io/.

Rafael Ferreira da Silva ist Research Assistant Professor am Department of Computer Science der University of Southern California und Research Lead in der Science Automation Technologies Group am USC Information Sciences Institute. Seine Forschungsschwerpunkte sind die effiziente Ausführung wissenschaftlicher Workflows auf heterogenen verteilten Systemen (einschließlich High Performance und High Throughput Computing), rechnerische Reproduzierbarkeit, Modellierung und Simulation von parallelen und verteilten Computersystemen sowie Data Science — Workflow Performance Analysis, User Behavior in HPC/ HTC. Dr. Ferreira da Silva promovierte 2013 in Informatik am INSA-Lyon, Frankreich. Weitere Informationen finden Sie unter http://www.rafaelsilva.com.

Ryan Tanaka ist Programmierer-Analyst in der Science Automation Technologies-Gruppe am ISI. Seinen Master in Informatik erhielt er von der University of Hawaii in Manoa. Seine Forschungsinteressen umfassen verteilte Systeme und datenintensive Anwendungen. Seine aktuelle Arbeit konzentriert sich auf die Entwicklung verschiedener Tools, die im Pegasus Workflow Management System verwendet werden.

Suraj Pandey erwarb seinen M.S. von der University of Hawaii at Manoa und seinen Bachelor-Abschluss vom Institute of Engineering, Pulchowk Campus, Nepal.

Gautam Jethwani ist ein Bachelor-Student der Informatik an der University of Southern California.

William Kock ist Informatik M.S. Student an der University of Hawaii in Manoa.

Spencer Albrecht ist ein Bachelor-Student der Informatik an der University of Southern California.

James Oeth ist ein Bachelor-Student der Informatik an der University of Southern California.


Content Delivery Manager-Ereignisse

Microsoft.Windows.ContentDeliveryManager.ProcessCreativeEvent

Dieses Ereignis sendet Nachverfolgungsdaten zur Zuverlässigkeit von Interaktionen mit Windows-Spotlight-Inhalten, um Windows auf dem neuesten Stand zu halten.

Folgende Felder stehen zur Verfügung:

  • kreativeId Eine serialisierte Zeichenfolge, die die ID des angebotenen Angebots, die ID des aktuellen Rotationszeitraums, die ID der Kombination Oberfläche/Ring/Markt, den Angebotsindex im aktuellen Zweig, die ID des Stapels, die Länge des Rotationszeitraums, und den Ablaufzeitstempel.
  • eventToken Bei mehreren Artikelangeboten, wie z. B. Startkacheln, zeigt dies an, zu welcher Kachel das Ereignis gehört.
  • Ereignistyp Ein Code, der die Art des Creative-Ereignisses angibt, z. B. Impression, Klick, positives Feedback, negatives Feedback usw.
  • Platzierungs-ID Name der Oberfläche, z. B. LockScreen oder Start.

Microsoft.Windows.ContentDeliveryManager.ReportPlacementHealth

Dieses Ereignis sendet aggregierte Client-Zustandsdaten, die Informationen zum Status von Angeboten auf einem Gerät zusammenfassen, um Windows auf dem neuesten Stand zu halten.

Folgende Felder stehen zur Verfügung:

  • Datenversion Schemaversion des Ereignisses, das verwendet wird, um zu bestimmen, welcher serialisierte Inhalt für die Felder placementReportedInfo und trackingInfo verfügbar ist.
  • Gesundheitsergebnis Ein Code, der den Integritätsstatus des Benutzerkontos als Unbekannt, Gesund, Ungesund identifiziert.
  • GesundheitszustandFlags Ein Code, der eine Reihe von Flags darstellt, die verwendet werden, um Geräte auf fehlerfreie Weise zu gruppieren. Beispielsweise Ungesund, Gesund, RefreshNotScheduled, EmptyResponse, RenderedDefault, RenderFailure, RenderDelayed und CacheEmpty.
  • PlatzierungHealthId Ein Code, der angibt, welcher Zustand der Oberfläche gemeldet wird. Beispiel: Default, LockScreen, LockScreenOverlay, StartMenu, SoftLanding, DefaultStartLayout1, DefaultStartLayout2, OemPreInstalledApps, FeatureManagement, SilentInstalledApps, NotificationChannel, SuggestedPenAppsSubscribedContent, TestAppSubscribedContent, OneDriveSyncNamespaceSubscribedContent.
  • PlatzierungReportedInfo Serialisierte Informationen, die von jeder Oberfläche geschriebene domänenspezifische Integritätsinformationen enthalten, z.
  • TrackingInfo Serialisierte Informationen, die vom Content Delivery Manager geschriebene domänenspezifische Integritätsinformationen enthalten, z.

Microsoft.Windows.ContentDeliveryManager.ReportPlacementState

Dieses Ereignis sendet Daten zum Abmeldestatus eines Geräts oder Benutzers, der Windows Spotlight verwendet, um Windows auf dem neuesten Stand zu halten.

Folgende Felder stehen zur Verfügung:

  • aktiviert Gibt an, ob die Oberfläche zum Empfangen von Angeboten aktiviert ist.
  • letzte ImpressionZeit Der Zeitpunkt, zu dem das letzte Angebot gesehen wurde.
  • lastRenderedCreativeId ID des letzten Angebots, das von der Oberfläche ausgegeben wurde.
  • lastRenderedTime Der Zeitpunkt, zu dem das letzte Angebot abgegeben wurde.
  • nächsteRotationTime Die Zeit, in der das nächste Angebot erstellt wird.
  • Platzierungsname Name der Oberfläche, z. B. LockScreen oder Start.
  • PlatzierungStateReportFlags Flags, die angeben, ob die Oberfläche Angebote empfangen kann, z. B. Aus nach Edition, Aus nach Gruppenrichtlinie oder Aus nach Benutzerauswahl.
  • selectedPlacementId ID der Kombination Oberfläche/Ring/Markey, z. B. Lock-Internal-en-US.

Lagermetriken halten Mitarbeiter auf dem Laufenden

Der Transport ist nicht der einzige Bereich, in dem Unternehmen die Logistikeffizienz durch das Sammeln und Analysieren von Leistungsdaten verbessern. Auch im Lager können Metriken Wunder wirken.

Die Visual Supply Chain, eine Reihe von Technologielösungen von RMG Networks mit Sitz in Dallas, verwendet Daten aus Lagerverwaltungssystemen, um die Mitarbeiterleistung und die allgemeine Betriebseffizienz in Echtzeit zu messen. RMG zeigt die Metriken auf großen LCD-Bildschirmen in Arbeitsbereichen an, um Mitarbeiter und Manager über den Arbeitsfortschritt zu informieren.

Die meisten Vertriebs- oder Fulfillment-Zentren verwenden statische Scoreboards, um die Leistung der Mitarbeiter hervorzuheben. „Wir werden herausfinden, wie es diesen Mitarbeitern gestern in den meisten Fällen ging oder wie es ihnen seit Monatsbeginn geht“, sagt Kerwin Everson, Vice President, Supply Chain Solutions bei RMG. "Sie können nirgendwo nachsehen, wie es ihnen derzeit geht und was sie für den Rest des Tages tun müssen."

Um den Bedarf an aktuellen Leistungskennzahlen zu decken, sendet die RMG-Anwendung eine periodische Abfrage alle 30 Minuten, alle fünf Minuten oder in jedem vom Kunden angegebenen Intervall an ein oder mehrere Managementsysteme. Es kann sogar in Systeme integriert werden, die automatisierte Geräte steuern.

"Wir haben mit Intelligated-, Dematic- oder Pyramid-Systemen von Kunden zusammengearbeitet, um Daten über den Standort bestimmter Kisten oder die möglicherweise blockierten Rutschen zu erfassen", sagt Everson.

RMG analysiert die Daten, um beispielsweise zu berechnen, wie viele Einheiten die Mitarbeiter pro Stunde kommissionieren, verpacken oder einlagern, und verwendet diese Informationen oft, um Vergleiche zu ziehen. "Wir können nicht nur Pick-Zonen gegeneinander einstufen, sondern auch einzelne Picker", sagt Everson.

Diese Rankings fördern das Wettbewerbsgefühl. "Allein die Informationen zusammenzustellen, manchmal in einem gestapelten Ranking, kann automatisch zu Produktivitätssteigerungen führen", sagt er.

Anzeigen können auch anzeigen, welchen Teil eines Jobs ein Team abgeschlossen hat, beispielsweise an einer Laderampe. „Wir haben ein Balkendiagramm, das zeigt, wie ein Lkw betankt wird und angibt, ob er zu 50 oder zu 70 Prozent voll ist“, sagt Everson. Das Diagramm kann den Fortschritt sowohl nach Volumen als auch nach Gewicht anzeigen.

Beim Nachverfolgen, wie viel von ihrer Arbeit einzelne Teams für den Tag geleistet haben, spielt die Visual Supply Chain die Rolle eines Arbeitsmanagementsystems. Das System könnte beispielsweise schätzen, dass die Arbeiter in den Zonen A und B ihre Arbeit für den Tag bis 14:00 Uhr beenden werden, was offensichtlich macht, dass diese Angestellten als nächstes in die Zonen C und D umziehen müssen.

In Lagerhäusern, die Boni an Arbeiter vergeben, die die Leistungsziele in Bezug auf Geschwindigkeit, Qualität und andere Faktoren übertreffen, bieten die Echtzeitanzeigen zusätzliche Ermutigung. "Wir können Incentive-Informationen bereitstellen, und manchmal reicht das gestapelte Ranking aus, um ihnen zu helfen, etwas besser zu werden", sagt Everson.


Wenn für eine Liste Workflows definiert sind, die auf Autostart eingestellt sind, werden diese standardmäßig immer vor allen anderen 'ItemUpdated'- oder 'ItemCreated'-Ereignisempfängern ausgeführt. Es ist jedoch möglich, diese im Code neu anzuordnen - ich musste dies einmal tun, da ich aus irgendeinem Grund einen Empfänger zum Auslösen brauchte, bevor der Workflow seine Verarbeitung durchführte. Um eine Neuordnung vorzunehmen, rufen Sie einfach die SPList.EventReceivers ab und ändern Sie die Sequence-Eigenschaft jedes einzelnen, den Sie ändern möchten (und rufen Sie .Update() auf).

Denken Sie jedoch daran, dass, wenn jemand den Workflow deaktiviert und ihn dann erneut konfiguriert (mit Autostart), SharePoint den SPWorkflowAutostartEventReceiver wieder als Sequence=1 hinzufügt, was bedeutet, dass die Neuordnung erneut erfolgen muss.


Schau das Video: QGIS Server Installation