on 11-12-2009 1:48 PM
hello All
Scenario
sc created by x user and it has two items
one item PO created successfully
another item was in the purchaser work list for cockpit
in the mean time, admin team deleted X user who requested a sc .
I am a purchaser . i can do sourcing in the cock pit successfully in other environment.
FYI - As i said the requestor of sc has been deleted.
Can purchaser can do sourcing for that second item or it will not allow to the sourcing int he cockpit.
fyi:- i could assign sos and PO created but it is not happening me to do soucrcing int he cockpit for the second item. it is like hide and seek game in the cockpit with the second item.NO PO created .
is it due to sc requestor was deleted?
BR
Muthu
Hi,
You are right because of the deleted requestor, system is not letting you create the PO. One thing you can do have your developer create a simple Z report create for you so that when ever you have open items and some one is leaving , you can change the requestor and goods recipient for that user with the new person.
Other wise the only other SOX complied process will be the purchaser needs to mark the shopping cart complete in the sourcing, that will close the requisition and then let the new requestor enter the shopping cart once again.
Hope it will help !!!
Thanks
Padhi
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Please use this below program to change the user id from one person to other. This was given by sap earlier.
{REPORT Z_SRM_CHANGE_PGUID_002.
TABLES: crmd_partner,
but000.
DATA: lt_relationships LIKE bapibus1006_relations OCCURS 0,
lt_return LIKE bapiret2 OCCURS 0,
cs_relationship LIKE bapibus1006_relations,
iv_partner_guid TYPE bapibus1006_head-partnerguid.
DATA: l_partner_org TYPE bu_partner,
l_addr_num TYPE ad_addrnum,
l_addresses_int LIKE bapibus1006_addresses_int
OCCURS 0 WITH HEADER LINE,
l_return LIKE bapiret2 OCCURS 0.
DATA: lt_partner TYPE STANDARD TABLE OF bbp_pds_partner,
lt_partner_c TYPE STANDARD TABLE OF bbp_pds_partner,
wa_partner TYPE bbp_pds_partner,
lt_but000 TYPE TABLE OF but000,
po_header LIKE bbp_pds_po_header_d,
sc_header LIKE bbp_pds_sc_header_d,
cf_header LIKE bbp_pds_conf_header_d,
bid_header LIKE bbp_pds_bid_header_d,
ctr_header LIKE bbp_pds_ctr_header_d,
newguid LIKE crmd_partner-guid.
PARAMETERS: p_number LIKE crmd_orderadm_h-object_id OBLIGATORY,
p_ptype LIKE crmd_orderadm_h-process_type OBLIGATORY
MATCHCODE OBJECT bbp_process_type,
oldbp LIKE but000-partner OBLIGATORY,
newbp LIKE but000-partner OBLIGATORY,
p_test AS CHECKBOX.
START-OF-SELECTION.
Need to call BP GUID of newbp
SELECT SINGLE partner_guid
FROM but000
INTO newguid
WHERE partner = newbp.
call Document data.
CASE p_ptype.
WHEN 'ECPO'.
CALL FUNCTION 'BBP_PD_PO_GETDETAIL'
EXPORTING
i_object_id = p_number
IMPORTING
e_header = po_header
TABLES
e_partner = lt_partner.
PERFORM get_chgversion_partner TABLES lt_partner_c
USING po_header-guid.
IF NOT lt_partner_c[] IS INITIAL.
APPEND LINES OF lt_partner_c TO lt_partner.
ENDIF.
WHEN 'SHC'.
CALL FUNCTION 'BBP_PD_SC_GETDETAIL'
EXPORTING
i_object_id = p_number
IMPORTING
e_header = sc_header
TABLES
e_partner = lt_partner.
PERFORM get_chgversion_partner TABLES lt_partner_c
USING sc_header-guid.
IF NOT lt_partner_c[] IS INITIAL.
APPEND LINES OF lt_partner_c TO lt_partner.
ENDIF.
WHEN 'CONF'.
CALL FUNCTION 'BBP_PD_CONF_GETDETAIL'
EXPORTING
i_object_id = p_number
IMPORTING
e_header = cf_header
TABLES
e_partner = lt_partner.
PERFORM get_chgversion_partner TABLES lt_partner_c
USING cf_header-guid.
IF NOT lt_partner_c[] IS INITIAL.
APPEND LINES OF lt_partner_c TO lt_partner.
ENDIF.
WHEN 'BID'.
CALL FUNCTION 'BBP_PD_BID_GETDETAIL'
EXPORTING
i_object_id = p_number
IMPORTING
e_header = bid_header
TABLES
e_partner = lt_partner.
PERFORM get_chgversion_partner TABLES lt_partner_c
USING bid_header-guid.
IF NOT lt_partner_c[] IS INITIAL.
APPEND LINES OF lt_partner_c TO lt_partner.
ENDIF.
WHEN 'PCTR'.
CALL FUNCTION 'BBP_PD_CTR_GETDETAIL'
EXPORTING
i_object_id = p_number
IMPORTING
e_header = ctr_header
TABLES
e_partner = lt_partner.
PERFORM get_chgversion_partner TABLES lt_partner_c
USING ctr_header-guid.
IF NOT lt_partner_c[] IS INITIAL.
APPEND LINES OF lt_partner_c TO lt_partner.
ENDIF.
ENDCASE.
LOOP AT lt_partner INTO wa_partner WHERE partner_id = oldbp.
IF p_test NE 'X'.
UPDATE crmd_partner
SET partner_no = newguid
WHERE partner_guid = wa_partner-partner_guid.
Change address number of CRMD_PARTNER, in order to update ADDR3_DATA.
SELECT SINGLE persnumber
FROM but000
INTO wa_partner-addr_no
WHERE partner_guid = newguid.
UPDATE crmd_partner
SET addr_np = wa_partner-addr_no
WHERE partner_guid = wa_partner-partner_guid.
iv_partner_guid = newguid.
Get organization BP number for responsible requestor.
CALL FUNCTION 'BUPA_RELATIONSHIPS_GET'
EXPORTING
businesspartnerguid = iv_partner_guid
TABLES
et_relationships = lt_relationships
et_return = lt_return.
READ TABLE lt_relationships INTO cs_relationship INDEX 1.
l_partner_org = cs_relationship-partner1.
get address from BUT020
CALL FUNCTION 'BUPA_ADDRESSES_GET'
EXPORTING
iv_partner = l_partner_org
IMPORTING
ev_standard_addrnumber = l_addr_num
TABLES
et_addresses = l_addresses_int
et_return = l_return.
IF sy-subrc = 0.
Update addr_nr
UPDATE crmd_partner SET addr_nr = l_addr_num
WHERE partner_guid = wa_partner-partner_guid.
Write: Display result.
WRITE: / wa_partner-partner_guid,
wa_partner-p_guid,
wa_partner-partner_no,
' has been updated'.
ELSE.
WRITE: 'ERROR updating database'.
ENDIF.
ELSE.
WRITE: / wa_partner-partner_guid,
wa_partner-p_guid,
wa_partner-partner_no,
' will be updated'.
ENDIF.
COMMIT WORK AND WAIT.
ENDLOOP.
IF sy-subrc <> 0.
WRITE: 'BP number of old requestor is not correct'.
ENDIF.
*&----
*
*& Form get_chgversion_partner
*&----
*
text
*----
*
-->P_LT_PARTNER_C text
*----
*
FORM get_chgversion_partner TABLES p_lt_partner_c STRUCTURE bbp_pds_partner "Bitte korrekten Namen für <...> einfügen.
USING p_guid TYPE crmt_object_guid.
DATA: lt_it_header_guids TYPE TABLE OF bbp_guid_tab,
ls_it_header_guids LIKE LINE OF lt_it_header_guids,
lt_et_pdlist TYPE TABLE OF bbp_pds_version_list_internal,
ls_et_pdlist LIKE LINE OF lt_it_header_guids,
ls_bbp_pds_header TYPE bbp_pds_header.
ls_it_header_guids-guid = p_guid.
APPEND ls_it_header_guids TO lt_it_header_guids.
get the actual change version
CALL FUNCTION 'BBP_PROCDOC_GET_CHANGE_VERSION'
TABLES
it_header_guids = lt_it_header_guids
et_pdlist = lt_et_pdlist.
we need the guid of the change version
READ TABLE lt_et_pdlist INDEX 1 INTO ls_et_pdlist.
IF sy-subrc = 0.
get the details of the change version
CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
EXPORTING
i_guid = ls_et_pdlist-guid
IMPORTING
e_header = ls_bbp_pds_header
TABLES
e_partner = p_lt_partner_c.
ENDIF.
ENDFORM. " get_chgversion_partner}
Edited by: Autobots 21 on Nov 13, 2009 3:42 PM
Thanks
Again i reviewed the issue. later i realised user was not deleted from organisation struture
requestor of the cart is still available not removed. I have fatfigured in su01 and though user was deleted .
--
user who created sc existing in org structure. contract is fine. but i could assign contract int he cockpit.but the next screen become blank. cart again appearing in the cockpit.
only one item has this typical issue
br
muthu
User | Count |
---|---|
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.