Capturing System Date in Calculation

Hi,I am in need of urgent help. Can i capture system date in Essbase to perform calculation. If possible what is the procedure else what is the work-around method. Thanks----Ayan

Not sure what you are asking. Can you give an example?

Similar Messages

  • Capturing system time and date and the time difference and date difference.

    Hello Experts,
    i have a requirement the i need to capture select query start time and date as i runthe program on midnight (ie) 11:55 p.m.
    I tried system fields sy-datum and sy-uzeit for capturing the system date and time when my program runs but it gets reset when the date changes.
    i tried get time field option but it is resetting the sy-datum to zero so i am able to capture the date of the next day and resulting in wrong calculation of time .
    please help with your valuable answers.
    Thank you,
    Srinivas.

    Hi,
    As per my understanding you want to fetch those data which are created between the program last run date time and current date time.
    If I am right please follow the below procedure.
    1. Create one custom table to store program name and program execution last date time
    2. at event INITIALIZATION populate to fields date and Time using the statement sy-datum
    initialization.
      v_curr_time = sy-uzeit.           " Current time
      v_curr_date = sy-datum.           " Current date
    3. Get the last run date and time from the above custom table.
    4. Do your logic.
    5. at last Update the custom table with current date and time based on the step two (Here do not take sy-datum like that, take the value in the global variable populated in step 2)
    Thanks
    Subhankar

  • I want to capture system message during data upload.

    Hello,
    I want to capture system message during data upload.
    How should I do this?
    suppose during call transaction system shows message:-
    " Info record for vendor 102925 and material DYND80000 does not exist"
    then How can I get that message?

    Hi Megha,
    CALL TRANSACTION tcode USING i_bdcdata
                              MODE lws_mode
                            UPDATE lws_update
                          MESSAGES INTO <b>i_messages.</b>
      CLEAR wa_error.
      IF sy-subrc NE 0.
        cnt_failed = cnt_failed + 1.
        wa_error-status = c_fail.
        LOOP AT i_messages . "WHERE msgtyp EQ 'E' OR msgtyp = 'A'.
          flg_fail = c_x.
    *---Calling FM to get for Error Message Text
          <b>CALL FUNCTION 'MESSAGE_PREPARE'  </b>                     "#EC *
            EXPORTING
              language               = 'E'
              msg_id                 = i_messages-msgid
              msg_no                 = i_messages-msgnr
            IMPORTING
              msg_text               = lws_text
            EXCEPTIONS
            function_not_completed = 1      " Invalid Date Error Description
              message_not_found      = 2
              OTHERS                 = 3.
    <b>Reward points if this helps.
    Manish</b>

  • How to capture the data entered in a textfield in a JTable

    How to capture the data entered in a textfield present in a cell of a textfield or how to add listener to this textfield

    A sample of my code is:
              model = new GridDisplayTableModel(gridDisp,columnName,getRows(),getCols());
              final ComboRenderer cRenderer = new ComboRenderer();
              final TextFieldRenderer tRenderer = new TextFieldRenderer();
              combo.addItem("one");
              combo.addItem("two");
              combo.addItem("three");
              final JTextField textfield = new JTextField();
              final DefaultCellEditor cmbEditor = new DefaultCellEditor(combo);
         //     final JEnterDataCellEditor textEditor = new JEnterDataCellEditor(12);
              final DefaultCellEditor textEditor = new DefaultCellEditor(textfield);
              rm = new RowEditorModel();
              table = new JTable(model){
         public TableCellRenderer getCellRenderer(int row, int column) {
              int posx = 0;
                   int posy = 0;
                   TableCellRenderer renderer = null;
         for(int l=0;l<getDataVec().size();l++)
                   beanObj =(Helperbean)dataVec.elementAt(l);
                   posx = beanObj.getPosx();
                   posy = beanObj.getPosy();
                   if(row==posx && column==posy)
                             if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("textfield"))
                                  rm.addEditorForRow(row,textEditor);
                                  renderer = tRenderer;
                             else if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("combo"))
                                  rm.addEditorForRow(row,cmbEditor);
                                  renderer = cRenderer;
                             break;
                        renderer = super.getCellRenderer(row, column);
              //     System.out.println("getEditor"+rm.getEditor(1));
         return renderer;
    public TableCellEditor getCellEditor(int row, int col) {   
         int posx = 0;
         int posy = 0;
         TableCellEditor tmpEditor = null;
    for(int l=0;l<getDataVec().size();l++)
         beanObj =(Helperbean)dataVec.elementAt(l);
         posx = beanObj.getPosx();
         posy = beanObj.getPosy();
         if(row==posx && col==posy)
                   if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("textfield"))
                        System.out.println("celleditorval "+textEditor.getCellEditorValue());
                        tmpEditor = textEditor;
                   else if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("combo"))
                        tmpEditor = cmbEditor;
                   break;
              tmpEditor = super.getCellEditor(row, col);
    return tmpEditor;
    public boolean isCellEditable(int row,int col){
         boolean isEditable = false;
         int posx = 0;
         int posy = 0;
    for(int l=0;l<getDataVec().size();l++)
         beanObj =(Helperbean)dataVec.elementAt(l);
         posx = beanObj.getPosx();
         posy = beanObj.getPosy();
         if(row==posx && col==posy)
              if(beanObj.getModeofDisplay() != null )     
                        isEditable = true;     
                   else
                        isEditable = false;     
                   break;
         isEditable = false;
         return isEditable;
    public void changeSelection(final int row, final int column, boolean toggle, boolean extend) {
         super.changeSelection(row, column, toggle, extend);
         //my attempt to avoid editCellAt from being called twice in a row
         if (getModel().isCellEditable(row, column) && !(isEditing() && getEditingRow() == row && getEditingColumn() == column))
              if (editCellAt(row, column)) {
                   getEditorComponent().requestFocus();
         // Select the text when the cell starts editing
    public boolean editCellAt(int row, int column) {       
         boolean result = super.editCellAt(row, column);
         final Component editor = getEditorComponent();
         if (editor != null && editor instanceof JTextField) {           
              SwingUtilities.invokeLater(new Runnable() {               
                   public void run() {                   
                        ((JTextField)editor).selectAll();
              return result;
         public boolean hasFocus()
              Component editorComponent = getEditorComponent();
              // Try to install the editor
              int anchorRow = getSelectionModel().getAnchorSelectionIndex();
              int anchorColumn = getColumnModel().getSelectionModel().
              getAnchorSelectionIndex();
              if (anchorRow != -1 && anchorColumn != -1 && !isEditing())
              if ((this.getSelectedRow() == anchorRow) && (this.getSelectedColumn() == anchorColumn))
              if (!editCellAt(anchorRow, anchorColumn)) {}
              return super.hasFocus();
         public void valueChanged(ListSelectionEvent e)
              super.valueChanged(e);
              if ((this.getSelectedRow() == 2) && (this.getSelectedColumn() == 3))
                   DefaultFocusManager focusManager = new DefaultFocusManager();
                   focusManager.focusNextComponent(this);
                   model.fireTableStructureChanged();
         

  • Delivery date getting calculated wrongly in delivery created via VL10D

    Hi Gurus,
    We have a strange issue, where in delivery date is getting calculated wrongly for replenishment delivery created via VL10D.
    When we are creating via VL10D , delivery date is getting the additional 30 days from MaxDlvCrteDate . With initial investigation i see that VL10D has delivery creation profile 0101 for which no of days maintained in max delv creation date is 30 .
    I assume that the delivery date is getting the additional days from delivery creation profile felid no of max delv creation date .
    I have created the delivery on 24.03.2011, as per the route no of TL time is 9 days , So Ideally the delivery date should be 04.04.2011 , however system has calculated it as 23.04.2011
    Delivery no             No of days in MaxDlvCrteDate                        Delivery  date
    213443158                           30                                                       23.04.2011
    If I create the delivery for the same PO using t-code VL10B, then delivery date is calculating correctly.
    Not sure why system behavior is strange.
    Please help me with your inputs to resolve the issue..
    Thanks in advance

    Please request one Abaper  to solve this problem.
    You cannot due nothing as the problem is in Code.
    Regards
    William

  • How to calculate system date through function module date

    Hi friends!!
    i declare a variable "date like sy-datum".
    now i want to add 15 days to the system date,
    please give me the function module name which can do it.
    xample.
    date = sytem date. -> date= 13/08/2010
    i want                          date= 28/08/2010.
    please help.
    Edited by: sandeep08 on Aug 13, 2010 1:53 PM
    Moderator message: date calculation questions = FAQ, please search before posting.
    locked by: Thomas Zloch on Aug 13, 2010 2:03 PM

    Hi,
    You can directly add 15 to the date. It will give you appropriate results.
    Regards,
    Aparna Alashe.

  • Customer Exit for Calendar Month based on the day (system Date)

    Hello,
    I need help in creating a customer exit for Calendar month without the user input. The logic is as follows:
    For the BEx variable created with customer exit option and no user input:
    If the day on the system date falls in between 1 to 14 take the calendar year/month value as previous month.
    If the day on the system date falls in between 15 through 31 then take the calendar year/month as current month.
    eg if report is run on March 24th2009 the calendar year/month variable should be calculated as 03/2009 (March 2009)
    if the report is run on March 1st2009 the calendar year/month should be calculated as 02/2009 (Feb 2009).
    The code should be effective when run in the first 15 days of Jan when the previous month would contain the previous year as well.
    Thank You
    Srishti

    Thanks Shanthi. I am trying to incorporate the logic when the query is run in beginning of Jan when the year should be the previous year.Following is the code.please let me know if it would work. Is there a way I can test it as well?
    CASE I_VNAM.
    WHEN 'ZCURCALMON'.
    IF i_step = 2.
    data: mm(2),
            dd(2),
            yy(4),
            FM(6).
    if sy-datum+4(2) EQ 1.
    sy-datum(4) = sy-datum(4) - 1.
    else.
    sy-datum(4) = sy-datum(4).
    endif.
    if sy-datum+6(2) LE 15.
      mm = sy-datum+4(2) - 1.
      concatenate sy-datum(4) mm into FM.
    else.
      concatenate sy-datum(4) sy-datum+4(2)  into FM.
    endif.
    l_s_range-low = FM.
    l_s_range-sign = 'I'.
    l_s_range-opt = 'EQ'.
    append l_s_range to e_t_range.
    Endif.
    ENDCASE.
    Thanks
    Srishti

  • Display Current/System date in the Query

    Hi,
    Can any one tell me how i can display the current date or system date in Bex Query/report. I tried to use "0DAT" SAP exit as the key date in the "General Properties"... this helps me to execute query based on a Key date, but does not display the date. Can any one tell me, how I can use the current date in my query for some calculations and how I can display the current date.
    Thanks

    Hi Tanu
    If you want to see the query run date along witn query properties in the report output ( after you execute the report).. then go to "Layout".. (please check for Icons) >display text elements> all. ( This is if you are in BW 3.5).. if you are in BI 7.0, then simplay click on information and you will see all the details
    I see you are asking for some calcuation's also.. for that you should see what date fields you have in the backend cube/dsou2026
    Hope this helps
    Thanks
    Kalyan

  • ALV Grid - capturing the data of checked records

    Hi All,
    I have a report with ALV Grid display and it displays the contents of a custom table. Each record has a CHBOX, and I want to capture the data of all checked records in to an internal table when 'create Order' button is pressed.  Please help me.
    Thanks,
    Neelu.

    Hi neelu,
      Find attached complete code for the check box in ALV
    REPORT ZTESTPRG .
    TABLES AND DATA DECLARATION.
    *TABLES: mara,makt.",marc.
    data syrepid like sy-repid.
    data sydatum(10). " LIKE sy-datum.
    data sypagno(3) type n.
    WHEN USING MORE THAN ONE TABLE IN ALV WE NEEED TO DECLARE THE TYPE
    GROUP (TYPE-POOLS--------->SLIS)
    type-pools : slis.
    INTERNAL TABLE DECLARATION.
    INTERNAL TABLE TO HOLD THE VALUES FROM THE MARA TABLE
    data: begin of t_mara occurs 0,
    matnr like mara-matnr,
    meins like mara-meins,
    mtart like mara-mtart,
    matkl like mara-matkl,
    end of t_mara.
    INTERNAL TABLE TO HOLD THE CONTENTS FROM THE EKKO TABLE
    data : begin of t_marc occurs 0,
    matnr like mara-matnr,
    werks like marc-werks,
    minbe like marc-minbe.
    data: end of t_marc.
    INTERNAL TABLE TO HOLD THE VALUES FROM MAKT TABLE.
    data : begin of t_makt occurs 0,
    matnr like mara-matnr,
    maktx like makt-maktx,
    spras like makt-spras,
    end of t_makt.
    INTERNAL TABLE WHICH ACTUALLY MERGES ALL THE OTHER INTERNAL TABLES.
    data: begin of itab1 occurs 0,
    chkbox(1) type c,
    matnr like mara-matnr,
    meins like mara-meins,
    maktx like makt-maktx,
    spras like makt-spras,
    werks like marc-werks,
    minbe like marc-minbe,
    end of itab1.
    THE FOLLOWING DECLARATION IS USED FOR DEFINING THE FIELDCAT
    AND THE LAYOUT FOR THE ALV.
    HERE AS slis_t_fieldcat_alv IS A INTERNAL TABLE WITHOUT A HEADER LINE
    WE EXPLICITELY DEFINE AN INTERNAL TABLE OF THE SAME STRUCTURE AS THAT
    OF slis_t_fieldcat_alv BUT WITH A HEADER LINE IN THE DEFINITION.
    THIS IS DONE TO MAKE THE CODE SIMPLER.
    OTHERWISE WE MAY HAVE TO DEFINE THE STRUCTURE AS IN THE NORMAL SAP
    PROGRAMS.
    IN THE FIELDCATALOG TABLE WE ACTUALLY PASS THE FIELDS FROM ONE OR
    MORE TABLES AND CREATE A STRUCTURE
    IN THE LAYOUT STRUCTURE WE BASICALLY DEFINE THE FORMATTING OPTIONS
    LIKE DISPLAY IN THE ZEBRA PATTERN ,THE HOTSPOT OPTIONS ETC.
    data: fieldcatalog type slis_t_fieldcat_alv with header line,
    fieldlayout type slis_layout_alv.
    DECLARING THE EVENTTABLE INTERNL TABLE FOR USING EVENTS LIKE
    TOP-OF-PAGE ETC.
    data : eventstab type slis_t_event with header line.
    DECLARING AN INTERNAL TABLE TO HOLD THE DATA FOR THE TOP-OF-PAGE
    data : heading type slis_t_listheader with header line.
    data : heading1 type slis_t_listheader with header line.
    data : heading2 type slis_t_listheader with header line.
    data : heading3 type slis_t_listheader with header line.
    data : heading4 type slis_t_listheader with header line.
    data : heading5 type slis_t_listheader with header line.
    data : heading6 type slis_t_listheader with header line.
    data : heading7 type slis_t_listheader with header line.
    data : heading8 type slis_t_listheader with header line.
    STRUCTURE TO PASS THE COLOR ATTRIBUTES FOR DISPLAY.
    data : colorstruct type slis_coltypes.
    INITIALIZATION. *
    initialization.
    syrepid = sy-repid.
    sypagno = sy-pagno.
    clear fieldcatalog.
    START-OF-SELECTION. *
    start-of-selection.
    SUBROUTINE TO POPULATE THE COLORSTRUCT
    perform fill_colorstruct using colorstruct.
    SUBROUTINE TO POPULATE THE FIELDS OF THE FIELD CATALOGUE
    perform populate_fieldcatalog.
    SUBROUTINE TO SELECT DATA FROM VARIOUS TABLES AND POPULATE IT IN THE
    INTERNAL TABLE.
    perform selectdata_and_sort.
    SUBROUTINE TO POPULATE THE LAYOUT STRUCTURE.
    perform populate_layout using fieldlayout.
    SUBROUTINE TO CALL THE FUNCTION MERGE TO ENSURE PROPER DISPLAY.
    perform merge_fieldcatalog.
    SUBROUTINE TO POPULATE THE EVENTSTAB.
    perform fill_eventstab tables eventstab.
    SUBROUTINE TO POPULATE THE HEADING TABLES.
    perform fill_headingtable tables heading using 'HEADING'.
    perform fill_headingtable tables heading1 using 'HEADING1'.
    perform fill_headingtable tables heading2 using 'HEADING2'.
    perform fill_headingtable tables heading3 using 'HEADING3'.
    perform fill_headingtable tables heading4 using 'HEADING4'.
    perform fill_headingtable tables heading5 using 'HEADING5'.
    perform fill_headingtable tables heading6 using 'HEADING6'.
    perform fill_headingtable tables heading7 using 'HEADING7'.
    perform fill_headingtable tables heading8 using 'HEADING8'.
    SUBROUTINE TO DISPLAY THE LIST.
    perform display_alv_list.
    FORMS
    IN THIS SUBROUTINE WE POPULATE THE FIELDCATALOG TABLE WITH THE NAMES
    OF THE TABLE,FIELDNAME,WHETHER IT IS KEY FIELD OR NOT,HEADING AND
    COLUMN JUSTIFICATION.
    form populate_fieldcatalog.
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MATNR' 'X' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MEINS' ' '.
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MAKTX' ' ' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MTART' ' ' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MATKL' ' ' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'SPRAS' ' ' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'WERKS' ' ' .
    perform fill_fields_of_fieldcatalog tables fieldcatalog
    using 'ITAB1' 'MINBE' ' ' .
    endform. " POPULATE_FIELDCATALOG
    FORM FILL_FIELDS_OF_FIELDCATALOG *
    --> FIELDCATALOG *
    --> P_TABNAME *
    --> P_FIELDNAME *
    --> P_KEY *
    --> P_KEY *
    form fill_fields_of_fieldcatalog tables fieldcatalog
    structure fieldcatalog
    using p_tabname
    p_fieldname
    p_key.
    p_no_out.
    fieldcatalog-tabname = p_tabname.
    fieldcatalog-fieldname = p_fieldname.
    fieldcatalog-key = p_key.
    fieldcatalog-emphasize = '1234'.
    *fieldcatalog-no_out = p_no_out.
    append fieldcatalog.
    endform. " FILL_FIELDSOFFIELDCATALOG
    FORM POPULATE_LAYOUT *
    --> FIELDLAYOUT *
    form populate_layout using fieldlayout type slis_layout_alv.
    fieldlayout-f2code = '&ETA' .
    fieldlayout-zebra = 'X'.
    FOR THE WINDOW TITLE.
    fieldlayout-window_titlebar = 'ALV with Events'.
    fieldlayout-colwidth_optimize = 'X'.
    fieldlayout-no_vline = ' '.
    *fieldlayout-no_input = 'X'.
    fieldlayout-confirmation_prompt = ''.
    fieldlayout-key_hotspot = 'X'.
    This removes the column headings if the flag is set to 'X'
    fieldlayout-no_colhead = ' '.
    *fieldlayout-hotspot_fieldname = 'MAKTX'.
    fieldlayout-detail_popup = 'X'.
    fieldlayout-coltab_fieldname = 'X'.
    fieldlayout-box_fieldname = 'CHKBOX'.
    fieldlayout-edit_mode = 'X'.
    endform. " POPULATE_LAYOUT
    FORM SELECTDATA_AND_SORT *
    form selectdata_and_sort.
    select matnr meins mtart matkl from mara
    into corresponding fields of t_mara
    up to 500 rows .
    select matnr maktx spras from makt
    into corresponding fields of t_makt
    where matnr = t_mara-matnr and
    spras = sy-langu.
    select matnr werks minbe from marc
    into corresponding fields of t_marc
    where matnr = t_mara-matnr.
    append t_marc.
    endselect.
    append t_makt.
    endselect.
    append t_mara.
    endselect.
    perform populate_itab1.
    sort itab1 by matnr.
    endform. " SELECTDATA_AND_SORT
    FORM MERGE_FIELDCATALOG *
    form merge_fieldcatalog.
    call function 'REUSE_ALV_FIELDCATALOG_MERGE'
    exporting
    i_program_name = syrepid
    i_internal_tabname = 'ITAB1'
    i_structure_name = 'COLORSTRUCT'
    I_CLIENT_NEVER_DISPLAY = 'X'
    i_inclname = syrepid
    changing
    ct_fieldcat = fieldcatalog[]
    exceptions
    inconsistent_interface = 1
    program_error = 2
    others = 3.
    endform. " MERGE_FIELDCATALOG
    IN THIS FUNCTION THE MINIMUM PARAMETERS THAT WE NEED TO PASS IS AS
    FOLLOWS:-
    i_callback_program --> CALLING PROGRAM NAME
    i_structure_name --> STRUCTURE NAME.
    is_layout --> LAYOUT NAME.
    it_fieldcat ---> BODY OF THE FIELD CATALOGUE INTERNAL TABLE
    form display_alv_list.
    call function 'REUSE_ALV_LIST_DISPLAY'
    exporting
    I_INTERFACE_CHECK = ' '
    i_callback_program = syrepid
    I_CALLBACK_PF_STATUS_SET = ' '
    I_CALLBACK_USER_COMMAND = ' '
    i_structure_name = 'ITAB1'
    is_layout = fieldlayout
    it_fieldcat = fieldcatalog[]
    IT_EXCLUDING =
    IT_SPECIAL_GROUPS =
    IT_SORT =
    IT_FILTER =
    IS_SEL_HIDE =
    I_DEFAULT = 'X'
    THE FOLLOWING PARAMETER IS SET AS 'A' INORDER TO DISPLAY THE STANDARD
    TOOL BAR
    i_save = 'A'
    IS_VARIANT = ' '
    it_events = eventstab[]
    IT_EVENT_EXIT =
    IS_PRINT =
    I_SCREEN_START_COLUMN = 0
    I_SCREEN_START_LINE = 0
    I_SCREEN_END_COLUMN = 0
    I_SCREEN_END_LINE = 0
    IMPORTING
    E_EXIT_CAUSED_BY_CALLER =
    ES_EXIT_CAUSED_BY_USER =
    tables
    t_outtab = itab1
    exceptions
    program_error = 1
    others = 2.
    endform. " DISPLAY_ALV_LIST
    *& Form POPULATE_ITAB1
    text
    --> p1 text
    <-- p2 text
    form populate_itab1.
    loop at t_mara.
    loop at t_makt where matnr = t_mara-matnr.
    loop at t_marc where matnr = t_mara-matnr.
    move-corresponding t_mara to itab1.
    move-corresponding t_makt to itab1.
    move-corresponding t_marc to itab1.
    append itab1.
    endloop.
    endloop.
    endloop.
    endform. " POPULATE_ITAB1
    *& Form FILL_EVENTSTAB
    text
    -->P_EVENTSTAB text *
    form fill_eventstab tables p_eventstab structure eventstab.
    WHEN THE FOLLOWING FUNCTION IS CALLED THE SYSTEM POPULATES THE
    INTERNAL TABLE EVENTSTAB WITH A LIST OF EVENTS NAME.
    AS SHOWN BELOW WHEN USING I_LIST_TYPE = 0 THE FUNCTION RETURNS 14
    EVENTS NAME.
    call function 'REUSE_ALV_EVENTS_GET'
    exporting
    i_list_type = 0
    importing
    et_events = p_eventstab[]
    exceptions
    list_type_wrong = 1
    others = 2.
    BY CALLING THE ABOVE FUNCTION WE FIRST POPULATE THE EVENTSTAB WITH
    THE PREDEFINED EVENTS AND THEN WE MOVE THE FORM NAME AS SHOWN BELOW.
    WE ASSIGN A FORM NAME TO THE EVENT AS REQUIRED BY THE USER.
    FORM NAME CAN BE ANYTHING.THE PERFORM STATEMENT FOR THIS FORM
    IS DYNAMICALY CALLED.
    read table p_eventstab with key name = slis_ev_top_of_page.
    if sy-subrc = 0 .
    move 'TOP_OF_PAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_top_of_coverpage.
    if sy-subrc = 0 .
    move 'TOP_OF_COVERPAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_end_of_coverpage .
    if sy-subrc = 0 .
    move 'END_OF_COVERPAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_foreign_top_of_page.
    if sy-subrc = 0 .
    move 'FOREIGN_TOP_OF_PAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_foreign_end_of_page.
    if sy-subrc = 0 .
    move 'FOREIGN_END_OF_PAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_list_modify.
    if sy-subrc = 0 .
    move 'LIST_MODIFY' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_top_of_list.
    if sy-subrc = 0 .
    move 'TOP_OF_LIST' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_end_of_page.
    if sy-subrc = 0 .
    move 'END_OF_PAGE' to p_eventstab-form.
    append p_eventstab.
    endif.
    read table p_eventstab with key name = slis_ev_end_of_list .
    if sy-subrc = 0 .
    move 'END_OF_LIST' to p_eventstab-form.
    append p_eventstab.
    endif.
    endform. " FILL_EVENTSTAB
    *& Form FILL_HEADINGTABLE
    text
    -->P_HEADING text *
    form fill_headingtable tables p_heading structure heading
    using tablename.
    case tablename.
    when 'HEADING'.
    p_heading-typ = 'H'.
    concatenate
    ' REPORT NAME:-' syrepid
    ' ABB Industry Pte Ltd' into p_heading-info.
    append p_heading.
    write sy-datum using edit mask '__/__/____' to sydatum.
    concatenate
    ' DATE:-' sydatum ' USER: ' sy-uname 'PAGE NO:' sypagno
    into p_heading-info.
    append p_heading.
    when 'HEADING1'.
    p_heading-typ = 'H'.
    p_heading-info = 'TOP-OF-COVER-PAGE'.
    append p_heading.
    when 'HEADING2'.
    p_heading-typ = 'H'.
    p_heading-info = 'END-OF-COVER-PAGE'.
    append p_heading.
    when 'HEADING3'.
    p_heading-typ = 'H'.
    p_heading-info = 'FOREIGN-TOP-OF-PAGE'.
    append p_heading.
    when 'HEADING4'.
    p_heading-typ = 'H'.
    p_heading-info = 'FOREIGN-END-OF-PAGE'.
    append p_heading.
    WHEN 'HEADING5'.
    P_HEADING-TYP = 'H'.
    P_HEADING-INFO = 'LIST-MODIFY'.
    APPEND P_HEADING.
    when 'HEADING6'.
    p_heading-typ = 'H'.
    p_heading-info = 'END-OF-PAGE'.
    append p_heading.
    when 'HEADING7'.
    p_heading-typ = 'H'.
    p_heading-info = 'END-OF-LIST'.
    append p_heading.
    when 'HEADING8'.
    p_heading-typ = 'H'.
    p_heading-info = 'TOP-OF-LIST'.
    append p_heading.
    endcase.
    endform. " FILL_HEADINGTABLE
    FORM TOP_OF_PAGE *
    form top_of_page.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading[]
    exceptions
    others = 1.
    endform.
    *& Form FILL_COLORSTRUCT
    text
    -->P_COLORSTRUCT text *
    form fill_colorstruct using p_colorstruct type slis_coltypes .
    p_colorstruct-heacolfir-col = 6.
    p_colorstruct-heacolfir-int = 1.
    p_colorstruct-heacolfir-inv = 1.
    endform. " FILL_COLORSTRUCT
    FORM TOP_OF_COVERPAGE *
    form top_of_coverpage.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading1[]
    exceptions
    others = 1.
    endform.
    FORM END_OF_COVERPAGE *
    form end_of_coverpage.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading2[]
    exceptions
    others = 1.
    endform.
    FORM FOREIGN_TOP_OF_PAGE *
    form foreign_top_of_page.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading3[]
    exceptions
    others = 1.
    endform.
    FORM FOREIGN_END_OF_PAGE *
    form foreign_end_of_page.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading4[]
    exceptions
    others = 1.
    endform.
    FORM LIST_MODIFY *
    *FORM LIST_MODIFY.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
    IT_LIST_COMMENTARY = HEADING5[]
    EXCEPTIONS
    OTHERS = 1.
    *ENDFORM.
    FORM END_OF_PAGE *
    form end_of_page.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading6[]
    exceptions
    others = 1.
    endform.
    FORM END_OF_LIST *
    form end_of_list.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading7[]
    exceptions
    others = 1.
    endform.
    FORM TOP_OF_LIST *
    form top_of_list.
    call function 'REUSE_ALV_COMMENTARY_WRITE'
    exporting
    it_list_commentary = heading8[]
    exceptions
    others = 1.
    endform.
    *--- End of Program
    Thanks
    Mahesh

  • System date issue

    Hi I have a java file which is reading data from datafile and insert into database.
    Now issue is upto 30 september(system date) program is working as expected.
    But after 30sept when system date chaned to 1st or second oct its not workin at all
    any idea is this java issue,oracle issue.

    Hi relavent codes from differetn files are as folows.importnat point is no exception.
    if date is before 30 sept its working .after 30 sept not working
    1)public static String getInsertDetailedAuditDataSQL()
              String insertDetailedAuditDataSql = "INSERT INTO DETAILED_FACILITY_AUDIT_DATA VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,CURRENT,?,CURRENT)";
              return insertDetailedAuditDataSql;
         }2)public static void setDetailedAuditData(List detailedAuditDataList, String dbUrl)
              throws IllegalArgumentException, DatabaseException
              DataUtil.enforceNotNull(detailedAuditDataList);
              DBService ds = DBManager.getDBInstance("driver");
              Connection con = null;
              PreparedStatement ps = null;
              try
                   con = ds.getConnection(dbUrl);
                   con.setAutoCommit(false);
                   String sql = QueriesHelper.getInsertDetailedAuditDataSQL();
                   ps = con.prepareStatement(sql);
                   DetailedFacilityAuditData detailedFacilityAuditData = null;
                   for(Iterator i = detailedAuditDataList.iterator(); i.hasNext();)
                        detailedFacilityAuditData = (DetailedFacilityAuditData)i.next();
                        ps.setDate(1, detailedFacilityAuditData.getAuditDate());
                        ps.setString(2, detailedFacilityAuditData.getBuiltAtServiceArea());
                        ps.setString(3, detailedFacilityAuditData.getBuiltAtFacility());
                        ps.setString(4, detailedFacilityAuditData.getAuditAtFacility());
                        ps.setString(5, detailedFacilityAuditData.getAuditAtServiceArea());
                        ps.setString(6, detailedFacilityAuditData.getHuid());
                        ps.setString(7, detailedFacilityAuditData.getHuType());
                        ps.setInt(8, detailedFacilityAuditData.getHuExpected().intValue());
                        ps.setInt(9, detailedFacilityAuditData.getHuMissing().intValue());
                        ps.setInt(10, detailedFacilityAuditData.getHuExtra().intValue());
                        ps.setInt(11, detailedFacilityAuditData.getShipmentExpected().intValue());
                        ps.setInt(12, detailedFacilityAuditData.getShipmentMissing().intValue());
                        ps.setInt(13, detailedFacilityAuditData.getShipmentExtra().intValue());
                        ps.setInt(14, detailedFacilityAuditData.getPieceIdsExpected().intValue());
                        ps.setInt(15, detailedFacilityAuditData.getPieceIdsMissing().intValue());
                        ps.setInt(16, detailedFacilityAuditData.getPieceIdsExtra().intValue());
                        ps.setString(17, detailedFacilityAuditData.getAuditor());
                        ps.setTimestamp(18, detailedFacilityAuditData.getAuditTime());
                        ps.setString(19, Constants.CREATED_UPDATED_BY);
                        ps.setString(20,Constants.CREATED_UPDATED_BY);
                        ps.addBatch();
                   int [] i = ps.executeBatch();     
                   con.commit();
                   con.setAutoCommit(true);
                   System.out.println(i.length);          
              catch(BatchUpdateException be)
                   throw new DatabaseException("Unable to insert detailed facility audit data. ", be);
              catch (SQLException e)
                   throw new DatabaseException("Unable to insert detailed facility audit data.", e);
              finally
                   try
                        if(ps != null)
                             ps.close();
                        ds.releaseConnection(con);     
                   } catch (SQLException e1)
                        e1.printStackTrace();
          * @param cutOffDate
          * @throws IllegalArgumentException
          * @throws DatabaseException
         public static void deleteStaleData(Date cutOffDate, String dbUrl)
              throws IllegalArgumentException, DatabaseException
              DataUtil.enforceNotNull(cutOffDate);
              DBService ds = DBManager.getDBInstance("driver");
              Connection con = null;
              PreparedStatement deleteDetailedFacilityStmt = null;
              PreparedStatement deleteIataStmt = null;
              try
                   con = ds.getConnection("jdbc:informix-sqli://test5v1.dhlexpress.net:4400/ccntauditreportsdb:" +
                                  "INFORMIXSERVER=odstcp1;user=webadrep;password=webadrep");
                   con.setAutoCommit(false);
                   String deleteDetailedFacilityDataSql = QueriesHelper.getDeleteDetailedFacilityAuditDataSQL();
                   String deleteIataSql = QueriesHelper.getDeleteIataAuditDataSQL();
                   deleteDetailedFacilityStmt = con.prepareStatement(deleteDetailedFacilityDataSql);
                   deleteDetailedFacilityStmt.setDate(1, cutOffDate);
                   deleteDetailedFacilityStmt.executeUpdate();
                   deleteIataStmt = con.prepareStatement(deleteIataSql);
                   deleteIataStmt.setDate(1, cutOffDate);
                   deleteIataStmt.executeUpdate();
                   con.commit();
                   con.setAutoCommit(true);
                   System.out.println("Successfully deleted IATA data");          
              catch (SQLException e)
                   throw new DatabaseException("Unable to delete facility and IATA audit data.", e);
              finally
                   try
                        if(deleteDetailedFacilityStmt != null )
                             deleteDetailedFacilityStmt.close();
                        if(deleteIataStmt != null)
                             deleteIataStmt.close();
                        ds.releaseConnection(con);     
                   } catch (SQLException e1)
                        e1.printStackTrace();
         3)try
                        detailedFacilityAuditDataList = AuditFileParser.parseFile(auditFile, regex);
                        //The following method inserts the data from the audit data file
                        //into the CCNT Audit Reports Database.
                        AuditDAO.setDetailedAuditData(detailedFacilityAuditDataList, dbUrl );
                        //In order to reflect updated results, the data older than previous
                        //5 days (not including Sundays, need to be deleted before final
                        //percentages are calculated.
                        Calendar cal = Calendar.getInstance();
                        if(cal.get(Calendar.DAY_OF_WEEK) == Calendar.SUNDAY)
                             cal.roll(Calendar.DATE, -5);
                        else
                             cal.roll(Calendar.DATE, -6);
                        AuditDAO.deleteStaleData(new Date(cal.getTimeInMillis()), dbUrl);
                        AuditDAO.updateTotals(dbUrl);
                        System.out.println("Audit Data Manager process completed successfully");

  • Date Difference Calculation in BW3.5

    Hi
    We are calculating date differences between 2 dates i.e. Delivery Date - System Date.For System date we used variable exit to derive the value.But when we create CKF on Delivery Date,we necessary have to keep date field in Drilldown(in rows).But reports needs to give Overview while including date field in rows removes the granularity.
    Is thier any other way we can handle this situation.
    Regards
    Praveen

    You have to put ur delivery date in Rows if u r doing the Formula variable with replacement path. There is no option.
    Khaja

  • Results analysis data is calculated through sales order

    Hi All,
    I m trying to calculate WIP of one process Order through KKAX. But I am getting the below error
    Results analysis data is calculated through sales order 300002423 001000
    Message no. KJ112
    Diagnosis
    The order you selected for WIP calculation or results analysis is assigned to a sales order. A results analysis key was entered for this sales order.
    System Response
    The system determines results analysis data for orders assigned to sales order items through the results analysis for the sales order.
    Procedure
    Carry out results analyis on sales order 300002423 001000.
    This process Order is related to Sales Order and I have checked the Result Analysis key is attached to Sales Order.
    Please help me out in this issue.
    Thanks!
    Regards,
    Vivek

    Hi,
    I was getting the above error because a RA key was selected ar Sales Order, Now what I have done is I have removed the RA Key from Sales Order, there is already a RA key attached to Process Order. Now When i am calculating KKAX (WIP) I am getting below message
    The order is not a WIP element
    Message no. KJ148
    I have done this because my client is not using KKA3(RA fro Sales Order)
    Please help!!!!!!!!!
    Thanks!
    Regards,
    Vivek Srivastava

  • Delivery Date Re-Calculation in Stock Transfer Order PO

    Hi All,
    We have Transportation scheduling activated and maintain 'Transit Duration Times' in our Routes (Populated 'TransitDur' field in Route <0VTC>) R/3 46c
    When we create a stock transfer order the 'Delivery Date' in the STO PO is determined by the 'TransitDur' (Transit Duration) value maintained in the route between the 'Supplying and 'Receiving' plants.
    After creating the STO PO, if the delivery is delayed and we need to reflect this change in the STO, when we attempt to change the delivery date - the system re-calculates the delivery date using the date on which the changes are made as the starting point and extending out the full length of time based on the value in the 'TransitDur' field in the Route.
    This means we are not able to change the delivery date in the STO PO to a date that is later than the original delivery date but still earlier than the date re-calculated by the system using the date on which the changes are made as the starting point.
    Is anyone aware of any functionality/config which allows you to manually change the delivery date in the STO PO - but not be restricted to changing the date by the value in the 'TransitDur' field of the Route, when it is a subsequent change to the PO and greater than the original date determined by the system?
    Thanks,
    Ravelle

    A solution has not been identified for this issue...query closed.

  • Explain How delivery date is calculated using backward and forward schedul

    How can anyone please explain how delivery date is calculated using forward and backward scheduling
    I want to have it broken down into the following steps
    for eg for delivery date calculation following dates are used
    Material Availabilty Date
    Material Staging Date
    Pick/pack time
    Transportation PLanning date
    Loading date
    Goods issue date
    Transit Date
    Delivery Date
    Can some one please give me an example and explain wht these dates are
    for eg customer needs delivery date on  11/20/2008
    how would the system cacluate whether it can meet the delivery date using backward scheduling
    and if it doesnt meet how does the system do the forward scheduling
    also i am not clear with the following dates
    material avaialibilty date
    material staging date
    transportation date
    can some one please explain me all this in detail
    Thanks

    Hi,
    Basically this is the CRSD(Customer requested ship date logic)logic in which system calculates the ship date depends upon the material availability. If material is available system calculates ship date on the basis of master data maintained in customisation.Master data is maintained in the  following link.
    If material is not available then system takes into consideration vendor delivery date & then calculate customer ship date.
    Please go through the link in SPRO
    LE-Shipping -Basic shipping functions-Scheduling -Delivery scheduling & Transportation scheduling-Maintain duration.
    In customisation following data is maintained
    Material Availabilty Date
    Material Staging Date
    Pick/pack time
    Transportation PLanning date
    Loading date
    Goods issue date
    Transit Date
    Delivery Date
    Hope you got the idea of CRSD calculation
    Regards,
    Prashant.

  • Export Preset to Rename with Current system Date?

    Hi All,
    I'm trying to build some export presets with a naming convention to include the current system date, eg: YYYYMMM-Title-Custom Text. This convention is oftened required for photo club, local, national & international photo competitions. The only date function I can find is the 'capture date'. Is there a way to modify the Export Filename Template Editor to include 'current system date' ??
    Edit:
    Sorry forgot to add, LR5.3, Mas OS 10.9.1
    Regards
    Craig

    You need to click the 'Define' button and choose Date/Time Now (Custom Metadata):
    If you need more help, please contact me outside the forum - thanks.
    Rob

Maybe you are looking for

  • Magnifying glass zoom tool

    Hi, Some of the new features in Edge Animate CC 2014 are welcome additions, particularly the scroll and zoom tools, but unfortunately the magnifying glass tool only seems to zoom in but not out. Select magnifying glass and click to zoom in, select ma

  • How could you use an iPad2 to view (without being able to control) what is projected from a teacher laptop?

    A low-vision student with an iPad would like to be able to see on the iPad what the teacher is displaying on the electronic whiteboard. Is there a device or app that can accommodate this student? We would expect that the student would not be able to

  • DPM 2010

    Hi, I have a DPM 2010 Server which is doing extremely strange things.  It says I am running out of disk space, my allocated disk is 12TB and the actual used space is 7TB.  I can't see which server is taking up more capacity than it should and am s

  • No sound in app

    no sound in app but sound ok during call

  • Pictures, Videos, Data on Iphone 5

    Hello. I have an iphone 5 with Verizon. I back up my data with the icloud platform through apple. This weekend I was recording people wake boarding and my iphone shut down stating that I do not have enought memory. I went to settings, icloud, storage