Enterprise Resource Planning PortalERPGenie.COM Enterprise Resource Planning Portal

   Advertise | BLOG

Web ERPGenie.COM

Home | Vote for us |

ERPGenie.COM -> SAP Interfacing Technology -> ITS -> Development -> Order Status

Quicklinks

YOUR LOGO


Changes to SAPMV45X

This is the web order  status IAC. We want to change it so that someone else 
(customer service rep, for example) can check the order status of any customer.

  • Transaction

    • Create transaction ZVW10A and link it to SAPMV45X

    •  Create a service file linking to this transaction.

    •  Copy the templates from VW10 (the order status service) to the directory 
      ZVW10A on the a-gate machine.

  • Calling the service from the web

To pass the customer ID directly:

 http://testweb/scripts/wgate/zvw10a/!?~language=en&login-login_user=
1000817&~OkCode(LGON)=LGON

To pass all possible variables:

http://testweb/scripts/wgate/zvw10a/!?~language=en&login-login_user=
1000817&vbcom-vbeln=999&vbcom-audat=01/01/1999&vbcom-audat_bis=
01/26/2000&~OkCode(LGON)=LGON

MV45XF10

·         In form check_password, put clear return. First check for sy-tcode = 
“ZVW10A”.

form check_password.                                                    

                                                                        

 if fcode = 'LGON'.                                                    

   if not login-login_user is initial.                                 

     call function 'BAPI_CUSTOMER_CHECKPASSWORD'                       

          exporting                                                    

               customerno           = login-login_user                 

               password             = login-password                   

               sales_organization   = vkorg                             

               distribution_channel = vtweg                            

               division             = spart                            

          importing                                                    

               customer_data        = kna1                             

               customer_number_out  = login-login_user                 

               return               = return.                          

     clear: login-password.                                             

{   INSERT         TSTK900997                                        3 

     if sy-tcode = 'ZVW10A'.                                           

       clear return.                                                   

     endif.                                                             

}   INSERT                                                             

     login-rcode = return.                                             

 

Screen 101
  • Template change to capture customer number

  •  Customer number field: login-login_user

  •  Sales order number field: VBCOM-VBELN

  •  Date from field: VBCOM-AUDAT

  •  Date to field: VBCOM-AUDAT_BIS

  •  OkCode = LGON has field name: OkCode(LGON)

Transport fields
  • Picked: XLIST_PICK – 20000125

  •  Goods Issue: XLIST_GI - 4900000606

  •  Invoiced: XLIST_INVOICE – 90000103

  •  Accounting document: XLIST_ACCOUNT – 90000094

  •  … Rest listed in red in SAP Code section below

 

HTML Code

Code for screen 202 – Display order detail

<HTML>

 

<HEAD>

  <TITLE>Sales Order Status</TITLE>

<link REL="stylesheet" HREF="`~styleSheetPath`/class1_corp.css"  TYPE="text/css">

</HEAD>

<script language = "javascript">

//Tracking Orders using UPS or Fedex

var upstrack = "http://wwwapps.ups.com/etracking/tracking.cgi?tracknum=";

var fedtrack = "http://www.fedex.com/cgi-bin/track_it?airbills=";

var url = "";

 

        function DisplayTrackingNum(trackNo, type, bfirstrow, trackNo2)

        {

                //Display upto 12 tracking no.  Very similar function is in sapmv45x_202.html

                var cRt = "";

                if       (trackNo != "") 

                {

                        if (bfirstrow )

                        {

                                if (type == "UP") url = upstrack; else url = fedtrack;

                                cRt ="<A HREF=" + url +trackNo + " target = _blank>" + trackNo + "</a>";

                                if (trackNo2 != "")

                                {

                                        cRt += " , ";

                                        cRt +="<A HREF=" + url +trackNo2 + " target = _blank>" + trackNo2 + "</a>";

                                }

                        } else{

                                cRt = "<TR ALIGN=LEFT class=class1 height=15><TD colspan=5></TD><TD class=class1>";

                                cRt +="<A HREF=" + url +trackNo + " target = _blank>" + trackNo + "</a>";

                                if (trackNo2 != "")

                                {

                                        cRt += " , ";

                                        cRt +="<A HREF=" + url +trackNo2 + " target = _blank>" + trackNo2 + "</a>";

                                }

                                cRt +="</TD></TR>";

                        }

                        document.write(cRt);

                }

        }

       

 

 

<body text="#000000" bgcolor="#ffffff" Link="#666666" ALINK="#666666" VLINK="#999966" leftmargin=0 topmargin=0 marginheight=0 marginwidth=0>

`if ('XLIST-VBELN' == "")`

`else`

