Does rooting Xperia L improve its camera performance

Does rooting Xperia L to custom ROM improve its camera performance

As uliwooly said.
You should know that rooting is just unlocking the lock that has been put on the system by sony so that users don't delete/ change anything in system by mistake.
So it's obvious camera quality won't change unless you do some changes with the camera files after rooting.
Discussion guidelines.
Message me or any other moderator to seek help regarding moderation.

Similar Messages

  • How can I rewrite this update stmt to improve its poor performance?

    Hi,
    I have the following update stmt that runs for over 6 hours. Here is the SQL and its plan:
                UPDATE TABLE1
                     SET mainveh = 'Y'
                 WHERE (comp#,polnum,a8dtef,a8deef,a8dtac,
                        DECODE(everif,'Y',10000,0)+auunit*100+vrcdsq)
                    IN (SELECT comp#,polnum,a8dtef,a8deef,a8dtac,
                               MAX(DECODE(everif,'Y',10000,0)+auunit*100+vrcdsq)
                          FROM TABLE1
                         GROUP BY comp#,polnum,a8dtef,a8deef,a8dtac);
    PLAN_TABLE_OUTPUT
    | Id  | Operation             | Name     | Rows  | Bytes |TempSpc| Cost (%CPU)|
    |   0 | UPDATE STATEMENT      |          |     1 |   108 |       |   798K  (1)|
    |   1 |  UPDATE               | TABLE1   |       |       |       |            |
    |   2 |   HASH JOIN           |          |     1 |   108 |  1079M|   798K  (1)|
    |   3 |    TABLE ACCESS FULL  | TABLE1   |    21M|   834M|       |   224K  (1)|
    |   4 |    VIEW               | VW_NSO_1 |    21M|  1364M|       |   440K  (1)|
    |   5 |     SORT GROUP BY     |          |    21M|   794M|  2453M|   440K  (1)|
    |   6 |      TABLE ACCESS FULL| TABLE1   |    21M|   794M|       |   224K  (1)|I'm using Oracle 10.2.0.3. The TABLE1 table has 21 million rows. The update stmt will update about 15 million rows. How can I rewrite this update stmt so it'll perform better? There is a primary index on all the columns selected in the subquery. That is the only index on TABLE1.
    Thank you!
    Edited by: user6053424 on Jul 21, 2010 6:59 AM

    Hi,
    Thank you for your suggestions. There is an index on the columns in the group by, it is the PK index on TABLE1. I'm suspecting that due to the amount of data to update, the optimizer decided that full table scan is cheaper than index scan. I'm very interested in the GTT idea, but still need some help if I decide to create a GTT from the subquery, because if I just do this:
    create global temporary table table1_tmp
    on commit preserve rows
    as SELECT comp#,polnum,a8dtef,a8deef,a8dtac,
               MAX(DECODE(everif,'Y',10000,0)+auunit*100+vrcdsq)
          FROM TABLE1
         GROUP BY comp#,polnum,a8dtef,a8deef,a8dtac;then the original update stmt still has the DECODE and such in it, I'm not sure how much benefit that'll do to us:
    UPDATE TABLE1
                     SET mainveh = 'Y'
                 WHERE (comp#,polnum,a8dtef,a8deef,a8dtac,
                        DECODE(everif,'Y',10000,0)+auunit*100+vrcdsq)
                    IN (SELECT comp#,polnum,a8dtef,a8deef,a8dtac,???
                          FROM TABLE1);Your input is greatly appreciated! Thanks!

  • Iphone 4S size is great just improve its performance

    why do apple phones needs to extend its size and forcing its thickness to be much more thin? instead of just improving its performance? I think iPhone 4S design size and thickness is the ideal size for apple handheld phones. people requesting for bigger screen that's why there's an iPad and iPad-mini to meet these demand instead of extending the size of iPhone and to be much more thinner. durability of today's iPhone is gone... even apple's legacy design has gone wrong nowadays because of its bigger size it needs enough space on my pocket.

    Try restoring the iPhone to factory settings. If you are having difficult restoring, put the iPhone into Recovery Mode and see if that then works:
    http://support.apple.com/kb/ht1808
    If not, or if a restore to factory settings does not fix the problem, then your iPhone may have a hardware problem. You can only get the iPhone serviced by Apple in Canada, so you will have to take the iPhone there or send it to someone you know in Canada who can get the iPhone serviced and send it back to you. The only option for getting service in Pakistan would be to pay some unauthorized repair shop to attempt a repair, after which Apple will no longer provide any service even in Canada.
    Regards.

  • Does un-checking "Allow Debuging" in VI properties- execution improves overall application performance?

    Does un-checking "Allow Debuging" in VI properties->execution improves overall application performance?

    > Does un-checking "Allow Debuging" in VI properties->execution improves
    > overall application performance?
    Yes, though it is hard to predict by how much. When debugging is
    enabled, after each node on the diagram there will be a small amount of
    compiled code to test if the VI has a probe, a breakpoint, execution
    hiliting, or the pause button is pressed. The code is quite small,
    about two or three instructions, but if you have twenty nodes in a loop
    and the nodes are doing simple math, these instructions could be 25%
    overhead. For more complex nodes or datatypes, these instructions turn
    into a fraction of a percent.
    Turn it off and measure. If you have other performance problems, read
    the documentation on the profiler and use it to help you find yo
    ur
    bottlenecks.
    Greg McKaskle

  • Does IOS 5.1 improve iPod touch 4g performance?

    Does IOS 5.1 improve iPod touch 4g performance?
    I would consider upgrading it from ios5.0.1 to ios5.1 because ios 5.0.1 performance is terrible.

    I just finished installing 5.1 on my iPod Touch 4g and it is markedly improved. I do still note some of the keyboard slowness (I'm using it right now to type this), but it is much faster overall. In particular, it used to take a long time to unlock if it was playing music, and now there is no lag.
    I've only had it installed for half an hour so far, but I'm already much happier using it than I was previously.

  • Does recompiling procedure improve the database performance???????

    One of my friends working on mssql told me that recreating of procedures could improve the database performance. If you have created the procedure and recreated it after insertion of huge volume of data.
    Is it true. If so how?

    I think so too but he said that in his microsoft certified course told that it could improve the performance.
    He told me that the select statements prevously used uses the old statistic but after recreating it uses the new statistic.

  • Improving TableRowSorter Filter Performance

    Hi, I currently have a TableModel with over 17300 rows of data, which has a TableRowSorter attached to provide sorting and filtering on the JTable. Everything works fine except that filtering the table takes to long, even on a Wndow Vista machine with an Intel Core 2 Duo (3.6ghz processor)
    Is there any known way to improve the filtering performance on TableRowSorter? It should be noted however, that Sorting with the same data does not take as long (at times). It is also much slower when all the necessary bells and whistles or rendering are included.
    Here is an example piece of code:
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.*;
    public class Trial extends JFrame {
        public JTable table;
        public DefaultTableModel model;
        public TableRowSorter sorter;
        public JTextField filterField;
        public Trial() {
            super("Filter Test");
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            Vector<String> cols = new Vector<String>();
                cols.addElement("Column 1");
                cols.addElement("Column 2");
                cols.addElement("Column 3");
                cols.addElement("Column 4");
                cols.addElement("Column 5");
                cols.addElement("Column 6");
            Vector<Vector<Object>> rows = new Vector<Vector<Object>>();
            for(int i = 0; i < 20000; i++) {
                Vector<Object> row = new Vector<Object>();
                    row.addElement("Column 1 Data " + (i+1) );
                    row.addElement("Some Data " + (i+1) );
                    row.addElement("Column 3 Data " + (i+1) );
                    row.addElement("Even More Data " + (i+1) );
                    row.addElement("Column 5 Data " + (i+1) );
                    row.addElement("Please No More Data " + (i+1) );
                rows.addElement( row );
            model = new DefaultTableModel(rows, cols);
            table = new JTable( model );
            table.setRowSorter( new TableRowSorter(model) );
            JScrollPane scr = new JScrollPane(table);
            filterField = new JTextField(20);
            filterField.addCaretListener( new CaretListener() {
                public void caretUpdate(CaretEvent e) {
                    if(table.getRowSorter() == null) return;
                    setCursor( Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR) );
                    String text = filterField.getText();
                    ((DefaultRowSorter)table.getRowSorter()).setRowFilter(RowFilter.regexFilter(".*" + text + ".*"));
                    setCursor( Cursor.getDefaultCursor() );
            JPanel filterPanel = new JPanel( new FlowLayout(FlowLayout.LEFT) );
                filterPanel.add( new JLabel("Filter: ") );
                filterPanel.add( filterField );
            getContentPane().add( filterPanel, BorderLayout.NORTH );
            getContentPane().add( scr, BorderLayout.CENTER);
            pack();
            setLocationRelativeTo(null);
            try {
                 setExtendedState(MAXIMIZED_BOTH);
            } catch(Exception e) {}
            setVisible(true);
        public static void main(String[] args) {
            new Trial();
    }Any ideas as to how performance (or percieved performance) can be improved would gladly be apprieciated.
    ICE

    I came to the conclusion that trying to improve the sort performance of TableRowSorter was almost an impossibilty. So I changed my approach from improvement of the actual sorting code to user perception of the process. And Hello, IndicatorRowSorter. This code will display a small window with the String "Searching" and an icon to indicate progress whiles filtering the table and disposes it onces filtering is complete.
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.border.*;
    import javax.swing.table.*;
    * Provides valuable user feedback for the table filtering operation.
    Executes the sorting algorithm on a different thread so as not to block the EDT
    public class IndicatorRowSorter extends TableRowSorter {
        JTable table;
        JWindow sortProgressWin;
        public IndicatorRowSorter() {
            createSortProgressWindow();
        public IndicatorRowSorter(JTable table) {
            super( table.getModel() );
            this.table = table;
            createSortProgressWindow();
        public void createSortProgressWindow() {
            JLabel progressIndicator = new JLabel("Searching...",
                   new ImageIcon("resources/images/loadArrow.gif"), JLabel.LEFT );
                progressIndicator.setBackground(Color.white);
                progressIndicator.setOpaque(true);
                progressIndicator.setBorder( BorderFactory.createEmptyBorder(2,2,2,2) );
            sortProgressWin = new JWindow();
            sortProgressWin.getContentPane().add(progressIndicator);
            sortProgressWin.pack();
            sortProgressWin.setLocationRelativeTo(table);
        public void sort() {
            sortProgressWin.setVisible(true);
            Thread t = new Thread( new Runnable() {
                public void run() {
                    try {
                        IndicatorRowSorter.super.sort();                   
                        sortProgressWin.setVisible(false);
                    } catch(Exception e) {}
            t.start();
    }I got the idea from looking at some of the example from JDNC Incubator project down at java.net. Atleast with this solution, the crappy performance still remains, but the user percieves this as serious data manipulation.
    To get yourself a nice load progress icon, go down over to www.ajaxload.info. You can then replace the reference to the image used in the code above.
    To use it, just a single line of code is required.
    table.setRowSorter( new IndicatorRowSorter(table) );You can test this out with the Trial example posted above.
    ICE

  • How to improve the OpenGL performance for AE

    I upgraded my display card from Nvidia 8600GT to GTX260+ hoping to have a better and smoother scrubbing of the timeline in AE. But to my disappointment, there is absolutely no improvement at all. I checked the OpenGL benchmark of the 2 cards with the Cinebench software and the results are almost the same for the 2 cards.
    I wonder why the GTX260+ costs as much as about 3 times the cost of the 8600GT, but the OpenGL performance is almost the same.
    Any idea how to improve the OpenGL performance please ?
    Regards

    juskocf wrote:
    But to scrub the timeline smoothly, I think OpenGL plays an important role.
    No, not necessarily. General things like footage I/O performance can be much more critical in that case. Generally speaking, AE only uses OpenGL in 2 specific situations: When navigating 3D space and with hardware-accelerated effects. It doesn't do so consistently, though, as any non-accelerated function, such as a specific effect or exhaustion of the avialbale resources can negate that.
    juskocf wrote:
    Also, some 3D plugins such as Boris Continuum 6 need OpenGL to smoothly maneuver the 3D objects.  Just wonder why the OpenGL Performance of such an expensive card should be so weak.
    It's not the card, it's what the card does. See my above comment. Specific to the Boris stuff: Geometry manipulation is far simpler than pixel shaders. Most cards will allow you to manipulate bazillions of polygons - as long as they are untextured and only use simple shading, you will not see any impact on performance. Things get dicy, when it needs to use textures and load those textures into the graphics card's memory. Either loading those textures takes longer than the shading calculations, or, if you use multitexturing (different images combined with transparencies or blendmodes), you'll at some point reach the maximum. It's really a mixed bag. Ultimately the root of all evil is, that AE is not build around OpenGL because at the time it didn't exist, but rather the other way around OpenGL was plugged-on at some point and now there is a number of situations where one gets in the way of the other...
    Mylenium

  • N96 camera performance

    Hello all. I have recently updated my software to vers30 via ways which can not be discussed on these boards. But I still feel let down by the poor camera performance on the phone. The pictures I have taken look like they are from a VGA camera. Can anyone advise me on how to improve this,Are there any setting I need to change at all to maximize the 5mp camera or shall I just give up and realizes that nokia have produce yet another poor camera phone?
    Message Edited by totoanon on 02-Jan-2010 12:28 PM
    I dont pretend to know everything like some people on these boards i am just trying to help. Its not all about the kudos.

    bump
    I dont pretend to know everything like some people on these boards i am just trying to help. Its not all about the kudos.

  • To improve the system performance of the code

    Please help me to improve the system performance of the following program. its very urgent
    report zsdr0125
              no standard page heading
    *         LINE-SIZE  170                                   " SIR 061880
              line-size  210                                   " SIR 061880
              line-count 58
              message-id zz.
    ** Report header ******************************************************
    ** Report name: Activity Costing Report
    ** Report id:   RO-01148
    ** Designed/Coded. Tori Chandler. Reporting Team.
    ** Date: March 01, 2000.
    ** Original SIR:  016113
    ** Application Area: V - Sales & Distribution  (OTC)
    ** Correction/Transport:  D10K951579
    ** Description:  It is normal business practice for logistics
    **               operations to charge business units for the activity
    **               incurred on their behalf.  This is consistent with
    **               activity based costing principles between BU and
    **               shared resources.  The activities involved are picking
    **               storage, shipping and receiving.  The purpose of this
    **               report is to provide data for the first 3.
    **      QRB2 - 03/13/2000 - Tracy, Antoine, Christian, Tori
    ** History:
    * 06/14/2001 SIR 032383 CTS                             Antoine Dailly
    * A plant (WERKS) can have several Distrib points (VSTEL)
    * SIGN = 032383
    * Modification History:
    * Date       Modified by  SIR       CTS          Description
    *11/14/2001  J.CAMPION   034606   D10K979189  Logistics Activity report
    * Logistics Activity reports
    * We added fields ship to customer and country and we also make another
    * total
    * QRB2 Tracy L. Obrien
    * Modification History:
    * Date       Modified by  SIR       CTS          Description
    *11/14/2001  J.CAMPION   37838   D10K982890      Select only
    *                                                material type HALB
    *06/12/2002  T OBrien    38784   D10K988181
    *        Allow option to get material weight from Master data or
    *        from the delivery.
    *  Modified by    SIR       CTS                         Date
    *  Jim Harwood    42730     D10K993119               10 Oct 2002
    * Description:  Code amended to default the Goods Issue Date range to
    * the previous month.  Also amended to print out the Select Options.
    *  Modified by    SIR       CTS                         Date
    *  Jim Harwood    44381     D10K994598               18 Nov 2002
    * Description:  Correct date range processing.  APPEND statement added
    * so that record is added ot internal table S_WADAT.  Also S_VKORG
    * removed as it was NO DISPLAY and nothing was assigned to it. It's use
    * in an SQL call may be causing the wrong optimization.
    *  Modified by    SIR       CTS                         Date
    *  Tori Chandler  45567     D10K995875               03 Jan 2003
    * Description:  Correct reporting of weights for non-pickable items
    *    when the Material Master Data radiobutton is selected. Also found
    *    from SIR 37838, that material type is hardcoded on the LIPS.  I
    *    created a new select option and the person needing the report
    *    can control if they want only HALB or all line items.  Also,
    *    because of this the delivery weight is obtain from header,
    *    changing to accumulate from LIPS to match which lines are selected
    *  QRB2:  1/15/2003:  Eileen, Jerome and Tori
    *{   INSERT         D11K901833                                        1
    *  Modified by    Sir             CTS                    Date
    *  Sue Kastan    48712/054042    D11K901833         28 Aug, 2003
    *  Fix overcounting of records from LIPS
    *}   INSERT
    *  Modified by    SIR       CTS                         Date          *
    *  Vijay Andea   061880    D11K918628               04/20/2006        *
    *                          D11K946194                                 *
    *  Description: Enhence ZSDR0125 Activity Cost Driver Report to allow *
    *  Analysis by Product Groupings.                                     *
    *}   INSERT
    *  Modified by            SIR       CTS                    Date       *
    *  Prakash Arunachalam  091510   D11K950288             09/26/2006    *
    *  Description: Correct Activity Cost report  - material weight       *
    *  calculation                                                        *
    *  Modified by            SIR       CTS                    Date       *
    *  Murali Krishna        301978    D50K903293            01/20/2008
    *  Description: Improve the system performance of this report and
    *               clean-up of code into various form routine
    * Table declaration.
    tables: likp,    " SD Document: Delivery Header Data
            lips,    " SD document: Delivery: Item data
            vepo,    " SD Document: Shipping Unit Item (Content)
            vekp,    " SD Document: Shipping Unit Header
            knvv,    " Customer Master Sales Data
            kna1,    " General Data in Customer Master            SIR 34606
            marm,    " Units of Measure
            mara,    " Material Master: General Data              SIR 38784
            t001l,   " Stge locs
            t001k,   " Valuation area
            tvswz,   " Shipping Points per Plant
            t134,    " Material types
            z0234.   " Alternative Unit of Measure
    *** Selection screen.
    selection-screen begin of block b1 with frame title text-001.
    parameters:     p_werks  like t001l-werks obligatory memory id wrk.
    select-options: s_lgort  for  t001l-lgort,
    *               S_VKORG  FOR  TVKO-VKORG NO-DISPLAY ," SIR 34606, 42730
    *               S_WADAT  FOR  LIKP-WADAT_IST OBLIGATORY NO-EXTENSION,
                    s_wadat  for  likp-wadat_ist no-extension,  " SIR 42730
                    s_mtart  for  t134-mtart,                   " SIR 45567
                    s_lfart  for  likp-lfart no-display no intervals.
    selection-screen skip 2.
    selection-screen comment 1(21) text-002.                    " SIR 38784
    parameters:     p_delwt  radiobutton group grp1,            " SIR 38784
                    p_mstwt  radiobutton group grp1.            " SIR 38784
    *--------------------------------------------------*Start of SIR 061880
    selection-screen skip 2.
    selection-screen comment 1(21) text-006.
    parameters:     p_voldl radiobutton group 2,     " Volume from Delivery
                    p_volmd radiobutton group 2.  " Volume from Master Data
    *-----------------------------------------------------End of SIR 061880
    selection-screen end of block b1.
    *--------------------------------------------------*Start of SIR 061880
    selection-screen begin of block b2 with frame title text-007.
    select-options: s_cbuun for knvv-kvgr1 no intervals,      " Customer BU
                    s_mbuun for mara-prdha+1(2) no intervals, " Material BU
                    s_lobus for mara-prdha+3(3) no intervals,         " LOB
                    s_pac1  for mara-prdha+6(3) no intervals.   " PAC1
    selection-screen end of block b2.
    *----------------------------------------------------*End of SIR 061880
    *---Type Declaration for Internal Tables------------------------------*
    types: begin of t_likp,
              vbeln      like likp-vbeln,  " delivery
              vstel      like likp-vstel,  " shipping point
              lfart      like likp-lfart,  " delivery type
              vkorg      like likp-vkorg,  " Sales organization
              kunag      like likp-kunag,  " sold-to party
              kunnr      like likp-kunnr,  " ship to party        SIR 34606
              btgew      like likp-btgew,  " Delivery weight
              gewei      like likp-gewei,  " Unit of weight
              anzpk      like likp-anzpk,  " Number of Packages   SIR 61880
              volum      like likp-volum,  " Delivery Volume      SIR 61880
              voleh      like likp-voleh,  " Volume Unit          SIR 61880
              vtwiv      like likp-vtwiv,  " Distribution channel
              spaiv      like likp-spaiv,  " Division
              wadat_ist  like likp-wadat_ist,  " actual goods issue date
              del_flg(1) type c,                            "(+) SIR 301978
           end of t_likp.
    types: begin of t_lips,
              vbeln      like lips-vbeln,  " delivery
              posnr      like lips-posnr,  " delivery line
              matnr      like lips-matnr,  " material
              lgort      like lips-lgort,  " storage location
              prodh      like lips-prodh,  " product hierarchy
              meins      like lips-meins,  " base UoM
              brgew      like lips-brgew,  " Material weight
              gewei      like lips-gewei,  " Unit of weight
              volum      like lips-volum,  " Material Volume      SIR 61880
              voleh      like lips-voleh,  " Volume Unit          SIR 61880
              lgmng      like lips-lgmng,  " actual delivery quantity
              komkz      like lips-komkz,  " Indicator for picking control
              mtart      like lips-mtart,  " Material type      " SIR 37838
              del_flg(1) type c,                            "(+) SIR 301978
           end of t_lips.
    types: begin of t_vepo,
              venum      like vepo-venum,  " shipping unit number
              vbeln      like vepo-vbeln,  " delivery
           end of t_vepo.
    types: begin of t_vekp,
              venum      like vekp-venum,  " shipping unit number
              brgew      like vekp-brgew,  " actual weight
              gewei_max  like vekp-gewei_max,  " unit of weight
              vpobjkey   like vekp-vpobjkey,   " key for assigned object
           end of t_vekp.
    types: begin of t_knvv,
              kunnr      like knvv-kunnr,  " customer number
              ktgrd      like knvv-ktgrd,  " acct assign group
              kvgr1      like knvv-kvgr1,  " customer group 1
           end of t_knvv.
    types: begin of t_kna1,                                     " SIR 34606
              kunnr      like kna1-kunnr,  " customer number    " SIR 34606
              land1      like kna1-land1,  " contry             " SIR 34606
           end of t_kna1.                                       " SIR 34606
    types: begin of t_marm,
              matnr      like marm-matnr,  " material
              meinh      like marm-meinh,  " Alt unit of measure     032383
              umrez      like marm-umrez,  " numerator
              umren      like marm-umren,  " denominator
           end of t_marm.
    types: begin of t_mara,                                     " SIR 38784
              matnr      like mara-matnr,  " material           " SIR 38784
              prdha      like mara-prdha,  " Product Hierarchy  " SIR 61880
              brgew      like lips-brgew,  " gross weight       " SIR 38784
              gewei      like mara-gewei,  " Unit of weight     " SIR 38784
              volum      like mara-volum,  " Volume             " SIR 61880
              voleh      like mara-voleh,  " Volume Unit        " SIR 61880
              del_flg(1) type c,                            "(+) SIR 301978
           end of t_mara.                                       " SIR 38784
    types: begin of t_tvswz,
              vstel      like tvswz-vstel, " shipping point
           end of t_tvswz.
    types: begin of t_z0234,                                        "032383
              vstel      like z0234-vstel, " shipping point          032383
              zpaluom    like z0234-zpaluom," pallet unit of measure 032383
              zcsuom     like z0234-zcsuom," Case unit of measure    032383
           end of t_z0234.                                          "032383
    types: begin of t_output_dt,
              wadat_ist    like likp-wadat_ist, " Goods issue date
              ktgrd        like knvv-ktgrd," acct assign group
              bu           like knvv-kvgr1," business unit
              kunnr        like kna1-kunnr," ship to location     SIR 34606
              land1        like kna1-land1," ship to location     SIR 34606
              d_btgew      like likp-btgew," delivery weight
              m_brgew      like lips-brgew," material weight
              a_brgew      like vekp-brgew," actual weight of ship unit
              num_del      type i,         " counter of deliveries
              num_pallets  type i,         " number of pallets
              num_cases    type i,         " number of cases
              num_loose    type i,         " loose quantity
              num_delln    type i,         " counter of delivery lines
    *         packages     like likp-anzpk," Number of Packages " SIR 61880
              packages(3)  type p,         " Number of Packages " SIR 61880
              volume       like lips-volum," Volume             " SIR 61880
              lobus(3)     type c,         " Line of Business   " SIR 61880
              pac1(3)      type c,                    " PAC1    " SIR 61880
           end of t_output_dt.
    types: begin of t_output_ag,
              ktgrd        like knvv-ktgrd," acct assign group
              bu           like knvv-kvgr1," business unit
              land1        like kna1-land1," country              SIR 34606
              d_btgew      like likp-btgew," delivery weight
              m_brgew      like lips-brgew," material weight
              a_brgew      like vekp-brgew," actual weight of ship unit
              num_del      type i,         " counter of deliveries
              num_pallets  type i,         " number of pallets
              num_cases    type i,         " number of cases
              num_loose    type i,         " loose quantity
              num_delln    type i,         " counter of delivery lines
    *         packages     like likp-anzpk," Number of Packages " SIR 61880
              packages(3)  type p,         " Number of Packages " SIR 61880
              volume       like lips-volum," Volume             " SIR 61880
              lobus(3)     type c,         " Line of Business   " SIR 61880
              pac1(3)      type c,                   " PAC1     " SIR 61880
           end of t_output_ag.
    types: begin of t_output_gs,                                " SIR 34606
              ktgrd        like knvv-ktgrd," acct assign group  " SIR 34606
              bu           like knvv-kvgr1," business unit      " SIR 34606
              d_btgew      like likp-btgew," delivery weight    " SIR 34606
              m_brgew      like lips-brgew," material weight    " SIR 34606
              a_brgew      like vekp-brgew," actual weight      " SIR 34606
              num_del      type i,         " counter of deliv   " SIR 34606
              num_pallets  type i,         " number of pallets  " SIR 34606
              num_cases    type i,         " number of cases    " SIR 34606
              num_loose    type i,         " loose quantity     " SIR 34606
              num_delln    type i,         " counter of deliv   " SIR 34606
    *         packages     like likp-anzpk, " Number of Package " SIR 61880
              packages(3)  type p,          " Number of Packages" SIR 61880
              volume       like lips-volum, " Volume            " SIR 61880
              lobus(3)     type c,          " Line of Business  " SIR 61880
              pac1(3)      type c,           " PAC1             " SIR 61880
           end of t_output_gs.                                  " SIR 34606
    *-------------------------------------------------* Begin of SIR 061880
    * Material Type
    types: begin of t_mtart,
           mtart like t134-mtart,                           " Material Type
           end of t_mtart.
    * Customer Business Unit.
    types: begin of t_kvgr1,
           kvgr1 like knvv-kvgr1,                        " Customer Group 1
           end of t_kvgr1.
    * sales Organization.
    types: begin of t_lgort,
           lgort like t001l-lgort,                     " Sales Organization
           end of t_lgort.
    *                                                   Begin of SIR 301978
    *      Header: Material Document
    types: begin of t_mkpf,
             vgart    type mkpf-vgart,
             xblnr    type likp-vbeln,
           end   of t_mkpf.
    *                                                     End of SIR 301978
    *---------------------------------------------------* End of SIR 061880
    *---Internal Tables---------------------------------------------------*
    data:  i_likp        type  t_likp occurs 0 with header line,
           i_temp_likp   type  t_likp occurs 0 with header line,
           v_likp        type  t_likp,
           i_lips        type  t_lips occurs 0 with header line,
           i_temp_lips   type  t_lips occurs 0 with header line,
           v_lips        type  t_lips,
           i_vepo        type  t_vepo occurs 0,
    *      V_VEPO        TYPE  T_VEPO,
           i_vekp        type  t_vekp occurs 0,
           v_vekp        type  t_vekp,
           i_knvv        type  t_knvv occurs 0 with header line,
           v_knvv        type  t_knvv,
           i_kna1        type  t_kna1 occurs 0,                 " SIR 34606
           v_kna1        type  t_kna1,                          " SIR 34606
           i_z0234       type  t_z0234 occurs 0,                "    032383
           v_z0234       type  t_z0234,                         "    032383
           i_z0234_uom   type  t_z0234 occurs 0,                "    032383
           v_z0234_uom   type  t_z0234,                         "    032383
           i_marm        type  t_marm occurs 0 with header line," SIR 61880
           i_marm_pallet type  t_marm occurs 0 with header line,
           v_marm_pallet type  t_marm,
           i_marm_case   type  t_marm occurs 0 with header line,
           v_marm_case   type  t_marm,
    *-------------------------------------------------* Begin of SIR 061880
    *      I_MARA        TYPE  T_MARA OCCURS 0,                 " SIR 38784
           i_mara1       type  t_mara  occurs 0 with header line,
           i_mtart       type  t_mtart occurs 0 with header line,
           i_kvgr1       type  t_kvgr1 occurs 0 with header line,
           i_lgort       type  t_lgort occurs 0 with header line,
           v_kvgr1       type  t_kvgr1,
    *---------------------------------------------------* End of SIR 061880
           v_mara        type  t_mara,                          " SIR 38784
           i_tvswz       type  t_tvswz occurs 0,
           v_tvswz       type  t_tvswz,                     "(+) SIR 301978
           i_output_dt   type  t_output_dt occurs 0,
           v_output_dt   type  t_output_dt,
           i_output_ag   type  t_output_ag occurs 0,
           v_output_ag   type  t_output_ag,
           i_output_gs   type  t_output_gs occurs 0,            " SIR 34606
           v_output_gs   type  t_output_gs,                     " SIR 34606
           i_mkpf        type  table of t_mkpf with header line."SIR 301978
    *** Data Declarations *
    data:  v_page(3)        type c,                          " Page Counter
           v_comp           like t001k-bukrs,       " zbsn0001 company code
           v_title(24)      type c,                 " zbsn0001 report title
           v_rpttyp         type c,                           " report type
           v_ok             type c,             " control While... endwhile
           v_diff_date      type p,                " days between selection
           v_werks          like t001l-werks,                       " plant
    *      v_z0234_zpaluom  like z0234-zpaluom,  " Pallet Unit of Measure
    *      v_z0234_zcsuom   like z0234-zcsuom,   " Case Unit of Measure
           v_palwto         type p decimals 6,                 " SIR 091510
    *       "like likp-btgew,       " Weight after conversion
           v_vekp_tabix     like sy-tabix,                  " index on read
           v_vekp_sum_brgew like vekp-brgew,                " actual weight
           v_pallet_qty     like lips-lgmng,        " calculated pallet qty
           v_pallet_integer type i,                       " true pallet qty
           v_case_qty       like lips-lgmng,          " calculated case qty
           v_case_integer   type i,                         " true case qty
           v_qty_not_pallets like lips-lgmng,                  " calculated
           v_num_pallets    like lips-lgmng,    " calculated nbr of pallets
           v_num_pallets_int type i,                  " true nbr of pallets
           v_num_cases      like lips-lgmng,      " calculated nbr of cases
           v_num_cases_int  type i,                     " true nbr of cases
           v_total_case_qty like lips-lgmng,                " case quantity
           v_loose_qty      type i,             " calculated loose quantity
    *-------------------------------------------------* Begin of SIR 061880
           v_volume         like lips-volum,      " Volume After Convertion
           v_cbuun          like knvv-kvgr1,                  " Customer BU
           v_mbuun          like knvv-kvgr1,                  " Material BU
           v_lobus(3)       type c,                      " Line of Business
           v_pac1(3)        type c,                                  " PAC1
           v_flag           type c.            " Flag Indicator for No Data
    *---------------------------------------------------* End of SIR 061880
    *                                                   Begin of SIR 301978
    * Ranges
    ranges : r_vstel for tvswz-vstel.
    *                                                     End of SIR 301978
    * Constants
    data:  c_uom(3)        type c value 'KG'.    " Kilogram Unit of Meas.
    data : c_vom like mara-voleh value 'M3'.   " Metter Cube.  " SIR 061880
    constants : c_wl(2) type c value 'WL'.                  "(+) SIR 301978
    * Initialization.
    initialization.
      s_lfart-sign   = 'I'.
      s_lfart-option = 'EQ'.
      s_lfart-low    = 'LF  '.
      append s_lfart.
      s_lfart-low    = 'NL  '.
      append s_lfart.
      s_lfart-low    = 'NLCC'.
      append s_lfart.
      s_lfart-low    = 'ZLFI'.
      append s_lfart.
    * AT SELECTION-SCREEN.
    at selection-screen.
    * SIR 42730 - If no Goods Issue Date has been specified in the
    *             Select Options set the range to the previous month.
      if s_wadat-low is initial.
        s_wadat-sign      = 'I'.
        s_wadat-option    = 'BT'.
        s_wadat-high      = sy-datum.              " Today's date
        s_wadat-high+6(2) = '01'.                  " First of this month
        s_wadat-high      = s_wadat-high - 1.      " End of last month
        s_wadat-low       = s_wadat-high.          " End of last month
        s_wadat-low+6(2)  = '01'.                  " First of last month
        append s_wadat.
      endif.     " SIR 42730 IF S_WADAT-LOW IS INITIAL.
      clear v_werks.                                        "(+) SIR 301978
    * Validate Plant/Storage Location from selection screen
      select werks up to 1 rows into v_werks from t001l
            where werks =  p_werks  and
                  lgort in s_lgort.
      endselect.
      if sy-subrc ne 0.
        message e045 with text-e01.
      endif.
    * Validate Storage Location
      if not s_lgort[] is initial.
        select lgort from t001l into table i_lgort where lgort in s_lgort.
        if sy-subrc ne 0.
          message e045 with text-e09.
        endif.
      endif.
    * Validate date range.  do not allow more that 31 days
      if not s_wadat-high is initial.
        v_diff_date = s_wadat-high - s_wadat-low.
        if v_diff_date >= '31'.
          message e045 with text-e02.
        endif.
      endif.
    *-------------------------------------------------* Begin of SIR 061880
    * Validation for Material Type in Selection Screen
      if not s_mtart[] is initial.
        select mtart from t134 into table i_mtart where mtart in s_mtart.
        if sy-subrc ne 0.
          message e045 with text-e07.
        endif.
      endif.
    at selection-screen on block b2.
    * Validation for Material Business Unit and Customer Business Unit.
      if s_cbuun-low is not initial and s_mbuun-low is not initial.
        message e045 with text-e05.
      endif.
    * Validation for Possible combinations of Material BU, Line of Business
    * and PAC1
      if ( s_mbuun-low is not initial and s_lobus-low is not initial
                                    and s_pac1-low is not initial )
      or ( s_mbuun-low is not initial and s_lobus-low is not initial )
      or ( s_lobus-low is not initial and s_pac1-low is not initial )
      or ( s_mbuun-low is not initial and s_pac1-low is not initial ).
        message e045 with text-e06.
      endif.
    * Validation for Customer Business Unit.
      if not s_cbuun[] is initial.
        select kvgr1 from tvv1 into table i_kvgr1 where kvgr1 in s_cbuun.
        if sy-subrc ne 0.
          message e045 with text-e08.
        endif.
    *    free: i_kvgr1.
      endif.
    *---------------------------------------------------- End of SIR 061880
    * TOP-OF-PAGE
    * Top of the page routine to print the headers and columns
    top-of-page.
      format color col_heading on.
      if v_rpttyp = 'D'.
        v_title = text-h01.
      else.
        v_title = text-h02.
      endif.
      perform zbsn0001_standard_header     " Standard Report Heading Form
               using v_comp v_title 'U' v_page.
      skip.
      if v_rpttyp = 'D'.
        perform write_dtlvl_headings.
      else.
        perform write_aglvl_headings.
      endif.
    *       FORM WRITE_DTLVL_HEADINGS                                     *
    *   for date detail level, print the column headers                   *
    form write_dtlvl_headings.
      write: /001 text-h03,                " Acct
              038 text-h04,                " ------ P I C K I N G ------
              105 text-h05,                " ----- S H I P P I N G -----
             /001 text-h06,                " Group
              007 text-h07,                " Date
              017 text-h08,                " BU
              021 text-h17,                " ship to party            34606
              030 text-h18,                " country
              039 text-h09,                " Pallets
              057 text-h10,                " Cases
              075 text-h11,                " Loose
              093 text-h12,                " Lines
              105 text-h13,                " Material Kg
              124 text-h16,                " Delivery Kg
              143 text-h14,                " Actual Kg
              161 text-h15,                " Deliveries
    *----------------------------------------------------Start of SIR 61880
              173 text-h20,                " Packages
              189 text-h21,                " Volume
              201 text-h22,                " LOB
              207 text-h23.                " PAC1
    *-----------------------------------------------------*End of SIR 61880
      skip.
    endform.                               " end of write_dtlvl_headings.
    *       FORM WRITE_AGLVL_HEADINGS                                     *
    *      for account group detail level, print the column headers       *
    form write_aglvl_headings.
      write: /001 text-h03,                " Acct
              038 text-h04,                " ------ P I C K I N G ------
              105 text-h05,                " ----- S H I P P I N G -----
             /001 text-h06,                " Group
              017 text-h08,                " BU
              030 text-h18,                " country              SIR 34606
              039 text-h09,                " Pallets
              057 text-h10,                " Cases
              075 text-h11,                " Loose
              093 text-h12,                " Lines
              105 text-h13,                " Material Kg
              124 text-h16,                " Delivery Kg
              143 text-h14,                " Actual Kg
              161 text-h15,                " Deliveries
    *---------------------------------------------------*Start of SIR 61880
              173 text-h20,                " Packages
              189 text-h21,                " Volume
              201 text-h22,                " LOB
              207 text-h23.                " PAC1
    *-----------------------------------------------------*End of SIR 61880
      skip.
    endform.                               " end of write_aglvl_headings.
    *-------------------------- SUBBROUTINES -----------------------------*
    include zbsn0001.      " Include to print all Standard Report Titles
    include zsdn0004.      " Print the Select Options
    *** MAIN SELECTION.                                                   *
    start-of-selection.
      refresh:  i_likp, i_temp_likp, i_lips, i_temp_lips, i_vepo,
                i_vekp, i_knvv, i_marm_pallet, i_marm_case, i_tvswz,
                i_output_dt, i_output_ag, i_mara1.
      clear:    v_likp, v_lips, v_vekp, v_knvv, v_mara,
                v_marm_pallet, v_marm_case, v_output_dt, v_output_ag.
      v_rpttyp = 'D'.
    * SIR 42730 - Echo the Select Options to the output listing and print
    *             the Goods Issue Date range being used.
      write: /,/.     " SIR 43730 - Skip a couple of lines to centre it.
      perform zsdn0004_print_select_options using sy-cprog ' '.
      if s_wadat-high is initial.
        write: /,/, text-003, 34 s_wadat-low.
      else.
        write: /,/, text-003, 34 s_wadat-low, 44 text-004, 47 s_wadat-high.
      endif.
      new-page.
    * Main Processing.                                                    *
      perform get_data.
      if not i_lips[] is initial.
        perform create_output.
      endif.
    * END-OF-SELECTION
    end-of-selection.
    *-------------------------------------------------* Start of SIR 061880
    *   PERFORM WRITE_REPORT.
      if not i_output_dt[] is initial and not i_output_ag[] is initial and
                                          not i_output_gs[] is initial.
        perform write_report.
      else.
        skip 2.
        write:/ text-e03.
        skip 2.
        uline.
        clear: v_flag.
      endif.
    *---------------------------------------------------* End of SIR 061880
    *       FORM GET_DATA                                                 *
    * build all of the internal tables needed for the report              *
    * selects on t001k, z0234, likp, lips, vepo, vekp, knvv & marm, mara  *
    form get_data.
      perform get_data_t001k.                                  " SIR 301978
      perform get_data_tvswz.                                  " SIR 301978
      if sy-subrc = 0.                     " Build shipping point range
        perform get_data_Z0234.                                " SIR 301978
        if sy-subrc ne 0.
          v_flag = 'X'.
    *      stop.
        else.
          sort i_z0234 by vstel.                                   " 032383
        endif.
    *                                                  Begin of  SIR 301978
    *   The data retrievalfrom LIKP has been modified for performance
    *   reasons
        perform get_data_mkpf.                                 " SIR 301978
        if sy-subrc eq 0.
    *     Deleting data other than Goods issued for delivery
          delete i_mkpf where vgart ne c_wl.
          sort i_mkpf by xblnr.
        endif.
    *   Deleting the data from the internal table i_likp by comparing
    *   shipping point
        r_vstel-sign = 'I'.
        r_vstel-option = 'EQ'.
        clear : v_tvswz.
        loop at i_tvswz into v_tvswz.
          r_vstel-low = v_tvswz-vstel.
          append r_vstel.
        endloop.
        if not i_mkpf[] is initial.
          perform get_data_likp.                             " SIR 301978
        endif.
        if sy-subrc = 0.
          delete i_likp where not lfart in s_lfart.
    *                                                  End    of SIR 301978
    *     Get data for the delivery lines
          if not i_likp[] is initial.
            perform get_data_lips.                         " SIR 301978
    *                                                  Begin of SIR 301978
            if i_lips[] is initial.
              v_flag = 'X'.
              message i089 with text-i02.
              leave list-processing.
            endif.                    " Return code for LIPS select
    *                                                     End of SIR 301978
          endif.
    *-------------------------------------------------* Begin of SIR 061880
    *     Get Data From MARA (Material Master) to Read Material Weight and
    *     Material Voluem from Master Data.
          if not i_lips[] is initial.
    *                                                   Begin of SIR 301978
    *       Delete the duplicate material from delivery item table
            i_temp_lips[] = i_lips[].
            sort i_temp_lips by matnr.
            delete adjacent duplicates from i_temp_lips comparing matnr.
            perform get_data_mara.                         " SIR 301978
            if sy-subrc = 0.
              sort i_mara1 by matnr.
              clear i_temp_lips.
              refresh i_temp_lips.
    *                                                     End of SIR 301978
            else.
              v_flag = 'X'.
              message i089 with text-i01.
              leave list-processing.
            endif.
          endif.
    *     Filter I_LIPS and I_MARA1 When Either material BU or Line of
    *     Business (LOB) or PAC1 are not left Balnk
          perform filter_data_for_prdha.
    *     Get data for the sold-to customer
          perform i_knvv_fill_data.
    *    Filter I_LIKP & I_LIPS & I_MARA for Cust-BU, When Cust-Bu is not
    *    left Blank.
          perform filter_likp_lips_mara_custbu.
    *---------------------------------------------------- End of SIR 061880
    *-------------------------------------------------* Begin of SIR 034606
    *     Get data for the ship to party
          i_temp_likp[]  = i_likp[].
          sort i_temp_likp by kunnr.
          delete adjacent duplicates from i_temp_likp comparing kunnr.
          perform get_data_kna1.                             " SIR 301978
          if sy-subrc = 0.
            sort i_kna1 by kunnr.
          endif.
    *---------------------------------------------------* End of SIR 034606
        else.
          v_flag = 'X'.
          message i089 with text-i04.
          leave list-processing.
        endif.                               " return code to LIKP select
    *    endif.                                                " SIR 061880
        free: i_temp_likp.
      endif.                               " return code for TVSWZ select
    * Process table LIPS
      if not i_lips[] is initial.
        i_temp_lips[] = i_lips[].
        sort i_temp_lips by vbeln.
        delete adjacent duplicates from i_temp_lips comparing vbeln.
    *   Get actual weight
        perform get_data_vepo.                                 " SIR 301978
        if sy-subrc = 0.
          sort i_vepo by venum.
          delete adjacent duplicates from i_vepo comparing venum.
          perform get_data_vekp.                               " SIR 301978
          sort i_vekp by vpobjkey.
        endif.
        free:  i_vepo, i_temp_lips.
        i_temp_lips[] = i_lips[].
        sort i_temp_lips by matnr.
        delete adjacent duplicates from i_temp_lips comparing matnr.
    *   Get Units of Measure for Material
        perform read_data_from_marm.                           " SIR 061880
    *                                                   Begin of SIR 032383
        i_z0234_uom = i_z0234.
        sort i_z0234_uom by zpaluom.
        delete adjacent duplicates from i_z0234_uom comparing zpaluom.
    *                                                   End   of SIR 032383
        clear i_marm_pallet.                                   " SIR 061880
        refresh  i_marm_pallet.                                " SIR 061880
        loop at i_z0234_uom into v_z0234_uom.             "LOOP Z0234 032383
    *-------------------------------------------------* Begin of SIR 061880
    *     Get Alternative Unit of Measure for Pallets
          perform i_marm_pallet_fill.
        endloop.                                      "ENDLOOP Z0234 032383
    ** get alternative UoM for pallets
    *      SELECT MATNR                     " material
    *             MEINH                     " Alt unit of measure  " 032383
    *             UMREZ                     " numerator
    *             UMREN                     " denominator
    **     into table i_marm_pallet                                " 032383
    *      APPENDING TABLE I_MARM_PALLET                            "032383
    *      FROM MARM
    *      FOR ALL ENTRIES IN I_TEMP_LIPS
    *      WHERE MATNR = I_TEMP_LIPS-MATNR  AND
    **           meinh = v_z0234_zpaluom.                          " 032383
    *            MEINH = V_Z0234_UOM-ZPALUOM.                      " 032383
    *---------------------------------------------------* End of SIR 061880
        sort i_marm_pallet by matnr meinh.
        free i_z0234_uom.                                           "032383
        i_z0234_uom = i_z0234.                                      "032383
        sort i_z0234_uom by zcsuom.                                 "032383
        delete adjacent duplicates from i_z0234_uom comparing zcsuom."32383
        clear i_marm_case.                                     " SIR 061880
        refresh i_marm_case.                                   " SIR 061880
        loop at i_z0234_uom into v_z0234_uom.            "LOOP Z0234 032383
    *-------------------------------------------------* Begin of SIR 061880
    *     Get Alternative Unit of Measure for Cases
          perform i_marm_case_fill.
        endloop.                                      "ENDLOOP Z0234 032383
    *---------------------------------------------------* End of SIR 061880
        sort i_marm_case by matnr meinh.
      else.
        v_flag = 'X'.
        message i089 with text-i02.
    *      leave list-processing.
      endif.                               " table LIPS is empty
    endform.                               " get_data
    *       FORM CREATE_OUTPUT                                            *
    * process internal table LIPS, for each delivery/delivery lines create*
    * an output record and collect into i_output internal table.  Fields  *
    * used for header are goods issue date, acct assign, BU for customer, *
    * total weight, total weight for shipping unit and count of           *
    * deliveries, the remaining fields will have a value of zero for the  *
    * collect.  For each delivery line, fields used are goods issue date, *
    * acct assign, BU for material, number of pallets, number of cases,   *
    * loose quantity and number of delivery lines.  The remaining header  *
    * fiels will be zero for the collect.                                 *
    form create_output.
    *-------------------------------------------------* Begin of SIR 061880
      sort i_mara1 by matnr.
      sort i_lips by vbeln posnr matnr.
      sort i_likp by vbeln.
      sort i_z0234 by vstel.
      sort i_knvv by kunnr.
      sort i_kna1 by kunnr.
      sort i_vekp by vpobjkey.
      sort i_marm_pallet by matnr meinh.
      sort i_marm_case by matnr meinh.
    * LOOP AT I_LIPS INTO V_LIPS.
      loop at i_lips.
        clear v_lips.
        v_lips = i_lips.
    *---------------------------------------------------* End of SIR 061880
        at new vbeln.
          perform collect_header_data.
        endat.
        if not v_lips-komkz is initial.                         " SIR 45567
          perform collect_item_data.
        endif.                                                  " SIR 45567
      endloop.
    endform.                               " create_output
    *       FORM COLLECT_HEADER_DATA                                      *
    * Fields used for header are goods issue date, acct assign,           *
    * BU for customer, total weight, total weight for shipping unit       *
    * and count ofdeliveries, the remaining fields will have a value of   *
    * zero for the collect.                                               *
    form collect_header_data.
      clear:  v_likp, v_knvv, v_vekp, v_vekp_sum_brgew.
      v_ok = 'Y'.
      read table i_likp into v_likp with key vbeln = v_lips-vbeln
                                                   binary search.
      if sy-subrc = 0.                                         " SIR 061880
        clear v_z0234.                                      "(+) SIR 301978
        read table i_z0234 into v_z0234                              "32383
             with key vstel = v_likp-vstel                           "32383
             binary search.                                          "32383
        read table i_knvv into v_knvv with key kunnr = v_likp-kunag
                                                     binary search.
        if sy-subrc ne 0.
          select single ktgrd kvgr1 into (v_knvv-ktgrd, v_knvv-kvgr1)
            from knvv where kunnr = v_likp-kunag  and
                            vkorg = v_likp-vkorg  and
                           vtweg = '01' and          " intercompany values
                           spart = '01'.             " intercompany values
        endif.
        clear v_kna1.                                           " SIR 34606
        read table i_kna1 into v_kna1                           " SIR 34606
           with key kunnr = v_likp-kunnr                        " SIR 34606
           binary search.                                       " SIR 34606
        read table i_vekp into v_vekp
           with key vpobjkey(10) = v_likp-vbeln
           binary search.
        if sy-subrc = 0.
          v_vekp_tabix = sy-tabix.
          while v_ok = 'Y'.
            if v_vekp-gewei_max ne c_uom.
              perform z_unit_conversion
                using v_vekp-brgew v_vekp-gewei_max c_uom v_palwto.
              v_vekp_sum_brgew = v_vekp_sum_brgew + v_palwto.
            else.
              v_vekp_sum_brgew = v_vekp_sum_brgew + v_vekp-brgew.
            endif.
            v_vekp_tabix = v_vekp_tabix + 1.
            read table i_vekp into v_vekp
               index v_vekp_tabix.
            if sy-subrc = 0.
              if v_vekp-vpobjkey(10) ne v_likp-vbeln.
                v_ok = 'N'.
              endif.
            else.
              v_ok = 'N'.
            endif.
          endwhile.
        endif.
      endif.                                                   " SIR 061880
    * populate output tables
      clear: v_output_dt, v_output_ag,v_output_gs.              " SIR 34606
      v_output_dt-wadat_ist = v_likp-wadat_ist.
      v_output_dt-ktgrd     = v_knvv-ktgrd.
      v_output_ag-ktgrd     = v_knvv-ktgrd.
      v_output_gs-ktgrd     = v_knvv-ktgrd.                     " SIR 34606
    *-------------------------------------------------* Begin of SIR 061880
    *  V_OUTPUT_DT-BU        = V_KNVV-KVGR1.
    *  V_OUTPUT_AG-BU        = V_KNVV-KVGR1.
    *  V_OUTPUT_GS-BU        = V_KNVV-KVGR1.                    " SIR 34606
    * Populate Business Unit,Line of Busness and PAC1 Values in Header Data
      perform get_busunit_lobus_pac1_data1.
    *---------------------------------------------------* End of SIR 061880
      v_output_dt-kunnr = v_kna1-kunnr.                         " SIR 34606
    * V_OUTPUT_AG-KUNNR = V_KNA1-KUNNR.                         " SIR 34606
      v_output_dt-land1 = v_kna1-land1.                         " SIR 34606
      v_output_ag-land1 = v_kna1-land1.                         " SIR 34606
      v_output_dt-a_brgew     = v_vekp_sum_brgew.
      v_output_ag-a_brgew     = v_vekp_sum_brgew.
      v_output_gs-a_brgew     = v_vekp_sum_brgew.               " SIR 34606
      if s_mbuun[] is initial and                               " SIR 61880
         s_lobus[] is initial and                               " SIR 61880
         s_pac1[] is  initial.                                  " SIR 61880
        v_output_dt-num_del   = 1.
        v_output_ag-num_del   = 1.
        v_output_gs-num_del   = 1.                              " SIR 34606
    *-------------------------------------------------* Begin of SIR 061880
    * Number of Packages
        v_output_dt-packages   = v_likp-anzpk.
        v_output_ag-packages   = v_likp-anzpk.
        v_output_gs-packages   = v_likp-anzpk.
      else.
        clear: v_output_dt-num_del,
               v_output_ag-num_del,
               v_output_gs-num_del,
               v_output_dt-packages,
               v_output_ag-packages,
               v_output_gs-packages.
      endif.
    *---------------------------------------------------* End of SIR 061880
      collect v_output_dt into i_output_dt.
      collect v_output_ag into i_output_ag.
      collect v_output_gs into i_output_gs.                     " SIR 34606
    endform.                               " collect_header_data
    *       FORM COLLECT_ITEM_DATA                                        *
    * For each delivery line, fields used are goods issue date,           *
    * acct assign, BU for material, number of pallets, number of cases,   *
    * loose quantity and number of delivery lines.  The remaining header  *
    * fiels will be zero for the collect.                                 *
    form collect_item_data.
      clear:  v_pallet_qty,      v_pallet_integer,
              v_case_qty,        v_case_integer,
              v_num_pallets,     v_num_pallets_int,
              v_num_cases,       v_num_cases_int,
              v_qty_not_pallets, v_total_case_qty, v_loose_qty.
      read table i_marm_pallet into v_marm_pallet
                 with key matnr = v_lips-matnr
                          meinh = v_z0234-zpaluom binary search."32382
      if sy-subrc = 0.
        v_pallet_qty = v_marm_pallet-umrez / v_marm_pallet-umren.
    * round down partial pallets
        v_pallet_integer = v_pallet_qty - '.499'.
      endif.
      read table i_marm_case into v_marm_case
                  with key matnr = v_lips-matnr
                           meinh = v_z0234-zcsuom binary search."32382
      if sy-subrc = 0.
        v_case_qty = v_marm_case-umrez / v_marm_case-umren.
    * round down partial cases
        v_case_integer = v_case_qty - '.499'.
      endif.
      if v_pallet_integer > 0.
        v_num_pallets     = v_lips-lgmng / v_pallet_integer.
        v_num_pallets_int = v_num_pallets - '.499'.
      endif.
      v_qty_not_pallets = v_lips-lgmng -
                          ( v_num_pallets_int * v_pallet_integer ).
      if v_case_integer > 0.
        v_num_cases     = v_qty_not_pallets / v_case_integer.
        v_num_cases_int = v_num_cases - '.499'.
      endif.
      v_total_case_qty     = v_num_cases_int * v_case_integer.
      if v_qty_not_pallets = v_total_case_qty.
        v_loose_qty = 0.
      else.
        v_loose_qty = 1.
      endif.
    * populate output tables
      clear: v_output_dt, v_output_ag, v_output_gs.             " SIR 34606
      v_output_dt-wadat_ist   = v_likp-wadat_ist.
      v_output_dt-ktgrd       = v_knvv-ktgrd.
      v_output_ag-ktgrd       = v_knvv-ktgrd.
      v_output_gs-ktgrd       = v_knvv-ktgrd.                   " SIR 34606
      v_output_dt-kunnr = v_kna1-kunnr.                         " SIR 34606
    * V_OUTPUT_AG-KUNNR = V_KNA1-KUNNR.                         " SIR 34606
      v_output_dt-land1 = v_kna1-land1.                         " SIR 34606
      v_output_ag-land1 = v_kna1-land1.                         " SIR 34606
    *-------------------------------------------------* Begin of SIR 061880
    *  V_OUTPUT_DT-BU          = V_LIPS-PRODH+1(2).
    *  V_OUTPUT_AG-BU          = V_LIPS-PRODH+1(2).
    *  V_OUTPUT_GS-BU          = V_LIPS-PRODH+1(2).             " SIR 34606
    * Populate Business Unit,Line of Business and PAC1 Values for Item Data.
      perform get_busunit_lobus_pac1_data2.
      if V_OUTPUT_DT-BU is initial.
       clear V_OUTPUT_DT.
       exit.
      endif.
    *---------------------------------------------------* End of SIR 061880
    * get delivery weight from delivery lines instead of header " SIR 45567
      if v_lips-gewei = c_uom.
        v_output_dt-d_btgew  = v_lips-brgew.
        v_output_ag-d_btgew  = v_lips-brgew.
        v_output_gs-d_btgew  = v_lips-brgew.                    " SIR 34606
      else.
        perform z_unit_conversion
             using v_lips-brgew v_lips-gewei c_uom v_palwto.
        v_output_dt-d_btgew  = v_palwto.
        v_output_ag-d_btgew  = v_palwto.
        v_output_gs-d_btgew  = v_palwto.                        " SIR 34606
      endif.
    * Get material weight from delivery (LIPS)(IF P_DELWT = 'X')" SIR 38784
      if p_delwt = 'X'.                                         " SIR 38784
        if v_lips-gewei = c_uom.
          v_output_dt-m_brgew  = v_lips-brgew.
          v_output_ag-m_brgew  = v_lips-brgew.
          v_output_gs-m_brgew  = v_lips-brgew.                  " SIR 34606
        else.
          perform z_unit_conversion
               using v_lips-brgew v_lips-gewei c_uom v_palwto.
          v_output_dt-m_brgew  = v_palwto.
          v_output_ag-m_brgew  = v_palwto.
          v_output_gs-m_brgew  = v_palwto.                      " SIR 34606
        endif.
      else.                                                     " SIR 38784
    * Get material weight from Master data (MARA)               " SIR 38784
        read table i_mara1 into v_mara                          " SIR 38784
                               with key matnr = v_lips-matnr    " SIR 38784
                               binary search.                   " SIR 38784
        if v_mara-gewei = c_uom.                                " SIR 38784
          v_output_dt-m_brgew  = v_mara-brgew * v_lips-lgmng.   " SIR 38784
          v_output_ag-m_brgew  = v_mara-brgew * v_lips-lgmng.   " SIR 38784
          v_output_gs-m_brgew  = v_mara-brgew * v_lips-lgmng.   " SIR 38784
        else.                                                   " SIR 38784
          perform z_unit_conversion                             " SIR 38784
               using v_mara-brgew v_mara-gewei c_uom v_palwto.  " SIR 38784
          v_output_dt-m_brgew  = v_palwto * v_lips-lgmng.       " SIR 38784
          v_output_ag-m_brgew  = v_palwto * v_lips-lgmng.       " SIR 38784
          v_output_gs-m_brgew  = v_palwto * v_lips-lgmng.       " SIR 38784
        endif.                                                  " SIR 38784
      endif.                                                    " SIR 38784
    *-------------------------------------------------* Begin of SIR 061880
    * To Get the Volume Data.
      perform get_volume_data.
    *---------------------------------------------------* End of SIR 061880
      v_output_dt-num_pallets = v_num_pallets_int.
      v_output_ag-num_pallets = v_num_pallets_int.
      v_output_gs-num_pallets = v_num_pallets_int.              " SIR 34606
      v_output_dt-num_cases   = v_num_cases_int.
      v_output_ag-num_cases   = v_num_cases_int.
      v_output_gs-num_cases   = v_num_cases_int.                " SIR 34606
      v_output_dt-num_loose   = v_loose_qty.
      v_output_ag-num_loose   = v_loose_qty.
      v_output_gs-num_loose   = v_loose_qty.                    " SIR 34606
    *{   INSERT         D11K901833                                        1
    * Sir 054042/48712 insert code to put in 0 instead of 1 for collect
    * value for delivery lines
      if v_lips-lgmng = 0.
        v_output_dt-num_delln   = 0.
        v_output_ag-num_delln   = 0.
        v_output_gs-num_delln   = 0.
      else.
    * end of insert for 054042/48712
    *}   INSERT
        v_output_dt-num_delln   = 1.
        v_output_ag-num_delln   = 1.
        v_output_gs-num_delln   = 1.          

    Since this is your first post, let me clue you in. This forum is meant for asking very short and specific questions. For example, if you've asked, how could you improve a particular one SELECT statement, I'm sure many people would have helped you.
    But you cannot seriously expect someone on this forum to spend his/her time and review such a long program. For this people are normally getting paid, you know.

  • How to improve the query performance in to report level and designer level

    How to improve the query performance in to report level and designer level......?
    Plz let me know the detail view......

    first its all based on the design of the database, universe and the report.
    at the universe Level, you have to check your Contexts very well to get the optimal performance of the universe and also your joins, keep your joins with key fields, will give you the best performance.
    at the report level, try to make the reports dynamic as much as you can, (Parameters) and so on.
    and when you create a paremeter try to get it match with the key fields in the database.
    good luck
    Amr

  • How Can we improve the report performance..?

    Hi exports,
    I am learning the Business Objects XIR2, Please let me know How Can we improve the report performance..?
    Please give the answer in detailed way.

    First find out why your report is performing slowly. Then fix it.
    That sounds silly, but there's really no single-path process for improving report performance. You might find issues with the report. With the network. With the universe. With the database. With the database design. With the query definition. With report variables. With the ETL. Once you figure out where the problem is, then you start fixing it. Fixing one problem may very well reveal another. I spent two years working on a project where we touched every single aspect of reporting (from data collection through ETL and all the way to report delivery) at some point or another.
    I feel like your question is a bit broad (meaning too generic) to address as you have phrased it. Even some of the suggestions already given...
    Array fetch size - this determines the number of rows fetched at a single pass. You really don't need to modify this unless your network is giving issues. I have seen folks suggest setting this to one (which results in a lot of network requests) or 500 (which results in fewer requests but they're much MUCH larger). Does either improve performance? They might, or they might make it worse. Without understanding how your network traffic is managed it's hard to say.
    Shortcut joins? Sure, they can help, as long as they are appropriate. [Many times they are not.|http://www.dagira.com/2010/05/27/everything-about-shortcut-joins/]
    And I could go on and on. The bottom line is that performance tuning doesn't typically fall into a "cookie cutter" approach. It would be better to have a specific question.

  • I have power mac G4.  What do I do to reimage it to improve its functionality?

    I have a power mac G4.  How can I reimage it so that I can improve its functionality?

    We need more details to provide usable recommendations:
    What is the Mac OS version and G4 processor speed (both available from "About this Mac" in the Apple menu. "iOS 4.1" is not a computer operating system)
    How much RAM is installed? (Also from "About this Mac.")
    Are there specific programs  you use or tasks you perform that are slow? If so, please tell us which ones.
    How much free space is on your hard drive? (highlight your hard drive icon on the desktop and do command i from the keyboard. That shows the capacity of the drive and how much space is available)

  • Improving a query performance

    Hello gurus,
    We do use RSRT, ST03(expert mode) to check if a query is running slowly. what actually do we check there and how?
    Can anyone please explain me how its done.
    Thanks in advance
    S N

    Hi SN,
    You need to check the DB time taken by the queries and the summarization ratio for the queries. As a rule of thumb if the summarization ration > 10 and the database time > 30% then creating an aggregate will improve the query performance.
    BY summarization ration i mean ratio between the number of records read from the cube to the number of records displayed in the report.
    Thx,
    Soumya

  • How can I improve my imac performance?

    Hi guys,
    When I'm using a complex files on Adobe illustrator CS4, it crashes...
    How can I improve my imac performance?
    Here's my system's specs:
      Model Name:    iMac
      Model Identifier:    iMac11,1
      Processor Name:    Intel Core i5
      Processor Speed:    2.66 GHz
      Number Of Processors:    1
      Total Number Of Cores:    4
      L2 Cache (per core):    256 KB
      L3 Cache:    8 MB
      Memory:    4 GB
      Processor Interconnect Speed:    4.8 GT/s
      Boot ROM Version:    IM111.0034.B02
      SMC Version (system):    1.54f36
    Thanks for youyr help!

    I figured you'd ask for those    Since I can't remember the topic/subject line, I have no idea if I have enough time  in this life to try to find them - I had subscriptions for all of them, but of course, those went poof into cyberspace.
    Edit: Athough the search function does not work well (could not specificy 'iMac' - would get "unauthorized to search" every time), so I had to go through quite a few, but I found two of the major threads:
    https://discussions.apple.com/message/12417693#12417693
    https://discussions.apple.com/message/12807961#12807961
    Enjoy reading....
    Barbara

Maybe you are looking for

  • Windows 8.1 - Update 1

    In the SCCM 2012 R2 console, looking through All Software Updates, we can see KB2919355, but not the associated Features Packs shown below.  We do see other Feature Packs but not the ones required below. Feature Pack for Windows (KB2932046) Feature P

  • Time Machine  "Backing up to multiple hard drives"

    I had problems when switching between two external hard drives using Time Machine. Upon speaking to Apple Tech Support I learned that when getting an error code that prevents me from using one of my hard drives, that there is a work around. Seems tha

  • Autosync?

    Am I alone with the problem of my Apple TV not autosyncing? Specifically, as new podcasts are downloaded into iTunes they will not automatically sync to the ATV. I can force a sync by restarting the ATV or manually syncing from my iMac. Yes, autosync

  • How do I get CS5 updated to read raw format photos

    Why doesn't Photoshop read raw format photos from Nikon D600? I've tried downloading new versions of "Camera Raw". It downloads and installs successfully, but I still can't open the files in photoshop.

  • Error Message : Object could not be scheduled within the specified time interval

    Post Author: mohamed elkashef CA Forum: Publishing Dear All when i try to run event for daily reports it sometimes take generation status failed with this error  message : Object could not be scheduled within the specified time interval so  i need to