How to debug a background task that takes a lot of time to execute

My workflow consists of a background task which takes a significant amount of time to execute completely. I have executed the BO method from SWO1 and it works fine.. takes just few secs to execute.
But when this method is executed through workflow as a background task, it takes more than 20 mins to execute.
What can be the possible causes and how do I debug this.

Dear Tiyasha,
You can debug your task even if it is a back ground task.
The process is as follows :
The place where want to place your break point put an infinite while loop just before your actual code.Now execute your workflow , now go to sm54 there u will find your entry and from here you can go to the debugger .In the debugger make the value of the while loop to be true so that u can proceed.
Here u will able to debug it properly.
Regards,
Geet

Similar Messages

  • Sometimes closeRecordStore() takes a lot of time while executing.

    I simply delete a record from the recordStore and close it, but sometime recordstore cloosed in fraction of second and sometimes it takes a lot of time(1-2 min).

    RecordStore rsImageData = null;
              try {
    rsImageData =
    a =
    RecordStore.openRecordStore(RSIConst.RS_IMAGE_DATA,
                             false);this means if recordstore doesn't exists don't create it
                   if (rsImageData.getNumRecords() == 1) {
                        rsImageData.closeRecordStore();
                        RecordStore.deleteRecordStore(RSIConst.RS_IMAGE_DA
    TA);//and here you are deleteing it !
                        Const.htOfflineDataTable.clear();
                        Const.htOfflineDataTable = null;
                   } else {
                        rsImageData.deleteRecord(p_offlineDataIndex);
                        rsImageData.closeRecordStore();
              } catch (Exception e) {
    Thanks,
    Ashishso either pass true in ur parameter while creating it
    or don't delete it

  • Table switch procedure takes a lot of time to execute

    Hi Experts,
    We have over 50,00,000 entries in SXMSPMAST table. When the archive and delete jobs completed, the number of entries in this table did not reduce much. So, I tried activating the switch procedure. The job that copies the content from SXMSPMAST to SXMSPMAST2 executed for about 4 days and then cancelled with the error.
    Now the situation is that SXMSPMAST table contains around 50,00,000 entries and SXMSPMAST2 contains around 8,00,000 entries. In SXMB_MONI -> Job Overview, I clicked on the button "Reschedule Terminated Copy Job" to start the cancelled job again. The copy job was restarted, it copied around 8,00,000 entries to SXMSPMAST2 table and terminated again with the error.
    Now we have around 50,00,000 entries in SXMSPMAST and around 16,00,000 entires in SXMSPMAST2.
    Please let me know how can I handle this situation? If it goes on like this, SXMSPMAST will never be cleared and SXMSPMAST2 will keep on growing. Please help.
    (SXMSPMAST2 is the current active table)
    - Netrey

    I think the first thing to do at this point is to try and complete the switch procedure. To help with this you can implement the parameter MOVE_INSTEAD_OF_COPY as per the note #1056749. This will ensure that after each message is copied to SXMSPMAST2 it will then be deleted from SXMSPMAST. Without this parameter messages are only deleted from SXMSPMAST after the switch procedure completes and the table is dropped.
    Alternatively you can flag the messages as logically deleted as per the note #1568401 'Flag messages as logically deleted during switch run'.
    After this you would need to look at why the delete procedure did not delete many messages from the system, the switch procedure will not delete any more messages than the delete procedure.
    You can run the report RSXMB_SHOW_REORG_STATUS, this details the number of messages that are eligible for archiving and deletion, i.e outside of retention period.
    You can also run the report RSXMB_SHOW_STATUS, this shows the number of messages assigned to each message and adapter status. Please note that only messages with a final message and adapter status. See section 5.k of the note #872388 '  Troubleshooting Archiving and Deletion in PI'.
    You can check the what each message status means by checking the table SXMSMSTATT.

  • How to debug the background job in ABAP

    Hi Guys,
    Can anyone let me know how to debug the background job in ABAP.
    Thanks in advance
    peter

    Hi,
    Goto SM37 and see the log if any is there and based on that you can check the code.
    you can't debug background job.
    Create a Variant for the Program and
    Schedule JOB in background:
    Go to SM36 create a Job
    enter Program and Variant for that program in STEP..
    click on Start Condition
    Click on DATE and TIME enter date scheduled Start and END times
    click on Period Values
    Click on HOURLY/WEEKLY etc
    CLick on RESTRICTIONS also to use further criteria.
    so your job will be scheduled and run as per your requirement.
    and in SM37 Transaction check the status of that JOB
    Check this link for scheduling jobs..
    http://help.sap.com/saphelp_nw2004s/helpdata/en/c4/3a7f87505211d189550000e829fbbd/content.htm
    Check this
    http://jplamontre.free.fr/SAP/Debug%20background%20process.htm
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/abap/abap+debugger&
    Regards,
    Padmam.

  • I have a keynote presentation that includes a significant amount of video.  When I edit the keynote slides (not the video slides) how can I save the changes without re-saving the videos (because that takes a VERY long time)?

    I have a keynote presentation that includes a significant amount of video.  When I edit the keynote slides (not the video slides) how can I save the changes without re-saving the videos (because that takes a VERY long time)?  I edit the presentation depending on the audience to which I am presenting.

    If you add a new  slide with just a text box (therefore a very small amount of data),  to an existing presentation then save,  Keynote will only save the new content to the file,  it wont save  pre-existing content as its already included in the file.
    The time  taken to "save" will be very much shorter than a "save as" when all of the existing content is saved again.

  • How do you end a task that won't open

    How do you end a task that won't complete?

    Assuming that it doesn't show in Force Quit under the Apple menu - can you see it in Activity Monitor (/Applications/Utilities)

  • Background task taking a lot of time to execute

    Hi,
    There is a background task in my workflow which is taking a lot of time to execute.
    I have tested it in dialog mode.. and it works fine.. takes just 2 mins.
    Only when the task is executed from background.. it takes about 10 mins.
    Is this a config problem? How do I check if it is so?

    you could try activating a trace (sql) and see what the differences are,.
    you could check if maybe user parameters are influencing this. Or ask your basis team if there are a lot of differences between syystem users and dialog users in terms of resource allocation.
    Did you find anything different whilst debugging it?
    Kind regards, Rob Dielemans

  • Need to write a query that takes more than 2 minutes to execute

    Hi ,
    I am using Oracle 10g as my DataBase.
    I am writing a small program for Testing purpose , in that my requirement is to write a query that takes more than 2 minutes to execute .Right now i have only a small Table called as "Users" with very less data .
    Please let me know how can i achieve this thing ??
    Thanks .

    So please tell me , how can i achieve this . Thanks in advance .P. Forstman's example above will probably be more reliable, but here's an example of my idea - harder to control timing (untested)
    select count(*)
      from dba_objects o, dba_tables t, dba_tab_columns tc
    where o.object_name||'' = t.table_name||''
       and o.owner||'' = t.owner||''
      and t.table_name||'' = tc.table_name
      and t.owner||'' = tc.owner||''

  • Ipad2 gives me ""accessory is not supported" message w/ VGA adapter that I used lots of times before. Now it's not working. Why? and how do I get it back to normal functioning?

    Ipad2 gives me ""accessory is not supported" message w/ VGA adapter that I used lots of times before. Now it's not working. Why? and how do I get it back to normal functioning?
    I used the (Apple branded) VGA adapter lots of times last year. Now I got back to one place I used it many times and it does not work. When I restart iPad with the adapter connected, I get the "accessory is not supported"message. But that same accessory WAS supported before.
    This is very annoying as I planned a whole bunch of presentations starting this week to do with my iPad2 and that adapter.

    I received the same error message, "Accessory Not Supported"  from both the VGA and DV video adapters I purchased, both were boxed direct from Apple. However, to bypass this problem I  simply clicked on Photos icon on iPad2 and flipped through photos until it displayed on my projector.  I then exited the Photos app and my home screen displayed fine on the projection screen.
    Some logic issue with the video adapters, but launching Apple Photo app initializes the video adapters then they work fine for mirroring after that.
    Platform: iPad2
    IOS: 5.1.1
    Best regards!

  • When i try to send a picture or a video with imessage on my iphone 4, it sends it with text messages and not imessage and it takes a lot of time ! How can i fix this ? thanks :)

    Hey guys ,
    When i try to send a picture with imessage to an another iphone it's sends it with text messages (not all the times but often) and it takes a lot of time ! Who could I fix this ?
    Thanks anyway ,
    guitarist young

    For Instagram you can try and uninstall and reinstall the app and see if that fixes it. But if not you can try and resetting all settings, Settings>General>Reset>Reset All Settings.

  • Have been trying for 4 days to do an update that takes 4 hours and times out everytime at 2 seconds. Any ideas why?

    Have been trying for 4 days to do and update that takes 4 hours each time. It always times out on the last 2 seconds every time. Any ideas why?

    hi u seem to know alot about ipods, would u mind helping me with a problem that i am currently havig with my menu button on the iod touch 4th generation?

  • Quicktime takes a lot of time to open after last Quicktime or iTunes update

    I have actually no big problems, but its a bit annoying that Quicktime Player takes a lot of time (maybe twice as before) for opening a Quicktime file (mp3 or video file, it doesnt matter).. I think this situation arised after the last Quicktime update or the update before this I dont know for sure. I think the last Quicktime update.. I am using the latest Quicktime which is 7.6 and its Tiger (10.4.11). When Quicktime Player is not opened, and its getting opened for the first time by clicking for instance on a mp3 file, it takes more then 10 seconds to open up, when I click the file Quicktime Player bounces normally as always but then the spinning rainbow beachball is shown for more then 10 seconds before the player window appears. There is no delay when I go open a mp3 from another mp3. The delay occurs only when Quicktime Player is not opened yet (quit/closed) and you click on a Quicktime file then the delay happens during the opening of the player.. Sometimes it doesnt even open the file I clicked, but only Quicktime Player so I have to click the same file again..
    What I tried is :
    deleted all Quicktime player preference files.. Didnt help
    removed all plugins from the Quicktime library.. Didnt help either
    What could the problem possibly be? What can I do to recover it except for installing my system all over again? Will Apple fix this problem with the next update?
    PS: I dont exclude that the latest iTunes update (8.1) can be a cause of this problem. Do you know if the iTunes update also changed/updated something regards Quicktime (Player)?

    Why is an Archive & Install not an option for you? It does NOT delete your applications or your settings, and is NOT the same as an Erase & Install which does.
    In my opinion it will be the only way to get your old G3 working properly again.
    How to Archive & Install:
    http://docs.info.apple.com/article.html?artnum=107120
    This document explains how to correctly reinstall a prior version of Mac OS X in the event that other troubleshooting does not resolve an issue:
    http://docs.info.apple.com/article.html?artnum=25404
    BUT: Don't install older versions of Mac OS than what comes with your computer:
    http://support.apple.com/kb/HT2186?viewlocale=en_US
    Will Apple fix this problem with the next update?
    For 99.9% of users there is no problem to fix.
    But before doing your archive and install, when did you last perform a bit of maintenance?
    Repairing permissions is important, and should always be carried out both before and after any software installation or update.
    Go to Disk Utility (this is in your Utilities Folder in your Application folder) and click on the icon of your hard disk (not the one with all the numbers).
    In First Aid, click on Repair Permissions.
    This only takes a minute or two in Tiger, but much longer in Leopard.
    Background information here:
    http://docs.info.apple.com/article.html?artnum=25751
    and here:
    http://docs.info.apple.com/article.html?artnum=302672
    An article on troubleshooting Permissions can be found here:
    http://support.apple.com/kb/HT2963
    By the way, you can ignore any messages about SUID or ACL file permissions, as explained here:
    http://support.apple.com/kb/TS1448?viewlocale=en_US
    If you were having any serious problems with your Mac you might as well complete the exercise by repairing your hard disk as well. You cannot do this from the same start-up disk. Reboot from your install disk (holding down the C key). Once it opens, select your language, and then go to Disk Utility from the Utilities menu. Select your hard disk as before and click Repair.
    Once that is complete reboot again from your usual start-up disk.
    More useful reading here:
    Resolve startup issues and perform disk maintenance with Disk Utility and fsck
    http://support.apple.com/kb/TS1417?viewlocale=en_US

  • Projects publishing takes a lot of time

    Hello! I've experienced a very annoying behavior with my Project Server. I have a lot of projects (about 500) and resources (about 300) in 1 PWA at my production environment. Publishing of projects and building resource assignments report takes a LOT of
    time. About 10-30 minutes or even doesn't complete.
    I've found a very useful article about similar symptoms: http://blogs.technet.com/b/projectserverpfeteamblog/archive/2014/06/30/longpublishtimesreportingpublish.aspx,
    but can't comment there, so i ask a question here:
    Is it true, that deleting old projects will no affect performance of publishing projects and building reports? How can i speed-up this process without touching disk subsystem? i've already done all possible tasks such as rebuilding index,
    adding tempdb files, tuning databases but i can not achieve  desired performance.

    Hi! Thank you, Michael, Ben and Paul for your replies! Probably i word my question a bit incorrect..
    Yes, i've experienced some SQL troubles, with the  help of great tool PAL (pal.codeplex.com) i discovered that some performance counters exceeds its thresholds, such as: SQLServer:Latches\Total Latch Wait Time, SQLServer:Access Methods\Workfiles
    Created, SQLServer:Locks\Lock Requests. And yes, i'm investigating reasons of that behavior (though i don't realize how to fix this except for moving DB's to faster disk). Also i trying to figure out projects details as Michael advised in first reply.
    But the main question i want to know, can i effectively speed-up publishing\reporting process by cleaning-up my environment? Just months ago, when only a little projects was started and not much resources were added to PWA, all processes like publishing
    performed almost instantly! And now, when i have an opportunity to remove some projects and projects' sites from PWA, can it be helpful for performance? Does anyone tried this?

  • Server boot takes a lot of time due to JMS persistence file store

    Hi,
    We're using WebLogic 9.2 on a windows machine.
    Recently, we enhanced our application to work with JMS.
    We're using 2 JMS servers on 2 different servers in a cluster, and working with distributed destinations.
    We're using file store as our persistence store.
    Lately, we found that server boot takes a lot of time due to actions which are performed on the file-store.
    Analyzing this problem, we saw that the file size is ~2GB.
    We understand that the file size does not shrink (unless manually compacted), and its size is matching the highest number ever of pending messages in the queues (like a high water-mark).
    We also turned store debug on, using weblogic.Debug.DebugStoreIOPhysical, and we saw a lot of recovery logs after the file-store is opened.
    We've checked and verified that our JMS transactions are completed successfully. We also verified that the number of pending and current messages is 0.
    We've stopped the server gracefully, verifying there are no pending messages.
    However, server boot repeatedly takes ~30 minutes due to heavy work done on the persistence store.
    Compacting or removing the file store eliminates the delay.
    However, we want to avoid manual operations every time we want to boot the server.
    Please share your ideas.
    Thanks,
    Itsik

    The only suggestions I have off the top of my head are:
    * Ensure (1) the host system has at least 2GB (file store size) of free physical memory in addition to the memory used by current processes, and (2) the host system is not rebooted between each WebLogic restart. If you make sure of these two items, then the operating system will implicitly cache the store's file contents in memory even between boots -- when WebLogic subsequently boots the file store, the O/S should serve the file contents up much more quickly.
    * Consider moving to a JDBC store. JDBC store runtime performance is lower, but since you have a typically only have a small amount of records to recover, boot performance should be higher in this case.
    * Not that it helps your particular case, but it happens that we have boot performance enhancements in process for a future release (hopefully a near future release).
    Tom

  • My JSP page takes a lot of time to go to next JSP

    Hi All,
    I have a JSP page which loads dynamically depending on what the user enters. This page works fine for items upto 20-30 but as the number of items increases, my JSP page takes a lot of time to go to the next one. Heres what my JSP looks like:
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
    <%@ taglib uri="/WEB-INF/struts-form.tld" prefix="form" %>
    <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
    <%@ taglib uri="/WEB-INF/rswtags.tld" prefix="rsw" %>
    <jsp:useBean id="dateFormatIntl" scope="session" type="java.lang.String"/>
    <html>
    <head>
    <title><bean:message key="title.application"/> - <bean:message key='header.return_to_vendor_detail'/></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <%@ include file="rsw_functions.jsp" %>
    <%@ include file="shipment_rtv_functions.jsp" %>
    <script language="JavaScript" type="text/javascript">
    var page = "<bean:message key='header.return_to_vendor_detail'/>"
    var rtvEntryArray = new Array();
    var totalAmtString;
    function setFormValues()
    var rtvEntriesString = "";
    for (var v = 0; v < rtvEntryArray.length; v++)
    var rtvEntryString = rtvEntryArray[v].itemNumber + "~"
    + rtvEntryArray[v].itemQty + "~"
    <rsw:display displayElementName="rtv_reason">
    + rtvEntryArray[v].inventoryStatusCode + "~"
    + rtvEntryArray[v].inventoryStatusName + "~"
    + rtvEntryArray[v].reasonCodeId + "~"
    + rtvEntryArray[v].reasonCodeName + "~" +
    </rsw:display>
    <rsw:display_false displayElementName="rtv_reason">
    + " " + "~"
    + " " + "~"
    + " " + "~"
    + " " + "~" +
    </rsw:display_false>
    rtvEntryArray[v].valid;
    rtvEntriesString = rtvEntriesString + rtvEntryString + ";";
    document.rtvVsatShipmentForm.rtvEntriesString.value = rtvEntriesString;
    function writeItem(itemNumber, itemQty, inventoryStatusCode, inventoryStatusName,
    reasonCodeId, reasonCodeName)
    if(!acquireFakeLock()) return;
    if (!arrayContainsItem(itemNumber, reasonCodeId))
    addEntry(itemNumber, itemQty, inventoryStatusCode, inventoryStatusName,
    reasonCodeId, reasonCodeName, "true");
    else
    setItemQtyReasonArray(itemNumber, itemQty, reasonCodeId, reasonCodeName);
    writeTable(false);
         releaseFakeLock();
    function handleApply()
    <%-- change this if 'please select...' value changes to something other than a space --%>
    if (document.rtvVsatShipmentForm.applyReasonCode.value == " ")
    alert('<bean:message key="error.must_enter_a_reason" />');
    return;
    if (checkQuantityGreaterThenZero(document.rtvVsatShipmentForm.applyQty))
    formatQuantity(document.rtvVsatShipmentForm.applyQty);
    if (document.rtvVsatShipmentForm.applyId.value == '')
    alert("<bean:message key='error.no_dsd_order_entries' />");
    document.rtvVsatShipmentForm.applyId.focus();
    return;
    writeItem(document.rtvVsatShipmentForm.applyId.value,
    document.rtvVsatShipmentForm.applyQty.value
    <rsw:display displayElementName="rtv_reason">,
    document.rtvVsatShipmentForm.selectedInventoryStatus.options[document.rtvVsatShipmentForm.selectedInventoryStatus.selectedIndex].value,
    document.rtvVsatShipmentForm.selectedInventoryStatus.options[document.rtvVsatShipmentForm.selectedInventoryStatus.selectedIndex].text,
    document.rtvVsatShipmentForm.applyReasonCode.options[document.rtvVsatShipmentForm.applyReasonCode.selectedIndex].value,
    document.rtvVsatShipmentForm.applyReasonCode.options[document.rtvVsatShipmentForm.applyReasonCode.selectedIndex].text
    </rsw:display>
    document.rtvVsatShipmentForm.applyId.value = '';
    document.rtvVsatShipmentForm.applyQty.value = 1;
    document.rtvVsatShipmentForm.applyId.focus();
    <rsw:display displayElementName="rtv_reason">
    document.rtvVsatShipmentForm.selectedInventoryStatus.value
    = document.rtvVsatShipmentForm.selectedInventoryStatus.options[0].value;
    selectFromInvStatus();
    </rsw:display>
    totalAmounts();
    function clearFields()
    document.rtvVsatShipmentForm.returnAuth.value = "";
    document.rtvVsatShipmentForm.applyId.value = "";
    document.rtvVsatShipmentForm.applyQty.value = "1";
    document.rtvVsatShipmentForm.applyId.focus();
    document.rtvVsatShipmentForm.selectedInventoryStatus.value = document.rtvVsatShipmentForm.selectedInventoryStatus.options[0].value;
    selectFromInvStatus();
    function getCurrentOptions()
    if (document.rtvVsatShipmentForm.selectedInventoryStatus.value == "AVAILABLE")
    return availableOptions;
    return unavailableOptions;
    function populateDropDown(dropdownField)
         var currentOptions;
    currentOptions = getCurrentOptions();     
    dropdownField.options.length = 0;
    var oPleaseSelectOption = document.createElement("OPTION");
    oPleaseSelectOption.value = " ";
    oPleaseSelectOption.text = "<bean:message key="label.please_select"/>";
    dropdownField.options.add(oPleaseSelectOption);
    for (var i = 0; i < currentOptions.length; i++)
    dropdownField.options.add(currentOptions);
    function selectFromInvStatus()
    populateDropDown(document.rtvVsatShipmentForm.applyReasonCode);
    function initialize()
    document.rtvVsatShipmentForm.applyId.focus();
    createReasonOptionObjects();
    selectFromInvStatus();
    <logic:equal name="rtvVsatShipmentForm" property="returnAuthRequired" value="true">
    if (document.rtvVsatShipmentForm.returnAuth.value == '')
    document.rtvVsatShipmentForm.returnAuth.focus();
    </logic:equal>
    createEntryArray(document.rtvVsatShipmentForm.rtvEntriesString.value, false);
    <rsw:display displayElementName="rtv_reason">
    </rsw:display>
    totalAmounts();
    function next()
    setFormValues();
    if (document.rtvVsatShipmentForm.rtvEntriesString.value == '')
    alert("<bean:message key='error.no_dsd_order_entries' />");
    document.rtvVsatShipmentForm.applyId.focus();
    return;
    <logic:equal name="rtvVsatShipmentForm" property="returnAuthRequired" value="true">
    if (document.rtvVsatShipmentForm.returnAuth.value == '')
    alert("<bean:message key='error.return_auth_required' />");
    document.rtvVsatShipmentForm.returnAuth.focus();
    return;
    </logic:equal>
    if (!validateTextAreaLength(document.rtvVsatShipmentForm.comments,
    "<bean:message key='label.comments'/>", 255))
    return false;
    document.rtvVsatShipmentForm.submit();
    function doBack()
    backLink.href = "<bean:write name='rtvVsatShipmentForm' property='previousAction' />";
    document.rtvVsatShipmentForm.action=backLink.href;
    document.rtvVsatShipmentForm.submit();
    function handleItemLookup()
    window.open(itemLookupLink.href + "?actionToReturnTo=shipment_rtv_vsat_create&fieldToPopulateUponReturn=applyId","RSWLookupWindow");
    </script>
    <jsp:include page="/elements/top_banner2.jsp" flush="true"/>
    <!-- Beginning of Page Body -->
    <body onload="initialize();displayErrors();">
    <form:form action="shipment_rtv_vsat_to_summary.do" style="margin-top:0">
    <input type="hidden" name="fieldToPopulateUponReturn" value="applyId">
    <span style="display:none">
    <html:link styleId="itemLookupLink" href="item_lookup_start.do"></html:link>
    <html:link styleId="backLink" href="dummyLink"></html:link>
    </span>
    <html:hidden property="rtvEntriesString"/>
    <form:hidden property="fromLocationId" />
    <table width="700" class="bgColor" cellpadding="0" cellspacing="0" border="0">
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell" rowspan="3"></td>
    <td class="bodymd" width="125">
    <bean:message key="label.rtv_number" />:
    </td>
    <td class="bodymd">
    <bean:write name="rtvVsatShipmentForm" property="rtvNumber" />
    </td>
    <td class="bodymd">
    </td>
    <td class="bodymd">
    <bean:message key= "label.date" />: 
    </td>
    <td class="bodymd" align="left">
    <bean:write name="rtvVsatShipmentForm" property="createDate"/>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    <td colspan="3"></td>
    <logic:equal name="dateFormatIntl" value="true">
    <td align="left" valign="top" class="bodymd">
    <span class="bodyxsm">(<bean:message key="label.date_format_string_intl"/>)</span>
    </td>
    </logic:equal>
    <logic:notEqual name="dateFormatIntl" value="true">
    <td>
    <span class="bodyxsm">(<bean:message key="label.date_format_string_us"/>)</span>
    </td>
    </logic:notEqual>
    </tr>
    <tr>
    <td class="bodymd">
    <bean:message key="label.status" />: 
    <td class="bodymd">
    <rsw:display displayElementName="rtv_status">
    <form:select property="selectedStatusCode" >
    <form:options name="rtvVsatShipmentForm" property="statusIds"
    labelProperty="statusNames" />
    </form:select>
    </rsw:display>
    <rsw:display_false displayElementName="rtv_status">
    <bean:write name="rtvNonVsatShipmentForm" property="selectedStatus.description" />
    </rsw:display_false>
    </td>
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell"></td>
    <td class="bodymd">
    <bean:message key="label.ship_from_location" />:
    </td>
    <td class="bodymd" colspan="5">
    <bean:write name="rtvVsatShipmentForm" property="fromLocationId" />
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    <td class="bodymd">
    <bean:message key="label.supplier_name" />:
    </td>
    <td class="bodymd">
    <bean:write name="rtvVsatShipmentForm" property="supplierName" />
    </td>
    <td class="bodymd" width="125">
    <bean:message key="label.supplier_number" />: 
    </td>
    <td class="bodymd" colspan="3">
    <bean:write name="rtvVsatShipmentForm" property="supplierId" />
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    <td class="bodymd">
    <bean:message key="label.rtv_paid" />: 
    </td>
    <td class="bodymd" align="left">
    <form:select property="selectedPaymentStatusCode" >
    <form:options name="rtvVsatShipmentForm" property="paymentStatusIds"
    labelProperty="paymentStatusNames" />
    </form:select>
    </td>
    <td class="leadSpacerCell">
    </td>
    </tr>
    <%-- <tr>
    <td class="bodymd">
    <bean:message key="label.check_number" />: 
    </td>
    <td class="bodymd" align="left">
    <form:text name="rtvVsatShipmentForm" property="checkNumber" maxlength="12"/>
    </td>
    </tr>
    --%>
    </table>
    <table width="700" class="bgColor" cellpadding="0" cellspacing="0" border="0">
    <tr>
    <td class="spacerCell">
    </td>
    <tr>
    <td class="leadSpacerCell">
    </td>
    <td colspan="3">
    <table border="0" cellpadding="0" cellspacing="0">
    <tr>
    <td class="bodymd">
    <bean:message key="label.return_authorization_no" />: 
    </td>
    <td class="bodymd" align="left">
    <form:text name="rtvVsatShipmentForm" property="returnAuth" maxlength="12"/>
    </td>
    <td class="leadSpacerCell">
    </td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    </td>
    <td class="bodymd" valign="top">
    <bean:message key="label.supplier_address" />
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    </td>
    <td colspan="6">
    <table border="0">
    <tr>
    <td width="10" rowspan="4">
    </td>
    <td class="bodymd">
    <form:text property="addressLine1" style="width:200" />
    </td>
    <td width="5">
    </td>
    <td class="bodymd">
    <bean:message key="label.city" />: 
    </td>
    <td colspan="3" class="bodymd">
    <form:text property="addressCity" style="width:200" />
    </td>
    </tr>
    <tr>
    <td class="bodymd">
    <form:text property="addressLine2" style="width:200" />
    </td>
    <td width="5">
    </td>
    <td class="bodymd">
    <bean:message key="label.state_or_province" />: 
    </td>
    <td class="bodymd">
    <form:text property="addressStateOrProvince" style="width:80" />
    </td>
    <td class="bodymd">
    <bean:message key="label.postal_code" />: 
    </td>
    <td class="bodymd">
    <form:text property="addressPostalCode" style="width:80" />
    </td>
    </tr>
    <tr>
    <td class="bodymd">
    <form:text property="addressLine3" style="width:200" />
    </td>
    <td width="5">
    </td>
    <td class="bodymd">
    <bean:message key="label.country" />: 
    </td>
    <td colspan="3" class="bodymd">
    <form:text property="addressCountry" style="width:200" />
    </td>
    </tr>
    </table>
    </td>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    </td>
    <td class="bodymd" valign="top">
    <bean:message key="label.comments" />: 
    </td>
    <td>
    <form:textarea property="comments" cols="65" rows="3" onkeypress="limitKeyPress(this, 255)"/>
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td colspan="3" class="horizontalLine">
    </td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    </table>
    <table width="700" cellpadding="0" cellspacing="0" border="0" class="bgColor">
    <tr>
    <td class="leadSpacerCell"></td>
    <td class="bodymdbold"><bean:message key='label.item'/>: </td>
    <td><form:text size="15" property="applyId"/>  </td>
    <td class="bodymdbold"><bean:message key='label.quantity'/>: </td>
    <td><form:text size="8" maxlength="8" property="applyQty" />  </td>
    <rsw:display displayElementName="rtv_reason">
    <td style="display:none" class="bodymdbold"><bean:message key='label.inventory_status'/>: </td>
    <td style="display:none">
    <form:select property="selectedInventoryStatus" onchange="selectFromInvStatus();">
    <form:options name="rtvVsatShipmentForm" property="inventoryStatusCodes"
    labelProperty="inventoryStatusDescriptions" />
    </form:select>
    </td>
    <td class="bodymdbold"><bean:message key='label.reason_code'/>: </td>
    <td>
    <select name="applyReasonCode">
    <%-- <logic:iterate name="rtvVsatShipmentForm" property="rtvReasons" id="reason">
    <option value="<bean:write name="reason" property="code"/>">
    <bean:write name="reason" property="description"/>
    </option>
    </logic:iterate>
    --%>
    </select>
    </td>
    </rsw:display>
    </tr>
    <tr>
    <td class="leadSpacerCell"></td>
    <td class=bodymd>
    <a class="genericLink" href="" onClick="handleItemLookup(); return false"><bean:message key='link.item'/></a>
    </td>
    </tr>
    <tr>
    <td class="leadSpacerCell"></td>
    <td colspan="9" align="left">
    <br>
    <input type="submit"
    value="<bean:message key='button.apply'/>"
    onClick="handleApply();return false;">  
    <input type="button" value="Clear" onclick="clearFields()";></td>
    </tr>
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td class="horizontalWhiteLine" colspan="10"></td>
    </tr>
    </table>
    <table class="bgColor" width="700" cellpadding="0" cellspacing="0" border="0">
    <tr>
    <td class="spacerCell">
    </td>
    </tr>
    <tr>
    <td><rsw:errors/></td>
    </tr>
    </table>
    <div id="item_list_div">
    </div>
    <table width="700" cellpadding="0" cellspacing="0" border="0" class="bgColor">
    <tr>
    <td class="spacerCell"></td>
    </tr>
    <tr>
    <td>
    <table width="700" cellpadding="0" cellspacing="0" border="0" class="bgColor">
    <tr>
    <td class="bodymdbold" align="right" nowrap><div id="total_amt_div"></div></td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td class="spacerCell"></td>
    </tr>
    <tr>
    <td class="horizontalLine" colspan="3"></td>
    </tr>
    </table>
    <table cellpadding="0" cellspacing="0" border="0" width="700">
    <tr>
    <td class="spacerCell"></td>
    </tr>
    <tr>
    <td class="leadSpacerCell">
    </td>
    <td align="left">
    <input type="button" value="<bean:message key='button.next'/>"
    onclick="next();">
    <input type=button value="<bean:message key='button.back'/>"
    onclick="doBack();">
    <input type=button value="<bean:message key='button.cancel'/>"
    onclick="doSubmit('main', 'main.do');">
    </td>
    </tr>
    </table>
    </form:form>
    <div id="log"></div>
    </body>
    <!-- End of Page Body -->
    <jsp:include page="/elements/bottom_banner2.jsp" flush="true"/>
    <script language="JavaScript" type="text/javascript">
    function handleAction(retVal,position)
    if (retVal != null)
    var command = retVal["command"];
    if (command == "OK")
    updateArray(retVal["id"],
    formatQuantityFromVar(retVal["qty"]), true,
    <rsw:display displayElementName="rtv_reason">
    retVal["inventoryStatusCode"],
    retVal["inventoryStatusName"],
    retVal["reasonCode"],
    retVal["reasonDescription"],
    </rsw:display>
    <rsw:display_false displayElementName="rtv_reason">
    null, null, null, null,
    </rsw:display_false>
    position);
    totalAmounts();
    if (command == "Remove")
    deleteRow(position);
    writeTable(false);
    totalAmounts();
    function showEditWindow(sku, qty,
    <rsw:display displayElementName="rtv_reason">
    inventoryStatusCode, reasonCode,
    </rsw:display>
    position)
    if(!acquireFakeLock()) return;
    var elements = editWindowDiv.document.all;
    elements("editWindowId").value=sku;
    elements("editWindowQty").value = qty;
    <rsw:display displayElementName="rtv_reason">
    elements("editWindowInventoryStatusCode").value = inventoryStatusCode;
    elements("hiddenReasonCode").value = reasonCode;
    </rsw:display>
    var retVal;
    // if (IE6)
    retVal = window.showModalDialog("popup.jsp", editWindowDiv,
    "dialogWidth:335px;dialogHeight:230px;scroll:no;status:no;unadorned:no");
    else
    retVal = window.showModalDialog("javascript:document.write(window.dialogArguments.innerHTML);editWindowInit();",editWindowDiv,
    "dialogWidth:335px;dialogHeight:230px;scroll:no;status:no;unadorned:no");
    handleAction(retVal,position);
         releaseFakeLock();
    function updateArray(itemNumber, itemQty, fromEditWindow,
    inventoryStatusCode, inventoryStatusName,
    reasonCodeId, reasonCodeName, position, supplierCost)
    if (((rtvEntryArray[position].reasonCodeId != reasonCodeId)
    && arrayContainsItem(itemNumber, reasonCodeId))
         ||
         ((rtvEntryArray[position].itemNumber != itemNumber)
         && arrayContainsItemsExceptPos(itemNumber, reasonCodeId, position)))
    deleteRow(position);
    setItemQtyReasonArray(itemNumber, itemQty, reasonCodeId, reasonCodeName, supplierCost);
    else
    var rtvEntry = new Object();
    rtvEntry.itemNumber = itemNumber;
    rtvEntry.itemQty = itemQty;
    rtvEntry.inventoryStatusCode = inventoryStatusCode;
    rtvEntry.inventoryStatusName = inventoryStatusName;
    rtvEntry.reasonCodeId = reasonCodeId;
    rtvEntry.reasonCodeName = reasonCodeName;
    rtvEntry.supplierCost = supplierCost;
    rtvEntry.valid = rtvEntryArray[position].valid;
    rtvEntryArray[position] = rtvEntry;
    writeTable();
    </script>
    <div id="editWindowDiv" style="display:none">
    <html>
    <head>
    <style type="text/css">
    .titleTxt { font-size: 12 ; font-style: italic ; font-weight: bold; color: white ; font-family: arial }
    .bodymd {color: #000000; font-family: arial; font-size: 10pt; text-decoration: none}
    .bodymdbold {color: #000000; font-family: arial; font-size: 10pt; text-decoration: none; font-weight: bold}
    .bgColor { background-color: #efefef }
    </style>
    <title><bean:message key="title.edit_window" /></title>
    <script language="JavaScript">
    function handleOk()
    if (checkQuantityGreaterThenZero(document.editPopupForm.editWindowQty))
    var returnArray = new Array();
    returnArray["id"] = document.editPopupForm.editWindowId.value;
    returnArray["qty"] = document.editPopupForm.editWindowQty.value;
    <rsw:display displayElementName="rtv_reason">
    returnArray["inventoryStatusCode"] = document.editPopupForm.editWindowInventoryStatusCode.options[document.editPopupForm.editWindowInventoryStatusCode.selectedIndex].value;
    returnArray["inventoryStatusName"] = document.editPopupForm.editWindowInventoryStatusCode.options[document.editPopupForm.editWindowInventoryStatusCode.selectedIndex].text;
    returnArray["reasonCode"] = document.editPopupForm.editWindowReasonCode.options[document.editPopupForm.editWindowReasonCode.selectedIndex].value;
    returnArray["reasonDescription"] = document.editPopupForm.editWindowReasonCode.options[document.editPopupForm.editWindowReasonCode.selectedIndex].text;
    </rsw:display>
    returnArray["command"] = "OK";
    window.returnValue = returnArray;
    window.close();
    function handleCancel()
    window.close();
    function handleRemove()
    var returnArray = new Array();
    returnArray["command"] = "Remove";
    window.returnValue = returnArray;
    window.close();
    function init()
    document.title = "<bean:message key="title.edit_window" />";
    document.editPopupForm.editWindowQty.focus();
    <rsw:display displayElementName="rtv_reason">
    createReasonOptionObjects();
    setReasonOptions();
    document.editPopupForm.editWindowReasonCode.value = document.editPopupForm.hiddenReasonCode.value;
    </rsw:display>
    <rsw:display displayElementName="rtv_reason">
    function setReasonOptions()
    var currentOptions;
    document.editPopupForm.editWindowReasonCode.options.length = 0;
    if (document.editPopupForm.editWindowInventoryStatusCode.value == "AVAILABLE")
    currentOptions = availableOptions;
    else
    currentOptions = unavailableOptions;
    for (var i = 0; i < currentOptions.length; i++)
    document.editPopupForm.editWindowReasonCode.options.add(currentOptions[i]);
    </rsw:display>
    var availableOptions = new Array();
    var unavailableOptions = new Array();
    <rsw:display displayElementName="rtv_reason">
    function createReasonOptionObjects()
    var oOption;
    <logic:iterate name="rtvVsatShipmentForm" property="availableInventoryStatusReasons" id="reason">
    oOption = document.createElement("OPTION");
    oOption.value = "<bean:write name="reason" property="code"/>";
    oOption.text = "<bean:write name="reason" property="description"/>";
    availableOptions[availableOptions.length] = oOption;
    </logic:iterate>
    <logic:iterate name="rtvVsatShipmentForm" property="unavailableInventoryStatusReasons" id="reason">
    oOption = document.createElement("OPTION");
    oOption.value = "<bean:write name="reason" property="code"/>";
    oOption.text = "<bean:write name="reason" property="description"/>";
    unavailableOptions[unavailableOptions.length] = oOption;
    </logic:iterate>
    </rsw:display>
    </script>
    <%@ include file="rsw_functions.jsp" %>
    </head>
    <body leftmargin="0" topmargin="0" style="border:4px ridge lightgrey">
    <span style="margin-top:0;margin-left:0,margin-bottom:0;margin-right:0">
    <table cellspacing="0" cellpadding="0" border="0" bordercolor="#000000" width="330">
    <tr>
    <td bgcolor="#ff9999" width="100%" height="1" colspan="2"></td>
    </tr>
    <tr>
    <td bgcolor="#ff0000" height="15" align="left"><span
    class=titleTxt>  <bean:message key="label.edit" /> </span></td>
    <td bgcolor="#ff0000" height="15" align="right"><span
    class="titleTxt"><bean:message key="label.application_title" />   </span></td>
    </tr>
    <tr>
    <td bgcolor="#000000" width="100%" height="1" colspan="2"></td>
    </tr>
    </table>
    </span>
    <form name="editPopupForm" style="margin-top:0;margin-left:0,margin-bottom:0;margin-right:0"
    onsubmit="handleOk();return false;">
    <input type="hidden" name="editWindowPosition" value="">
    <input type="hidden" name="hiddenReasonCode" value="">
    <table cellspacing='0' class='bgColor' cellpadding='0' border='0' width='330'>
    <tr><td> </td></tr>
    <tr>
    <td class='bodymd'>  <bean:message key='label.item'/>:</td>
    <td class='bodymd'><input type="text" name="editWindowId" value="[id]" ></td>
    </tr>
    <tr>
    <!--Start RQST 34502 SIR 61007-->
    <!--td class='bodymd'--><!--  --><!--bean:message key='label.count_quantity'/--><!--:--><!--/td-->
    <td class='bodymd'>  <bean:message key='label.return_quantity'/>:</td>
    <!--End RQST 34502 SIR 61007-->
    <td class='bodymd'><input type="text" maxlength="8" name="editWindowQty" value="[qty]"></td>
    </tr>
    <rsw:display displayElementName="rtv_reason">
    <tr>
    <td style="display:none" class='bodymd'>  <bean:message key='label.inventory_status'/>:</td>
    <td style="display:none" class='bodymd'><select name="editWindowInventoryStatusCode" onchange="setReasonOptions();">
    <option value="AVAILABLE"><bean:message key="label.available"/></option>
    <option value="UNAVAILABLE"><bean:message key="label.unavailable"/></option>
    </select></td>
    </tr>
    <tr>
    <td class='bodymd'>  <bean:message key='label.reason_code'/>:</td>
    <td class='bodymd'><select name="editWindowReasonCode">
    <logic:iterate name="rtvVsatShipmentForm" property="rtvReasons" id="editWindowReason">
    <option value="<bean:write name="editWindowReason" property="code"/>">
    <bean:write name="editWindowReason"

    God Lord! Does anyone else here write JSPs that look like that?
    If I had to maintain that I would shoot myself straight in the temple.
    Sorry, I don't have answer to your question, I just had to say that.
    Do you like your job?

Maybe you are looking for

  • Dynamic Mail trigger for IT0019 Tasks Reminder.

    Hi PA Experts: I have a requirement to trigger a dynamic mail (for the Tasks in IT0019) to the Personnel Administrator to remind the Tasks. ex: A mail to be triggered by the system to remind the Administrator as and when the date arrives to followup

  • Sand box Non-central adapter engine entry is shown under development rwb

    Hi All, Recently we had a sand box which is a sytem copy of our development server, and everything works fine now. I have observed a strange issue here is, in the developement rwb under the Non-Central Adapter engines I see a entry as "Adapter Engine

  • Where do Apple's desktop image files live?

    Hi, I use my own collection of pictures to rotate my desktop image, but there are some from Apple that I like and would like to get in the mix. Does anyone know where these files live so that I can copy the ones I want into my desktop pics folder?? T

  • PS CC image size conundrum

    I went straight from PS CS5 to CC and i need help with the new image resize paradigm... So let's say I have a 5000x3000 pixel image at 300 ppi and i want to simply change the resolution to 72 ppi and reduce image size proportionaly.  The pixel size s

  • Experiencing slow loading, and up and down signals.

    Just Saturday I called linksys to have someone setup the WRE54g. After using it on my DSi and Ipod Touch I'm realizing that in a not that far distance from the expander that it goes from a full signal to a low signal and back and forth. Also, I've no