<table border="0" width="0" cellspacing="0" cellpadding="0">

        <tr>

                <td valign="top" class="class1"><H3>Details of Order Number `'XLIST-VBELN'`</H3></td>

                <td width=200 align=right class=class1 valign=top></td>

        </tr>       

        <tr>

                <TD ALIGN=left class=class1 height=15><b>Sales Order Date:</b> `'XLIST_SO_DATE'[1]`<p></td>

                <TD ALIGN=left class=class1 height=15><b>WWW Reference Number:</b> `'XLIST_PO'[1]`<p></td>

        </tr>

        <tr>

                <TD ALIGN=left class=class1 height=15><b>Sold to details:</b></td>

                <TD ALIGN=left class=class1 height=15><b>Ship to details:</b></td>

        </tr>

        <TR>

        `if ('XLIST_AG_NAME2'[1] == "")`

                <TD ALIGN=left class=class1 height=15>`'XLIST_AG_NAME1'[1]`</td>

        `else`

                <TD ALIGN=left class=class1 height=15>`'XLIST_AG_NAME1'[1]`, `'XLIST_AG_NAME2'[1]`</td>

        `end`

        `if ('XLIST_WE_NAME2'[1] == "")`

                <TD ALIGN=left class=class1 height=15>`'XLIST_WE_NAME1'[1]`</td>

        `else`

                <TD ALIGN=left class=class1 height=15>`'XLIST_WE_NAME1'[1]`, `'XLIST_WE_NAME2'[1]`</td>

        `end`

        </TR>

        <TR>

                <TD ALIGN=left class=class1 height=15>`'XLIST_AG_STREET'[1]`</td>

                <TD ALIGN=left class=class1 height=15>`'XLIST_WE_STREET'[1]`</td>

        </TR>

        <TR>

                <TD ALIGN=left class=class1 height=15>`'XLIST_AG_CITY1'[1]`, `'XLIST_AG_REGION'[1]`, `'XLIST_AG_ZIP'[1]`, `'XLIST_AG_COUNTRY'[1]`</td>

                <TD ALIGN=left class=class1 height=15>`'XLIST_WE_CITY1'[1]`, `'XLIST_WE_REGION'[1]`, `'XLIST_WE_ZIP'[1]`, `'XLIST_WE_COUNTRY'[1]`</td>

        </TR>

                <TD ALIGN=left class=class1 height=15>Tel:`'XLIST_AG_TEL'[1]`</td>

                <TD ALIGN=left class=class1 height=15>Tel:`'XLIST_WE_TEL'[1]`</td>

        </TR>

        <TR>

                <TD ALIGN=left class=class1 height=15>Tax jurisdiction: `'XLIST_AG_TAX'[1]`<p></td>

                <TD ALIGN=left class=class1 height=15>Tax jurisction: `'XLIST_WE_TAX'[1]`<p></td>

        </TR>

</table>

 

<table border=0 cellspacing=1 cellpadding=0>

        <TR>

                <TD ALIGN=LEFT VALIGN=BOTTOM height="15"><img src="`~imagePath`/sap/grid_item_no.jpg" height="15"></TD>

                <TD ALIGN=LEFT VALIGN=BOTTOM height="15"><img src="`~imagePath`/Text/grid_prod_name.jpg"  height="15"></TD>

                <TD ALIGN=LEFT VALIGN=BOTTOM height="15"><img src="`~imagePath`/Text/grid_qty.jpg"  height="15"></TD>

                <TD ALIGN=LEFT VALIGN=BOTTOM height="15"><img src="`~imagePath`/Text/grid_price.jpg"  height="15"></TD>

                <TD ALIGN=CENTER VALIGN=TOP height="15" width="120"><img src="`~imagePath`/sap/orderdate.jpg" ></TD>

                <TD ALIGN=CENTER VALIGN=TOP height="15"><img src="`~imagePath`/sap/Trackingnumber.jpg" ></TD>

        </tr>       

        <tr>

                <td colspan="6" align="left" valign="top" bgcolor="#999966"><img src="`~imagePath`/Text/clear.gif" width="1" height="1"></td>

        </tr>

`old_item = ""`

