Friday 29 November 2013

NOVEMBER 29

Today it was the last day of my training. I got my all the three copies of my report file , which I had completed simultaneously, reviewed by my mentor for any changes. One report copy was to be submitted in the office and other two for college use.  After the report was finalized, I got it signed by my mentor and then presented it to the DGM (programmimg) ,Head of the ABAP team of Project ICE.
He interviewed me for the basics of SAP/ABAP and its features as well as whatever else I have learned there during my training session.
After a complete interview of nearly 35 minutes he also approved my training and I received my training certificate.

Thursday 28 November 2013

NOVEMBER 28

All these problems were resolved with the help of my mentor  as well as through the use of  internet.
Finally after a long and hard work of three four days, the project worked successfully as required, taking input from the user at different authoritative level and giving the desired output.
I got my project checked by my mentor. And it was finally accepted there.No more correction was required and all the important aspects of the system were implemented in this project.

The only  constraint of my project is that it could be executed only on the SAP software within the organization. My project was designed for a particular organization, ONGC, and so it could not be run outside the organization. 

Wednesday 27 November 2013

NOVEMBER 27

The testing and debugging continued today. Individual modules performed the desired function perfectly well, but while creating link it led to certain problems. Problems were also faced in creating smart forms ,used for print purpose.
All the changes as asked were implemented by now, and the project was tested for its run time error. Even the minute details were noticed thoughtfully and corrected till now. A complete project was now ready for its use.

Tuesday 26 November 2013

NOVEMBER 26

I got my work reviewed by my mentor, he asked me to add certain validations. Like, maximum marks limit which should not exceed 100, display of record to higher authority was to be limited, i.e., a manager could view the list of employees of his own department only. Initially I had made entire list of employees visible to any manager logged in and a message was displayed when department of employees varied from those of manager logged in. So, I was given a better idea to reduce the employee visibility list. Similar kind of small and notifying changes were made today.

Monday 25 November 2013

NOVEMBER 25

By now the individual modules for the project  had been created and tested individually. Now connectivity among all the modules and integration testing remained. From today , I started creating link between each modules and tested it for any error. The error encountered were thoroughly examined and resolved.
Kinds of error I faced were like, data not being retrieved from DDIC tables, while navigating from one screen to another unwanted data fetched, or previously fetched data still being displayed instead of new entries, date format also created a lot of trouble, desired screen do not appears, etc.

Friday 22 November 2013

NOVEMBER 22


*&---------------------------------------------------------------------*
*&      TAB 119 - VIEW  MARKS AND RESULT
*&---------------------------------------------------------------------*
*       TEXT
*----------------------------------------------------------------------*
*&SPWIZARD: FUNCTION CODES FOR TABSTRIP 'TAB'
CONSTANTS: BEGIN OF C_TAB,
             TAB1 LIKE SY-UCOMM VALUE 'TAB_FC1',
             TAB2 LIKE SY-UCOMM VALUE 'TAB_FC2',
           END OF C_TAB.
*&SPWIZARD: DATA FOR TABSTRIP 'TAB'
CONTROLS:  TAB TYPE TABSTRIP.
DATA:      BEGIN OF G_TAB,
             SUBSCREEN   LIKE SY-DYNNR,
             PROG        LIKE SY-REPID VALUE 'ZPROJECT_EAS',
             PRESSED_TAB LIKE SY-UCOMM VALUE C_TAB-TAB1,
           END OF G_TAB.

*&SPWIZARD: OUTPUT MODULE FOR TS 'TAB'. DO NOT CHANGE THIS LINE!
*&SPWIZARD: SETS ACTIVE TAB
MODULE TAB_ACTIVE_TAB_SET OUTPUT.
  TAB-ACTIVETAB = G_TAB-PRESSED_TAB.
  CASE G_TAB-PRESSED_TAB.
    WHEN C_TAB-TAB1.
      G_TAB-SUBSCREEN = '0121'.
    WHEN C_TAB-TAB2.
      G_TAB-SUBSCREEN = '0122'.
    WHEN OTHERS.
