2024 Oct 11 5:20 AM - edited 2024 Oct 11 5:21 AM
Hi All,
We are trying to update the issuing storage location while transferring the stock between two internal storage locations. Right now in the purchase requisition the issue storage location is shown as blank.
Even after maintaining the special procurement type config BADI is not triggering. Can you let me know if there is any option to update the issuing storage location in MD01 ?
Regards,
Manoj
Request clarification before answering.
For MD01 have used BADI MD_EXT_SUP / Method IF_EX_MD_EXT_SUP~GET_SUPPLYING_SL
For MD01n transaction resolved this by using the BADI PPH_MRP_RUN_BADI / Method IF_PPH_MRP_RUN_BADI~PURREQ_BEFORE_UPDATE_ADJUST
Code for MD01n Badi Imp :
METHOD if_pph_mrp_run_badi~purreq_before_update_adjust
BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT
OPTIONS READ-ONLY
USING ztl_gbl_param.
* Data Declaration
DECLARE lv_rows INTEGER;
DECLARE lv_doc_type CHAR(4);
DECLARE lv_issuing_sloc CHAR(4);
* Execute logic only If CT_EBAN_NEW is not initial
lv_rows = record_count( :ct_eban_new );
IF lv_rows <> 0 THEN
* Purchase Requisition Type -
lv_doc_type = 'XXXX'.
* Issuing Storage Location --> Fetch Issuing Storage Location from the GLobal Parameters Table
lv_issuing_sloc = 'ZXXX'
* Check 'XXXX' document exists or not --> Execute custom logic only if entry is present
SELECT COUNT (*) INTO lv_rows FROM :ct_eban_new WHERE bsart = :lv_doc_type;
If lv_rows <> 0 THEN
* Default Issuing Storage location to 'XXXX' ONLY for the ZXXX Document Types
ct_eban_new = SELECT a.the_index, a.doc_key_tmp, a.bnfpo, a.bsart,
a.bstyp, a.bsakz, a.loekz, a.statu, a.estkz,
a.frgkz, a.frgzu, a.frgst, a.ekgrp, a.ernam,
a.erdat, a.afnam, a.lastchangedatetime, a.creationdate,
a.creationtime, a.txz01, a.matnr, a.ematn,
a.werks, a.lgort, a.bednr, a.matkl,
a.reswk, a.menge, a.meins, a.bumng,
a.badat, a.lpein, a.lfdat, a.frgdt,
a.webaz, a.preis, a.peinh, a.pstyp,
a.knttp, a.kzvbr, a.kflag, a.vrtkz,
a.twrkz, a.wepos, a.weunb, a.repos,
a.lifnr, a.flief, a.ekorg, a.vrtyp,
a.konnr, a.ktpnr, a.infnr, a.zugba,
a.qunum, a.qupos, a.dispo, a.sernr,
a.bvdat, a.batol, a.bvdrk, a.ebeln,
a.ebelp, a.bedat, a.bsmng, a.lblni,
a.bwtar, a.xoblr, a.ebakz, a.rsnum,
a.sobkz, a.arsnr, a.arsps, a.fixkz,
a.bmein, a.revlv, a.vorab, a.packno,
a.kanba, a.bpueb, a.cuobj, a.frggr,
a.frgrl, a.aktnr, a.charg, a.umsok,
a.verid, a.fipos, a.fistl, a.geber,
a.kzkfg, a.satnr, a.mng02, a.dat01,
a.attyp, a.adrnr, a.adrn2, a.kunnr,
a.emlif, a.lblkz, a.kzbws, a.waers,
a.idnlf, a.gsfrg, a.mprof, a.kzfme,
a.spras, a.techs, a.mfrpn, a.mfrnr,
a.emnfr, a.fordn, a.fordp, a.plifz,
a.berid, a.uzeit, a.fkber, a.grant_nbr,
a.memory, a.banpr, a.rlwrt, a.blckd,
a.revno, a.blckt, a.beswk, a.eprofile,
a.eprefdoc, a.eprefitm, a.gmmng, a.wrtkz,
:lv_issuing_sloc as reslo, a.kblnr,
a.kblpos, a.prio_urg, a.prio_req,
a.memorytype, a.anzsn, a.mhdrz, a.iprkz,
a.nodisp, a.srm_contract_id, a.srm_contract_itm,
a.budget_pd, a.eldat, a.iuid_relevant,
a.sgt_scat, a.sgt_rcat, a.fsh_season_year,
a.fsh_season, a.fsh_collection, a.fsh_theme
FROM :ct_eban_new as a
WHERE a.bsart = :lv_doc_type
UNION
SELECT a.the_index, a.doc_key_tmp, a.bnfpo, a.bsart,
a.bstyp, a.bsakz, a.loekz, a.statu, a.estkz,
a.frgkz, a.frgzu, a.frgst, a.ekgrp, a.ernam,
a.erdat, a.afnam, a.lastchangedatetime, a.creationdate,
a.creationtime, a.txz01, a.matnr, a.ematn,
a.werks, a.lgort, a.bednr, a.matkl,
a.reswk, a.menge, a.meins, a.bumng,
a.badat, a.lpein, a.lfdat, a.frgdt,
a.webaz, a.preis, a.peinh, a.pstyp,
a.knttp, a.kzvbr, a.kflag, a.vrtkz,
a.twrkz, a.wepos, a.weunb, a.repos,
a.lifnr, a.flief, a.ekorg, a.vrtyp,
a.konnr, a.ktpnr, a.infnr, a.zugba,
a.qunum, a.qupos, a.dispo, a.sernr,
a.bvdat, a.batol, a.bvdrk, a.ebeln,
a.ebelp, a.bedat, a.bsmng, a.lblni,
a.bwtar, a.xoblr, a.ebakz, a.rsnum,
a.sobkz, a.arsnr, a.arsps, a.fixkz,
a.bmein, a.revlv, a.vorab, a.packno,
a.kanba, a.bpueb, a.cuobj, a.frggr,
a.frgrl, a.aktnr, a.charg, a.umsok,
a.verid, a.fipos, a.fistl, a.geber,
a.kzkfg, a.satnr, a.mng02, a.dat01,
a.attyp, a.adrnr, a.adrn2, a.kunnr,
a.emlif, a.lblkz, a.kzbws, a.waers,
a.idnlf, a.gsfrg, a.mprof, a.kzfme,
a.spras, a.techs, a.mfrpn, a.mfrnr,
a.emnfr, a.fordn, a.fordp, a.plifz,
a.berid, a.uzeit, a.fkber, a.grant_nbr,
a.memory, a.banpr, a.rlwrt, a.blckd,
a.revno, a.blckt, a.beswk, a.eprofile,
a.eprefdoc, a.eprefitm, a.gmmng, a.wrtkz,
a.reslo as reslo, a.kblnr,
a.kblpos, a.prio_urg, a.prio_req,
a.memorytype, a.anzsn, a.mhdrz, a.iprkz,
a.nodisp, a.srm_contract_id, a.srm_contract_itm,
a.budget_pd, a.eldat, a.iuid_relevant,
a.sgt_scat, a.sgt_rcat, a.fsh_season_year,
a.fsh_season, a.fsh_collection, a.fsh_theme
FROM :ct_eban_new as a
WHERE a.bsart <> :lv_doc_type;
END IF ;
END IF ;
ENDMETHOD.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
100 | |
15 | |
9 | |
9 | |
5 | |
3 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.