Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introductie

In 2020 heeft CB webservices ontwikkeld om online Media opdrachten te kunnen ontvangen. De eerste klant is door CB uitgebreid begeleid bij het testen, maar volgende klanten moeten dit zoveel mogelijk zelfstandig kunnen doen. Analoog aan de werkwijze bij orders in TAS (test automatisering systeem) moet een test order op basis van enkele kenmerken die de klant meegeeft volledig automatisch verwerkt worden. Als aanvulling ten opzichte van TAS moeten er nu ook levereenheden worden aangemaakt.

Oplossingsrichting

Orders met test kenmerken worden toegekend aan een dummy Astro verwerkingsplaats. De berichten aan Astro worden bij aanmaak direct op verwerkt gezet, waardoor ze niet echt naar Astro gaan. Door berichten die normaal gesproken uit Astro komen nu in CB2000 zelf aan te maken, wordt verwerking in Astro gesimuleerd.

Vooralsnog is de oplossing alleen van toepassing voor Media opdrachten. Het is wel onafhankelijk van het gebruikte kanaal om de order in te dienen.

Alleen op development en test omgevingen

De hier beschreven functionaliteit is beschikbaar op de development en test omgevingen van CB, maar niet op de productie omgeving. De software staat weliswaar op de productie omgeving, maar middels een afvraging op welke omgeving de software draait wordt de functionaliteit op de productie omgeving genegeerd.

Werking ordersimulatie

De ordersimuatie functionaliteit is ingebouwd in de opdrachtbehandeling en -afhandeling. Hierdoor maakt het niet uit hoe een opdracht aangeleverd wordt. Er is wel een beperking in markt, alleen Media wordt ondersteund.

Op dit moment zijn er drie manieren om een Media opdracht in te dienen:

  • Webservice MediaOrderB2C
  • Digicom OPDNAW bestand
  • Saleskit SHP bestand (intern: LEVORD bericht)

Aansturing

Een opdracht wordt meegenomen in de ordersimulatie aan de hand van een test-kenmerk in de opdracht. De kenmerk identificatie is:

test-kenmerk

$CB*TST

De klant kan dit kenmerk meegeven in een van de twee opdracht-referentie velden:

  • afnemer-opdracht-referentie
  • eigenaar-opdracht-referentie

Beide velden zijn beschikbaar in alle kanalen. De klant kan zelf kiezen welk veld gebruikt wordt voor het kenmerk. Het andere veld blijft beschikbaar voor de referentie van de klant. Een klant die in productie beide opdracht referentie velden wil gebruiken voor eigen referenties moet, om de ordersimulatie toe te passen, kiezen welk van de twee velden “opgeofferd” wordt voor het kenmerk.

Het kenmerk is 7 posities lang. De maximale lengte van de opdracht referentie velden die door alle kanalen ondersteund wordt is 10 posities. De resterende 3 posities zijn gereserveerd voor aanvullende opdracht instructies.

Opdracht instructies

Standaard wordt er voor elke opdracht één levereenheid aangemaakt, onafhankelijk van het aantal opdrachtregels, bestelde exemplaren en afmetingen van de artikelen. We simuleren dat alles in één levereenheid past waarmee de klant een duidelijke verwachting heeft van het resultaat van de opdracht.

In de praktijk past niet alles in een levereenheid en daarom kan de klant in de opdracht aangeven hoeveel levereenheden we moeten aanmaken. 

test-kenmerk aanvulling t.b.v. meedere levereenheden

Dit is optioneel en wordt meegegeven achter het test-kenmerk met:

Cnn

Waarbij nn staat voor het aantal levereenheden (2 t/m 99). Bijvoorbeeld:

  • $CB*TSTC3                         => Test kenmerk + verzoek voor 3 levereenheden
  • $CB*TSTC05                       => Test kenmerk + verzoek voor 5 levereenheden
  • $CB*TSTC15                       => Test kenmerk + verzoek voor 15 levereenheden