*&SPWIZARD:      DO NOTHING
  ENDCASE.
ENDMODULE.

*&SPWIZARD: INPUT MODULE FOR TS 'TAB'. DO NOT CHANGE THIS LINE!
*&SPWIZARD: GETS ACTIVE TAB
MODULE TAB_ACTIVE_TAB_GET INPUT.
  OK_CODE = SY-UCOMM.
  CASE OK_CODE.
    WHEN C_TAB-TAB1.
      G_TAB-PRESSED_TAB = C_TAB-TAB1.
    WHEN C_TAB-TAB2.
      G_TAB-PRESSED_TAB = C_TAB-TAB2.
    WHEN OTHERS.
*&SPWIZARD:      DO NOTHING
  ENDCASE.
ENDMODULE.






*&---------------------------------------------------------------------*
*&      MODULE  STATUS_0123  OUTPUT
*&---------------------------------------------------------------------*
*       TEXT
*----------------------------------------------------------------------*
MODULE STATUS_0123 OUTPUT.
  SET PF-STATUS '123'.
  SET TITLEBAR '123'.

  TYPE-POOLS : VRM.


  SELECT *
     FROM ZPROJECT_YEAR
    INTO TABLE YEAR_DETAILS WHERE EMP_ID = ZPROJECT_EMP-EMP_ID.

  LOOP AT YEAR_DETAILS INTO TEMP_YEAR.

    WA_LISTBOX-KEY = TEMP_YEAR-START_DATE.
    WA_LISTBOX-TEXT = TEMP_YEAR-START_DATE.
    APPEND WA_LISTBOX TO IT_LISTBOX.
  ENDLOOP.

  LD_FIELD = 'START_DATE'.
  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      ID     = LD_FIELD
      VALUES = IT_LISTBOX.
  REFRESH IT_LISTBOX.

  SELECT *
       FROM ZPROJECT_YEAR
    INTO TABLE YEAR_DETAILS WHERE EMP_ID = ZPROJECT_EMP-EMP_ID.

  LOOP AT YEAR_DETAILS INTO TEMP_YEAR.

    WA_LISTBOX-KEY = TEMP_YEAR-END_DATE.
    WA_LISTBOX-TEXT = TEMP_YEAR-END_DATE.
    APPEND WA_LISTBOX TO IT_LISTBOX.
  ENDLOOP.

  LD_FIELD = 'END_DATE'.
  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      ID     = LD_FIELD
      VALUES = IT_LISTBOX.
  REFRESH IT_LISTBOX.


  SELECT SINGLE EMP_ID EMP_NAME DEPT_NAME FROM ZPROJECT_EMP
  INTO (ZPROJECT_RESULT-EMP_ID , ZPROJECT_RESULT-EMP_NAME , ZPROJECT_RESULT-DEPT_NAME)
  WHERE EMP_ID = USER_ID.

Thursday 21 November 2013

NOVEMBER 21

Message class had been created using transaction SE91. To display a message repeatedly we will need to type the entire message again and again. To avoid this, we create a message class. in which a particular message is given the number. Now whenever we need to display that particular message we can call the message class and the message is displayed.


 

message class created


    
Example code to show the use of message class:
 
  ELSEIF USER_ID EQ TEMP_ID AND PASSWORD EQ '   '.
        MESSAGE I000(ZMSG_EAS).

      ELSEIF USER_ID EQ TEMP_ID AND NOT PASSWORD EQ TEMP_PASS.
        CLEAR PASSWORD.
        MESSAGE I001(ZMSG_EAS).

      ELSE.
        CLEAR: USER_ID , PASSWORD.
        MESSAGE I002(ZMSG_EAS).
        CLEAR : TEMP_ID , TEMP_PASS.


      IF TOTAL GT 100.
        MESSAGE I003(ZMSG_EAS).
        MESSAGE I004(ZMSG_EAS).

  INSERT ZPROJECT_DETAILS FROM TEMP_DETAILS.
          MESSAGE I005(ZMSG_EAS).