ToolTech - Seite 'Bestellungsübersicht' (Business Edition)

Auf der Seite 'Bestellungsübersicht' (OrderDisplayPending.jsp) können Kunden ihre Bestellungen anhand detaillierter Informationen überprüfen. Diese Angaben enthalten eine Beschreibung der gekauften Artikel sowie Artikelnummer (SKU, Stock Keeping Unit), Menge, Hersteller, Gesamtpreis, Versandadresse, Versandmethode, Vertrag, Rabattbeträge und Versandspesen. 

Wenn der Vertrag des Kunden eine Bestellnummer (PO-Nummer) angibt, muss diese Nummer in das Feld Einkaufsauftrag eingegeben werden. Das Eingabefeld für die Bestellnummer wird nur angezeigt, wenn die Nummer erforderlich ist. Liegt mehr als eine Bestellung vor, wird ein Bestellnummer-Eingabefeld für jede Bestellung angezeigt, die eine Bestellnummer erfordert. Die in den jeweiligen Feldern eingegebenen Bestellnummern müssen entweder eindeutig sein, oder es muss sich um eine Abrufbestellung handeln. Anschließend muss der Kunde die Bestellung durch die Angabe der Zahlungsinformationen und Anklicken der Option Jetzt bestellen abschließen. Vor dem Anklicken von Jetzt bestellen kann der Kunde die Bestellung in eine terminierte Bestellung umwandeln.

Hinweis: Wenn die Option 'Kreditlinie' als Zahlungsmethode auf der Seite 'Ihre Bestellung' (ShoppingCart.jsp) ausgewählt wurde, wird die Kontonummer der Kreditlinie aus der Datenbank abgerufen. Kunden können auf dieser Seite die Zahlungsmethode nicht von Kreditlinie in eine andere Option umändern. 

Die Seite 'Bestellungsübersicht' des Beispielgeschäfts verwendet die folgenden JSP-Dateien: 

Befehle

OrderDisplayPending.jsp verwendet die folgenden Befehle:

Beans

OrderDisplayPending.jsp verwendet die folgenden Beans:

Implementierungsdetails

Hinweis: Informationen zu Implementierungstechniken, die allen Beispielgeschäftsseiten gemein sind, finden Sie in Beispielgeschäftsseiten: Allgemeine Implementierungstechniken.

Wenn Kunden den Bestellprozess durch Anklicken der Option Weiter auf der Seite 'Ihre Bestellung' (ShoppingCart.jsp) einleiten, werden Sie durch eine Reihe von Seiten Zur Kasse geführt; eine dieser Seiten ist die Seite 'Bestellungsübersicht' (OrderDisplayPending.jsp). 

OrderAccessBean orderABFinder = new OrderAccessBean();                        //Retrieve all Orders for this User Enumeration ordersABList = orderABFinder.findByStatusMemberAndStore("P", userId, new Integer(storeId)); OrderAccessBean next_order;                                                        ControllerCmdExecUnit execUnit;                                              TypedProperty iProperties = commandContext.getRequestProperties();                    String ToOrderId = "";                                                                  int counter = 0;

Zahlungsinformationen sind auf der Basis der vom Kunden auf der Seite 'Ihre Bestellung' ausgewählten Zahlungsmethode dynamisch enthalten. Dies wird im folgenden Code dargestellt:

// use the paymentMethod parameter to find the selected PaymentTCInfo
<jsp:useBean id="usablePaymentTCs" class="com.ibm.commerce.payment.beans.UsablePaymentTCListDataBean" scope="page" >
</jsp:useBean>
<%
usablePaymentTCs.setOrderId(new Long(orderRn));
com.ibm.commerce.beans.DataBeanManager.activate(usablePaymentTCs, request);
PaymentTCInfo[] paymentTCInfo = usablePaymentTCs.getPaymentTCInfo();
PaymentTCInfo selectedPaymentTCInfo = null;
for (int i = 0; i < paymentTCInfo.length; i++) {
if (paymentTCInfo[i].getLongDescription().equals(paymentMethod)) {
selectedPaymentTCInfo = paymentTCInfo[i];
}
}
...<%
incfile = storeDir + "" + selectedPaymentTCInfo.getAttrPageName()+".jsp";
%>
<jsp:include page="<%=incfile%>" flush="true"/>