Het maximaal aantal aan te maken levereenheden is gelijk aan het aantal bestelde exemplaren (dus 1 exemplaar per levereenheid). Als er meer levereenheden gevraagd worden dan er bestelde exemplaren zijn in een opdracht, dan wordt er per besteld exemplaar een levereenheid aangemaakt. Er wordt geen foutmelding of warning gegeven.

Opdrachtregel instructies

Standaard wordt voor elke regel het aantal bestelde exemplaren ook als geleverd in de levereenheid opgenomen. In de praktijk zijn er verschillende scenario’s mogelijk waardoor er een afwijkend aantal exemplaren geleverd wordt. De ordersimulatie ondersteunt één scenario, namelijk manco. De klant kan bij de opdrachtregel aangeven hoeveel exemplaren er manco gemeld worden. 

Scenario 'Manco'

Dit is optioneel en wordt meegegeven met het manco-kenmerk:

$MANCO;n

Waarbij n staat voor het aantal levereenheden (1 t/m 9). Bijvoorbeeld:

  • $MANCO:1                           => Verzoek voor 1 exemplaar manco bij deze orderregel
  • $MANCO:5                           => Verzoek voor 5 exemplaren manco bij deze orderregel

Het maximaal aantal manco is het aantal bestelde exemplaren. Als er meer manco gevraagd wordt dan er bestelde exemplaren zijn in een opdrachtregel, dan worden er 0 exemplaren geleverd gemeld. Er wordt geen foutmelding of warning gegeven. 

Er wordt geen nieuwe opdrachtregel voor het manco aantal gemaakt. De beoogde situatie is minder leveren dan gevraagd. Naleveren wordt niet ondersteund in ordersimulatie.

De klant kan dit kenmerk meegeven in een van de twee opdrachtregel-referentie velden:

  • afnemer-regel-referentie
  • eigenaar-regel-referentie

Beide velden zijn beschikbaar in alle kanalen. De klant kan zelf kiezen welk veld gebruikt wordt voor het kenmerk. Het andere veld blijft beschikbaar voor de referentie van de klant. Een klant die in productie beide regel referentie velden wil gebruiken voor eigen referenties moet, om manco toe te passen, kiezen welk van de twee velden “opgeofferd” wordt voor het kenmerk.

Proces

Een opdracht met het kenmerk wordt altijd aan verwerkingsplaats HE (Handmagazijn Eentjesverwerking, bordes) toegekend. Deze verwerkingsplaats zit in Astro en wordt niet of nauwelijks gebruikt. Er is bewust gekozen voor een Astro verwerkingsplaats omdat het berichtenverkeer met Astro eenvoudig gesimuleerd kan worden.

Om te voorkomen dat de order daadwerkelijk naar Astro gaat wordt het OrderSync bericht bij aanmaken meteen op status Gereed gezet.

Vervolgens wordt het gewenste aantal levereenheden gesimuleerd door per levereenheid een set van PalletShow berichten aan te maken met status 50, 70 en 75. De verwerking van een PalletShow kan leiden tot een PalletSync bericht voor Astro, in die gevallen wordt de PalletSync direct op status Gereed gezet.

Tenslotte wordt het sluiten van de rit in Astro gesimuleerd door een OrderDeliveryReport aan te maken.

Het verwerken van de opdracht wordt volledig doorlopen, met uitzondering van de acties in Astro. Indien van toepassing worden ook de documenten aangemaakt (maar uiteraard niet geprint in Astro).

Artikel voorraad

De ordersimulatie kent geen technische beperkingen in artikelen of voorraad. Afgesproken is om een set van artikelen te “reserveren” voor de ordersimulatie en te zorgen dat er voldoende voorraad beschikbaar is voor deze artikelen. Het monitoren hiervan is handmatig en moet met enige regelmaat uitgevoerd worden.

...

Stadium Levens Cyclus

...

Voorraad 

Ja/Nee

...

Salammbo 

...

De verdeelde aarde 

