Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8511

Re: Problem in validity of Cost Run

$
0
0

Hi Ankit,

 

 

 

Please find the logic below and for implementing it Please take help of your ABAPER.

 

 

 

IF SY-TCODE = 'CO01' OR SY-TCODE = 'CO40'. "or Sy-Tcode = 'CO41'.   TABLES : CAUFVD .   DATA : F_LPLPR TYPE CK_LPLPR .   DATA : V_BUPER TYPE BUPER,         V_PERIOD TYPE BUPER,         V_PRD TYPE BUPER,         V_PLNUM TYPE PLNUM,         V_PSTTR TYPE PSTTR,         V_MONAT TYPE MONAT,         V_GJAHR TYPE GJAHR.   TYPES : BEGIN OF TY_MBEW,           MATNR TYPE MATNR,           BWKEY TYPE BWKEY,           PPRDL TYPE CK_PPRDL,           PDATL TYPE CK_PDATL,           END OF TY_MBEW.   DATA : IT_MBEW TYPE STANDARD TABLE OF TY_MBEW INITIAL SIZE 0,         WA_MBEW TYPE TY_MBEW.   DATA : IT_DYNPFIELDS  TYPE STANDARD TABLE OF DYNPREAD  ,         WA_DYNPFIELDS  TYPE DYNPREAD ,         WA1_DYNPFIELDS TYPE DYNPREAD ,         WA2_DYNPFIELDS TYPE DYNPREAD ,         WA3_DYNPFIELDS TYPE DYNPREAD .   WA_DYNPFIELDS-FIELDNAME = 'CAUFVD-AUART' .   APPEND WA_DYNPFIELDS TO IT_DYNPFIELDS .   WA_DYNPFIELDS-FIELDNAME = 'CAUFVD-MATNR' .   APPEND WA_DYNPFIELDS TO IT_DYNPFIELDS .   WA_DYNPFIELDS-FIELDNAME = 'CAUFVD-WERKS' .   APPEND WA_DYNPFIELDS TO IT_DYNPFIELDS .   GET PARAMETER ID 'PAF' FIELD V_PLNUM.   SELECT SINGLE PSTTR FROM PLAF INTO V_PSTTR WHERE PLNUM = V_PLNUM.   CALL FUNCTION 'GET_CURRENT_YEAR'     EXPORTING       BUKRS = 'HNGL'       DATE  = V_PSTTR     IMPORTING       CURRM = V_MONAT       CURRY = V_GJAHR *    PREVM = *    PREVY =     .   CONCATENATE V_MONAT V_GJAHR INTO V_BUPER.   CALL FUNCTION 'DYNP_VALUES_READ'     EXPORTING       DYNAME    = 'SAPLCOKO1'       DYNUMB    = '0115'     TABLES       DYNPFIELDS = IT_DYNPFIELDS     EXCEPTIONS       OTHERS    = 1.   IF SY-SUBRC <> 0.     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.   ENDIF.   LOOP AT IT_DYNPFIELDS INTO WA_DYNPFIELDS .     IF WA_DYNPFIELDS-FIELDNAME = 'CAUFVD-AUART' AND ( WA_DYNPFIELDS-FIELDVALUE = 'BEER' OR WA_DYNPFIELDS-FIELDVALUE = 'FODA' OR                                                       WA_DYNPFIELDS-FIELDVALUE = 'HOUH' OR WA_DYNPFIELDS-FIELDVALUE = 'LIQR' OR                                                       WA_DYNPFIELDS-FIELDVALUE = 'PHRM' OR WA_DYNPFIELDS-FIELDVALUE = 'SOFD' OR                                                       WA_DYNPFIELDS-FIELDVALUE = 'TOIL' OR WA_DYNPFIELDS-FIELDVALUE = 'WAIL' OR                                                       WA_DYNPFIELDS-FIELDVALUE = 'WIAL' OR WA_DYNPFIELDS-FIELDVALUE = 'PRFD' OR                                                       WA_DYNPFIELDS-FIELDVALUE = 'CLQR'). *      V_BUPER = V_PSTTR+0(6).       READ TABLE IT_DYNPFIELDS INTO WA2_DYNPFIELDS WITH KEY FIELDNAME = 'CAUFVD-MATNR' .       READ TABLE IT_DYNPFIELDS INTO WA3_DYNPFIELDS WITH KEY FIELDNAME = 'CAUFVD-WERKS' .       SELECT SINGLE LPLPR FROM MBEW INTO F_LPLPR WHERE MATNR = WA2_DYNPFIELDS-FIELDVALUE  AND                                                       BWKEY = WA3_DYNPFIELDS-FIELDVALUE .       SELECT MATNR             BWKEY             PPRDL             PDATL FROM MBEW INTO TABLE IT_MBEW WHERE MATNR = WA2_DYNPFIELDS-FIELDVALUE AND                                                       BWKEY = WA3_DYNPFIELDS-FIELDVALUE .       LOOP AT IT_MBEW INTO WA_MBEW.         SHIFT WA_MBEW-PPRDL LEFT DELETING LEADING '0'.         CONCATENATE '0' WA_MBEW-PPRDL INTO V_PRD.         CONCATENATE V_PRD WA_MBEW-PDATL INTO V_PERIOD.       ENDLOOP.       IF V_PERIOD NE V_BUPER.         MESSAGE 'Cost Run Not Completed for Current period' TYPE 'E'.       ENDIF.       IF F_LPLPR EQ 0.         MESSAGE 'Cost Run Not Completed for Current period' TYPE 'E'.       ENDIF. *      IF SY-SUBRC = 0 . *        IF F_LPLPR = 0 . *          MESSAGE '  Current Planned Price is 0.00 for the Material , Production Order cannot be created ' TYPE 'E' . *          NO_UPDATE = 'X' . *        ENDIF. *      ENDIF.     ENDIF .   ENDLOOP. ENDIF.

 

 

 

Hope this will help you.

 

 

 

Regards Eugene


Viewing all articles
Browse latest Browse all 8511

Trending Articles