User Tools

Site Tools


rm25214

rm#25214 PO - In case of Auto-Accept is a result of an upload by supplier, no ORDRSP is created

Ursache

In POCollabStatus.generateExport(boolean bCustomerIsActing, boolean forceExport) wird folgendes geprüft:

if (!forceExport)
{
  if ( bCustomerIsActing && isCollabActorImport())
  {
    log.info("Skipping processing of export-on-collab on PO '"
                         + getPOTitle(true)
                         + "' hence collab-actor is IMPORT and therefore submission of values is ambigous.");
                return;
  }
}

Die Methode isCollabActorImport() prüft, ob der aktuelle collabActor ein IPOConstants.COLLAB_ACTOR_IMPORT ist. Im Fall von CSV-Upload ist es einer. Deshalb wird gleich return gemacht, d.h. der Export wird geskippt.

Testdaten

Um eine Order mit “AutoAccept”-Feature zu erzeugen, muss man in der XML-Nachricht die Felder AutoAcceptQTYLowerLimit und AutoAcceptQTYUpperLimit befüllen. Damit das Feature “losgeht” muss man die Menge (im Fall von Suppier die “Promised Quantity”) zwischen diesen 2 Werten haben. Dann wird der “AutoAccept”-Code ausgeführt.

Fix

In der modify()-Methode aller POCollabStatus* Klassen, wo if(POCollabStatusToolbox.checkForAutoAccept()) gemacht wird, dafür sorgen, dass der CollabActor auf IPOConstants.COLLAB_ACTOR_USER gesetzt wird.

Wichtig: Prüfen, ob das irgendwelche Querwirkungen verursachen könnte. D.h. ob der CollabActor nach dem Setzen (außer der o.g. Stelle im isCollabActorImport()) noch irgendwo verwendet wird.

Tests

Betroffene Klassen

  • POManagerEJB.doAutoAcceptForSplit()
  • POCollabStatusCCOR.modify()
  • POCollabStatusNOP.modify()
  • POCollabStatusOPEN.modify()
  • POCollabStatusSAWC.modify()
  • POCollabStatusSCOR.modify()
rm25214.txt · Last modified: by 127.0.0.1