...

De buitenvrouw 

...

Resultaten voor klant

Het informeren van de klant over de voortgang van de opdracht is afhankelijk van de manier waarop de opdracht ingediend is.

Webservices

Bij gebruik van het kanaal webservices wordt de klant vrijwel direct na het wijzigen van een status in de order geïnformeerd. Het onderstaande diagram geeft aan welke stadiums er gedefinieerd zijn en welke webservice-operaties gebruikt worden om informatie aan de klant te melden danwel beschikbaar te maken.

Image Removed

Beschrijving:

  • Een eindklant (customer) plaatst een of meerdere artikelen in de winkelwagen van een webwinkel
  • De webshop dient de opdracht in bij CB
  • CB controleert de opdracht en indien geaccepteerd, dan stuurt CB een order notificatie met status event “In Progress”
  • CB reserveert voorraad en geeft de order(regel) vrij voor logistiek. De orderregel kan vanaf dat moment niet meer geannuleerd worden. CB stuurt een order notificatie met status event “ProductionReady”
  • De webwinkel kan de status van de order ophalen om te zien welke orderregels vrij gegeven zijn
  • CB voert de ordersimulatie uit en stuurt per levereenheid een shipment notificatie met status event “Processed”
  • De webwinkel kan de details van elke levereenheid ophalen en daarmee de eindklant informeren.

Digicom

Bij gebruik van het kanaal digicom wordt er een UITOPD bericht voor de klant klaargezet en indien niet alles geleverd is ook een NUITOP bericht. Het versturen van de berichten vindt plaats op een gescheduled tijdstip.

Saleskit

...

Order simulation for test purpose

In order to test the web service independently as much as possible, a test order based on a few characteristics, that the customer provides, must be processed fully automatically. The functionality described here is available on CB's test environment, but not on the production environment.

Operation of order simulation web service MediaOrderB2C

The order simulation functionality is built into the order handling and processing. 

Include Page
Order simulation
Order simulation

Test articles

Articles available for test
ISBNTitelDiscountCode

ProductAvailability 

Stock 

YES/NO

9789029511537MediaOrderB2C Title 1 AReprint/HerdrukNO
9789029585071MediaOrderB2C Title 2 AAnnounced/AangekondigdNO
9789063055998MediaOrderB2C Title 3ONot available/UitverkochtNO
9789045119731MediaOrderB2C Title 4SIn stock/VerschenenYES
9789045119755MediaOrderB2C Title 5AIn stock/VerschenenYES
9789025307349

MediaOrderB2C Title 6

AIn stock/VerschenenYES
9789025308339

MediaOrderB2C Title 7

AIn stock/VerschenenYES
9789025309640MediaOrderB2C Title 8AIn stock/VerschenenYES
9789025309954MediaOrderB2C Title 9AIn stock/VerschenenYES
9789029505598MediaOrderB2C Title 10AIn stock/VerschenenYES
9789029506182

MediaOrderB2C Title 11

AIn stock/VerschenenYES
9789029506335MediaOrderB2C Title 12AIn stock/VerschenenYES
9789029506885MediaOrderB2C Title 13 AIn stock/VerschenenYES

ONIX file with Product records:  Testarticles-ini-1van1_onx.xml

Results for customer

The customer is informed almost immediately when the order status is changed. The diagram below shows which stages are defined and which web service operations are used to communicate or make information available to the customer. 

Image Added


Description:

  • The customer places one or more items in the shopping cart of a shop
  • The webshop submits the order to CB
  • CB checks the order and if accepted, CB sends an order notification with status event “In Progress”
  • CB reserves stock and releases the order (line) for logistics. The order line cannot be cancelled from that moment on. CB sends an order notification with status event “ProductionReady”
  • The webshop can retrieve the status of the order to see which order lines have been released
  • CB performs the order simulation and sends a shipment notification per shipment unit with status event “Processed”
  • The webhop can retrieve the details of each shipment unit and thus inform the customer.