Diese Seite enthält eine Option, die dem Kunden die Übergabe seiner Kreditkarteninformationen ermöglicht. Mit der UsablePaymentTCListDataBean werden die verfügbaren Kreditkartennamen aus dem Payment Manager abgerufen, und die Aktion für das Formular wird auf OrderProcess gesetzt.

Wenn sich Kunden zum Aufteilen ihrer Bestellung entschieden haben, werden zwei Bestellungen auf der Seite angezeigt. Klickt ein Kunde den Link Jetzt bestellen an, wird der Befehl 'MultiOrderProcess' aufgerufen. 'MultiOrderProcess' ist ein in der Tabelle VIEWREG registrierter Anzeigebefehl, der der Datei MultiOrderProcess.jsp zugeordnet ist.
Abhängig von der Anzahl der Bestellungen auf der Seite 'Bestellungsübersicht' führt die Datei MultiOrderProcess.jsp den Befehl 'OrderProcess' mehrmals aus. Im Geschäft 'ToolTech' lässt das Kassenverfahren nur maximal zwei Bestellungen auf der Seite 'Bestellungsübersicht' zu.

Hinweis: Wenn zwei Bestellungen vorliegen, wird die Option zum Terminieren der Bestellungen nicht angezeigt.

Wenn sich ein Kunde entschließt, eine Bestellung in eine terminierte Bestellung umzuwandeln und das Markierungsfeld Terminierte Bestellung auswählt, wird der Befehl 'OrderSchedule' aufgerufen, um die Bestellung auf der Basis der vom Kunden angegebenen Parameter zu terminieren. Das Terminieren der Bestellung erstellt eine neue terminierte Bestellung auf der Basis der aktuellen Bestellung, wobei die aktuelle Bestellung unverändert bleibt. In diesem Fall wird der Befehl 'MultiOrderProcess' nicht aufgerufen.

 function OrderSchedule()
{
var form = document.CardInfo;
var payInfo="";
var StartDate = date();
payInfo="pay_cardBrand="+form.cardBrand.value+"&pay_cardNumber="+form.cardNumber.value+"&pay_cardExpiryMonth="+form.cardExpiryMonth.value+"&pay_cardExpiryYear="+form.cardExpiryYear.value+"&pay_policyId="+form.policyId.value+"&start="+StartDate+"&interval="+form.interval.value+"&URL="+"OrderOKView"+"&notifyShopper=1&notifyMerchant=1"+"&poNumber="+form.poNumber.value;
return payInfo;
}

Nach der Übergabe des Formulars wird der Befehl 'OrderOKView' aufgerufen, sofern der Bestellprozess erfolgreich war. Der Befehl 'OrderOKView' ist in der Tabelle VIEWREG in der Datenbank registriert und der Seite Confirmation.jsp zugeordnet, auf der Informationen zur Bestätigung der Bestellung anzeigt werden.  

Wenn der Kunde die Option Zurück anklickt, wird er zur Seite Shipping.jsp zurückgeleitet.

Hinweis: Für Kunden, die zur Organisation A gehören, müssen Bestellungen, deren Gesamtbetrag DM 1.000 überschreitet, vor deren Übergabe genehmigt werden. Nur der Vertrag der Organisation A enthält diese Genehmigungsklausel.

Fehlerbehandlung

Wenn ein Fehler auftritt, wird der Befehl 'DoPaymentErrorView' aufgerufen. Der Befehl 'DoPaymentErrorView' ist in der Datenbank der Datei OrderDisplayPending.jsp zugeordnet. Daher wird beim Auftreten eines Fehlers die Seite 'Bestellungsübersicht' (OrderDisplayPending.jsp) erneut aufgerufen und zeigt eine Fehlernachricht an.

Wenn ein Fehler bei einer Bestellnummer (PO-Nummer) auftritt, wird je nach der erfassten Ausnahmebedingung der Befehl 'ValidatePONumberErrorView' oder 'DoPaymentErrorView' aufgerufen.

Verwandte Konzepte

Verwandte Aufgaben

Verwandte Referenzen

IBM Copyright