`repeat with i from 1 to 'XLIST_POSNR'.dim`

        `if ('XLIST_CFG'[i] != "X")`

        <TR>

                `if ('XLIST_POSNR'[i] == old_item)`

                        <!-- if the same item suppress these informations -->

                        <TD ALIGN=left class=class1 height=15> &#160 </TD>

                        <TD ALIGN=LEFT class=class1 height=15> &#160 </TD>

                        <TD ALIGN=center class=class1 height=15> &#160 </TD>

                        <TD ALIGN=center class=class1 height=15> &#160 </TD>

                        <TD ALIGN=left class=class1 height=15> &#160 </TD>

                `else`

                        <!-- in the 1. line show all information -->

                        <TD ALIGN=LEFT class=class1 height=15>

                        `if ('XLIST_MATNR'[i] == "")`

                                &#160

                        `else`

                                <b>`'XLIST_MATNR'[i]`</b>

                        `end`

                        </TD>

                        <TD ALIGN=LEFT class=class1 height=15>

                        `if ('XLIST_ARKTX'[i] == "")`

                                &#160

                        `else`

                                <b>`'XLIST_ARKTX'[i]`</b>

                        `end`

                        </TD>

                        <TD ALIGN=CENTER class=class1 height=15>

                        `if ('XLIST_KWMENG'[i] == "")`

                                &#160

                        `else`

                                <b>`'XLIST_KWMENG'[i]`</b>

                        `end`

                        </TD>

                        <TD ALIGN=RIGHT class=class1 height=15>

                        `if ('XLIST_NETWR'[i] == "")`

                                &#160

                        `else`

                                <b>$`'XLIST_NETWR'[i]`</b>

                        `end`

                        </TD>

                        <TD ALIGN=CENTER class=class1 height=15><b>`'XLIST_LFDAT'[i]`</b></TD>            

                        <TD ALIGN=LEFT class=class1 height=15>

                        <!-- `'XLIST_LIFNR'[i]` -->

                                <b>

                                <script language= "javascript">

                                        DisplayTrackingNum('`'XLIST_TRACK1'[i]`', '`'XLIST_TRATY'[i]`', 1, '`'XLIST_TRACK2'[i]`');

                                        DisplayTrackingNum('`'XLIST_TRACK3'[i]`', '`'XLIST_TRATY'[i]`', 0, '`'XLIST_TRACK4'[i]`');

                                        DisplayTrackingNum('`'XLIST_TRACK5'[i]`', '`'XLIST_TRATY'[i]`', 0, '`'XLIST_TRACK6'[i]`');

                                        DisplayTrackingNum('`'XLIST_TRACK7'[i]`', '`'XLIST_TRATY'[i]`', 0, '`'XLIST_TRACK8'[i]`');

                                        DisplayTrackingNum('`'XLIST_TRACK9'[i]`', '`'XLIST_TRATY'[i]`', 0, '`'XLIST_TRACK10'[i]`');

                                        DisplayTrackingNum('`'XLIST_TRACK11'[i]`', '`'XLIST_TRATY'[i]`', 0, '`'XLIST_TRACK12'[i]`');

                                </script>

 

                                </b>

                        </TD>

                <!-- save old_item -->

                `old_item = 'XLIST_POSNR'[i]`

                `end`

        </TR>

 

                `if ('XLIST_PORDER'[i] == "")`

                `else`

                        <TR>

                                <TD></TD>

                                <TD ALIGN=LEFT class=class1 height=15><font color="#000080"><b>.Purchase Order #: </b></font></TD>

                                <TD ALIGN=CENTER class=class1 height=15><font color="#000080">`'XLIST_PORDER_Q'[i]`</font></TD>

                                <TD ALIGN=RIGHT class=class1 height=15><font color="#000080">$`'XLIST_PORDER_P'[i]`</font></TD>

                                <TD ALIGN=CENTER class=class1 height=15><font color="#000080">`'XLIST_PORDER_D'[i]`</font></TD>

                                <TD ALIGN=LEFT class=class1 height=15><font color="#000080">`'XLIST_PORDER'[i]`</font></TD>

                        </TR>

                `end`

 

                `if ('XLIST_LIFNR'[i] == "")`

                `else`

                        <tr>

                                <td></td>

                                <TD ALIGN=LEFT class=class1 height=15>.Delivery: </TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_LIFNR_Q'[i]`</TD>

                                <TD></TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_LFDAT'[i]`</TD>

                                <TD ALIGN=LEFT class=class1 height=15>`'XLIST_LIFNR'[i]`</TD>

                        </TR>

                `end`

 

                `if ('XLIST_PICK'[i] == "")`

                `else`

                        <TR>

                                <TD ALIGN=LEFT class=class1 height=15></TD>

                                <TD ALIGN=LEFT class=class1 height=15>..Picking: </TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_PICK_Q'[i]`</TD>

                                <TD></TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_PICK_D'[i]`</TD>

                                <TD ALIGN=LEFT class=class1 height=15>`'XLIST_PICK'[i]`</TD>

                        </TR>

                `end`

                `if ('XLIST_GI'[i] == "")`

                `else`

                        <TR>

                                <TD ALIGN=LEFT class=class1 height=15></TD>

                                <TD ALIGN=LEFT class=class1 height=15>..Shipped: </TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_GI_Q'[i]`</TD>

                                <TD></TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_GI_D'[i]`</TD>

                                <TD ALIGN=LEFT class=class1 height=15>`'XLIST_GI'[i]`</TD>

                        </TR>

                `end`

 

                `if ('XLIST_INVOICE'[i] == "")`

                `else`

                        <TR>

                                <TD ALIGN=LEFT class=class1 height=15></TD>

                                <TD ALIGN=LEFT class=class1 height=15>..Invoice: </TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_INVOICE_Q'[i]`</TD>

                                <TD ALIGN=RIGHT class=class1 height=15>$`'XLIST_INVOICE_P'[i]`</TD>

                                <TD ALIGN=CENTER class=class1 height=15>`'XLIST_INVOICE_D'[i]`</TD>

                                <TD ALIGN=LEFT class=class1 height=15>`'XLIST_INVOICE'[i]`</TD>

                        </TR>

                `end`

 

                `if ('XLIST_ACCOUNT'[i] == "")`

                `else`

                        <TR>

                                <TD ALIGN=LEFT class=class1 height=15></TD>

                                <TD ALIGN=LEFT class=class1 height=15><b><font color="#008000">...Accounting Doc #: </font></b></TD>