Material Groupwise authorization for purchase requisation creation
Gurus
My client want to give authorization for creating purchase requisation - material groupwise. i.es for material group 1,2,3,4,5,purchase group 100 has the authority to create the PRs and for material group 6,7 & 9 it should be with purchase group 101
How to fix this problem.
Atul kulkarni
Here comes the standard solution
1- In transaction OMSF, you will have to create an Authorization Group for each Material Group.
2- Assign this Authorization Group to User roles.To include the Authorization group in user role, add t-code MM03 - material display.
3- Using Standrad Business Addin "BAdI: Define Follow-On Processing for Purchase Requisitions" you can ask your ABAPer to make a simple logic to validate the material group assigned to PR creater's profile.
It should solve the problem.
Hope it helps,
Fizzah
Edited by: Fizzah Mustafeez on Apr 26, 2010 2:49 PM
Similar Messages
-
Getting errors when iam using BAPI_PO_CREATE1 for Purchase Order creation
Hi sap Gurus,
I am getting Errors when iam using BAPI_PO_CREATE1 for Purchase Order creation that Material (144) does not exist but it is alreardy maintained in MM01.
I dont get how it is coming.and what are the mandatory fields in bapi BAPI_PO_CREATE1 in item level .that is too material only.
pls let me know .
thanks in advance.Hi,
Check the sample code..
report zpo_test .
*DATA DECLARATION
constants : c_x value 'X'.
*Structures to hold PO header data
data : header like bapimepoheader ,
headerx like bapimepoheaderx .
*Structures to hold PO account data
data : account like bapimepoaccount occurs 0 with header line ,
accountx like bapimepoaccountx occurs 0 with header line .
*Internal Tables to hold PO ITEM DATA
data : item like bapimepoitem occurs 0 with header line,
itemx like bapimepoitemx occurs 0 with header line,
*Internal table to hold messages from BAPI call
return like bapiret2 occurs 0 with header line,
*Internal table to hold messages from BAPI call
pocontractlimits like bapiesucc occurs 0 with header line.
data : w_header(40) value 'PO Header',
purchaseorder like bapimepoheader-po_number,
delivery_date like bapimeposchedule-delivery_date.
data : ws_langu like sy-langu.
*text-001 = 'PO Header' - define as text element
selection-screen begin of block b1 with frame title text-001.
parameters : company like header-comp_code default '122' ,
doctyp like header-doc_type default 'NB' ,
cdate like header-creat_date default sy-datum ,
vendor like header-vendor default '2000000012' ,
pur_org like header-purch_org default 'PU01' ,
pur_grp like header-pur_group default '005' .
*sociedad like HEADER-COMP_CODE default '122' ,
*vendedor like HEADER-SALES_PERS default 'sale person'.
selection-screen end of block b1.
selection-screen begin of block b2 with frame title text-002.
parameters : item_num like item-po_item default '00010',
material like item-material default '12000000' ,
tipo_imp like item-acctasscat default 'K' ,
*pos_doc like ITEM-ITEM_CAT default 'F' ,
shorttxt like item-short_text default 'PRUEBA BAPI' ,
grup_art like item-matl_group default '817230000' ,
plant like item-plant default '3001' ,
mpe like item-trackingno default '9999' ,
*contrato like ITEM-AGREEMENT default '4904000003' ,
*quantity like ITEM-QUANTITY default 1 .
po_unit like item-po_unit default 'EA'.
selection-screen end of block b2.
Par?mnetros de imputaci?n
selection-screen begin of block b3 with frame title text-004.
parameters : centro like account-costcenter default '1220813150',
cuenta like account-gl_account default '6631400' ,
num_pos like account-po_item default '10' ,
serial like account-serial_no default '01' ,
ind_imp like account-tax_code default 'I2' .
selection-screen end of block b3.
start-of-selection.
*DATA POPULATION
ws_langu = sy-langu. "Language variable
*POPULATE HEADER DATA FOR PO
*HEADER-COMP_CODE = sociedad .
header-doc_type = doctyp .
header-vendor = vendor .
header-creat_date = cdate .
header-created_by = 'TD17191' .
header-purch_org = pur_org .
header-pur_group = pur_grp .
header-comp_code = company .
header-langu = ws_langu .
*HEADER-SALES_PERS = vendedor .
*HEADER-CURRENCY = 'DOP' .
*HEADER-ITEM_INTVL = 10 .
*HEADER-PMNTTRMS = 'N30' .
*HEADER-EXCH_RATE = 1 .
*POPULATE HEADER FLAG.
headerx-comp_code = c_x.
headerx-doc_type = c_x.
headerx-vendor = c_x.
headerx-creat_date = c_x.
headerx-created_by = c_x.
headerx-purch_org = c_x.
headerx-pur_group = c_x.
headerx-langu = c_x.
*HEADERX-sales_pers = c_x.
*HEADERX-CURRENCY = c_x.
*HEADER-ITEM_INTVL = c_x.
*HEADER-PMNTTRMS = c_x.
*HEADER-EXCH_RATE = c_x.
*HEADER-EXCH_RATE = c_x.
*POPULATE ITEM DATA.
item-po_item = item_num.
item-quantity = '1'.
*ITEM-MATERIAL = material .
item-short_text = 'prueba bapi_po_create1'.
*ITEM-TAX_CODE = ''.
item-acctasscat = 'K' .
*ITEM-ITEM_CAT = 'D' .
item-matl_group = '817230000' .
item-plant = '3001' .
item-trackingno = '99999'.
item-preq_name = 'test'.
*ITEM-AGREEMENT = '' .
*ITEM-AGMT_ITEM = ''.
item-quantity = '1' .
item-po_unit = 'EA'.
*ITEM-ORDERPR_UN = 'EA'.
item-conv_num1 = '1'.
item-conv_den1 = '1'.
item-net_price = '1000000' .
item-price_unit = '1'.
item-gr_pr_time = '0'.
item-prnt_price = 'X'.
item-unlimited_dlv = 'X'.
item-gr_ind = 'X' .
item-ir_ind = 'X' .
item-gr_basediv = 'X'.
*ITEM-PCKG_NO = '' .
append item. clear item.
*POPULATE ITEM FLAG TABLE
itemx-po_item = item_num.
itemx-po_itemx = c_x.
*ITEMX-MATERIAL = C_X.
itemx-short_text = c_x.
itemx-quantity = c_x.
*ITEMX-TAX_CODE = C_X.
itemx-acctasscat = c_x.
*ITEMX-ITEM_CAT = c_x.
itemx-matl_group = c_x.
itemx-plant = c_x.
itemx-trackingno = c_x.
itemx-preq_name = c_x.
*ITEMX-AGREEMENT = C_X.
*ITEMX-AGMT_ITEM = c_x.
itemx-stge_loc = c_x.
itemx-quantity = c_x.
itemx-po_unit = c_x.
*ITEMX-ORDERPR_UN = C_X.
itemx-conv_num1 = c_x.
itemx-conv_den1 = c_x.
itemx-net_price = c_x.
itemx-price_unit = c_x.
itemx-gr_pr_time = c_x.
itemx-prnt_price = c_x.
itemx-unlimited_dlv = c_x.
itemx-gr_ind = c_x .
itemx-ir_ind = c_x .
itemx-gr_basediv = c_x .
append itemx. clear itemx.
*POPULATE ACCOUNT DATA.
account-po_item = item_num.
account-serial_no = serial .
account-creat_date = sy-datum .
account-costcenter = centro .
account-gl_account = cuenta .
account-gr_rcpt = 'tester'.
append account. clear account.
*POPULATE ACCOUNT FLAG TABLE.
accountx-po_item = item_num .
accountx-po_itemx = c_x .
accountx-serial_no = serial .
accountx-serial_nox = c_x .
accountx-creat_date = c_x .
accountx-costcenter = c_x .
accountx-gl_account = c_x .
account-gr_rcpt = c_x.
append accountx. clear accountx.
*BAPI CALL
call function 'DIALOG_SET_NO_DIALOG'.
call function 'BAPI_PO_CREATE1'
exporting
poheader = header
poheaderx = headerx
importing
exppurchaseorder = purchaseorder
tables
return = return
poitem = item
poitemx = itemx
poaccount = account
poaccountx = accountx.
*Confirm the document creation by calling database COMMIT
call function 'BAPI_TRANSACTION_COMMIT'
exporting
wait = 'X'
IMPORTING
RETURN =
end-of-selection.
*Output the messages returned from BAPI call
loop at return.
write / return-message.
endloop.
Regards
Sudheer -
Materials available only for Purchase requisition creation
Hi Experts,
My client wants some materials available only for Purchase requisition creation and some materials donu2019t want available only for Purchase requisition creation.
How we can control
Thanks in advance,
Chandhu1) Solve your issue first you have to bifurcate between the materials where requisition is possible & where not...u can do this by selecting some field which is not in use presently in material master-basic data view & maintain some unique value for those materials for which PR will be not possible....otherwise check whether you can bifurcate it through material groups or not...
After this take help of your ABAP person and implement BAdI::ME_PROCESS_REQ_CUST...here use the logic that after user enters the material code in PR system will check in the background what has been maintained in the said field in the basic data view of the material...if found blank then it will allow the user process further or if found any data in that field then system will stop the user from processing the same by throwing some customized error message.
2) Use the Plant-sp.matl status in purchasing view as Blocked for procment/whse for those material against which you don't want to create any PR.But this will be plant specific and both PR & PO will get blocked.
Regards,
Indranil -
Document is in transfer for purchase order.Creation not possible
Dear All,
We did partial confirmation in EBP and later when trying to do confiramtion for the remaining quantiy getting the message"document is in transfer for purchase order.Creation not possible"
We are taking this problem in production as well as in quality systems also.
What are possible reason and how to solve it.
kindly share your views.
Thank you.Hi yshu,
use tcode bd87 in SRM to check for failed confirmation IDOC (type MBGMCR).
The double click the status record to see the exact cause of the failure.
Rectify the error. Then try to execute the IDOC from BD87 tcode.
For a few errors you may not be able to execute the IDOC but to create a new confirmation in SRM. In such cases, follow the below procedure..
There should be an entry for the confirmation in the transfer table BBP_DOCUMENT_TAB in SRM. Display the details.
Then run FM "BBP_DELETE_FROM_DOCUMENT_TAB" to delete the entry from the doc tab table.
Then post a new confirmation in SRM.
There is also a FM in SRM using which you can change the status of thefailed IDOC from 51 to 68 or 31.
Rgds,
MJ -
Document in transfer for purchase order - creation not possible
Hi Experts,
we get this error when we do confirmation"'document in transfer for purchase order - creation not possible'"
any inputs are appreciated
Rg
samHi All,
We have resolved the above problem.
When user does confirmation ,if it sucessfully created then there will be no entry in BBP_Document_tab table.If it's in error in process and next time when user tries to do GR then he will encounter a pop up message "Document in transfer for PO, creation not possible".
So we need to delete the entries from table BBP_DOCUMENT_TAB using FM BBP_DELETE_FROM_DOCUMENT_TAB.
Then check again in BBP_DOCUMENT_TAB now there will be noentry there...so now user can do the confirmation from SRM,he will not encounter this error now.
Thanks to all the ppl who has replied
sameer -
Require coding for purchase requisation outstanding aging report
Hi Gurus,
I got a requirment to develop purchase requisation outstanding aging report.Please provide me the coding for purchase requisation outstanding aging report.
Points will be rewarded for every reply.
Regards ,
Sonali.Hi Sonali,
You need to use EBAN, EBKN Tables.
Regards,
Satish -
Workflow to send mail for purchase requisation and approval msg which automatically updates sap
I am new to workflow,I need to create work flow for purchase requisation and send mail for concern person for approval,like if he clicks approve in mail ,automatically it should get updated in sap if he rejects then he should enter reason for rejection
pls help...Hi Surya,
SAP had provided you with a standard WF template for PR. You only have to activate it. The workflow template is WS20000077. In this what you have to do is, make all the tasks in this
WF as a general task. For that go to each activity and double click on the task ID. Then from within the task go to menu Additional Data->Agent Assignment->Maintan. Then slect the task and press Attributes and select general task. This will ask for a customizing request. Do this for all task.
The give event linkage by going to the Basic Data of the workflow and give binding. This will fulfill
your requirement.
Regards,
Abijith -
Authorization for Measuring document creation
Hi,
i have one issue. I want to provide authorization for measuring documents creation. That has been done by providing the different authorization groups in roles for T codes IK11, Ik12 etc to the users. Now users with a authorized authorization group for perticular measuring point can create a measuring document fo that. But the problem is that despite the authorization group, if user goes to t code iw41 for order confirmation , there he can create measuring documents of any authoprization group. How to control that thing. I also give authorization group authorization for t code IW41 but still it is allowing for the creation of documents. any help on this thing.
Regards,
Aman SharmaHi
there are two ways you can control the measurement reading entry
1. Block the authorisation of IK11.When you go to confirmation screen through IW41 , there a button for measurement document update. Even the user will press it system will not allowed to enter in it as he is no authorisation
2.You can configure the screen template for overall confirmation and use this profile while doing overall confirmation using iw42. There you can hide the measurment detail screen.
customising node " Set Screen Templates for Completion Confirmation "
Regards
Amar -
Profitability segment for purchase order creation - how to read it
Hello,
how to read it profitability segment for purchase order creation at item level ??
There's a method on ME_PROCESS_PO_CUST ?
TksHi,
Use the below FM from the function group KEAK
To read: COPA_CALL_PROF_SEGMENT or COPA_INPUT_PSEGMENT_RETURN
To create: COPA_PROFITABILITY_SEGMENT
Hope this helps
Regards
Shiva -
BAPI for Purchase Order Creation
Hi All,
Purchase Order creation through BAPI, Auto Po creation. Please advise program.
The requirement is: when we delivery the goods from one plant to another plant,PO should create in second plant with goods what delivered from first plant.
Pranitha
Moderator message : Spec/requirements dumping is not allowed. Thread locked.
Edited by: Vinod Kumar on Sep 30, 2011 3:37 PMHi,
As per u r requirement
you can use : BAPI => BAPI_PO_CREATE with suitable Document Type ( Stock trasnfert : STO )
IF u want to auto po must be created after each delivry in this case you need to use BADI
'MB_MIGO_BADI; In This BAPI There is method : POST_DOCUMENT
In this method u can write code for Auto PO Creation by using BAPI .
Hope This will Resolve u r query.
Thanks and Regads
Santosh -
Authorization for vendor's creation
Hi there,
I have a problem with vendors creation authorization (SAP R/3 4.6B)
For a matter of security, we need to separate the task of creating a vendor in two parts. The user who can create the vendor general datas is not authorized to create the bank details. And vice versa of course.
So I created two Group Fields for Vendor Master Records.
10 non banking datas
20 banking datas
In group 10 I have put the data LFBK-BANKL Banking key (not sure of the English term) and in group 20 I have put LFA1-NAME2 Name 2.
I gave authorization to non banking datas to user 1 (F_LFA1_AEN / VGRUP = 10) and authorization to banking datas to user 2 (F_LFA1_AEN / VGRUP = 20).
And it does nothing special
Both users can create banking and non banking datas and save the vendor.
Did I do wrong somewhere or is there a problem with vendors creation authorization ?
Thank you for your help.Thank you for your answer, you gave me another idea.
The solution I wanted to implement doesnt work for vendors creation but only for vendors modification.
So I used Preparations for Creating Vendor Master Records > Define Screen Layout per Activity (Vendors). I suppress payment transaction data for Vendor creation (XK01 and FK01). So people who creates vendors cannot create payment transactions data. In fact, nobody can
To create payment transaction data you must modify the vendor (XK02 and FK02) and be authorized. To do so, I can use the solution explained in my first post : Preparations for Changing Vendor Master Records > Define Field Groups for Vendor Master Records and Group Fields for Vendor Master Records. -
Replacing the bapi with the new bapi for purchase order creation
Hi,
In the customised code call is there for the bapi function module 'BAPII_PO_CREATE'.
Iam trying to replace the call with the code that calls function module 'BAPI_PO_CREATE1'.
Please help me about what changes I needed to do in the code . As there is much mismatch in the import and export parameters
and tables in both the function modules.
Thanks in advance.
Edited by: anwar.indya on Mar 25, 2011 2:18 PM
Edited by: anwar.indya on Mar 25, 2011 2:19 PMHi,
As per u r requirement
you can use : BAPI => BAPI_PO_CREATE with suitable Document Type ( Stock trasnfert : STO )
IF u want to auto po must be created after each delivry in this case you need to use BADI
'MB_MIGO_BADI; In This BAPI There is method : POST_DOCUMENT
In this method u can write code for Auto PO Creation by using BAPI .
Hope This will Resolve u r query.
Thanks and Regads
Santosh -
Please Tell me the Standard Bapi for Purchase Order Creation
Hi,
Please tell me the standard BApi for the PO creation. How to excute the standard Bapi. Please help me.
Regrads
MohanHi Mohan,
Use this BAPI BAPI_PO_CREATE1.
Check this post, you have program aswell
https://forums.sdn.sap.com/click.jspa?searchID=7294168&messageID=1172796
Regards,
Satish -
Failed hard drive-Can I switch authorization for purchased songs to new HD?
I have a pc that had a hard drive failure, I had a back up of my library and playlists so I was able to import to the new hard drive but all my purchased songs say that this is not an authorized pc. I can authorize it, but that will use up one of my 5 allowed and this is the same pc. Is there any way for me to transfer the authorization to the new hard drive? Thanks
You'll have to authorise the new hard drive just as if it was a different computer, you can't deauthorise a 'dead' installation on it's own. However once you've reached the limit of 5 authorisations, you have the option once a year to deauthorise them all in one go: About iTunes Music Store Authorisation and Deauthorisation
-
PO not creating for the matl,giving error Material not maint for purchasing
Hi SAP Gurus,
When I am trying to create PO for 1 purticular material, system giving error " Material CG056A not maintained by Purchasing Message no. ME 046 " Please let me know in order to create PO successfully what are all the purchasing related information necessary to maintain for this material.
Thanks and Regards,
SHARAN.Hi
While creating the material you have not maintained the purchasing view, hence you are getting an error.
Maintain the purchasing view for the material in MM01, which will solve the problem.
Rgeards
girish
Maybe you are looking for
-
MacBook Pro 13" Unibody "Warped" or "Twisted" + Other Issues
Hello everyone, Over the past year or so I've saved my pennies and I bought a 13" MacBook Pro Unibody last year (November/December ish, I'll need to check). Since then I've had numerous problems with it, software and hardware, that make me regret the
-
Hi to all. I am using Taxinn condition based excise calculation procedure. In one scenario, I have two condition types for excise calculation. Ex: ZRO1 for material price and ZRO2 for lab charges. I want to add this two conditions to calculate ED.
-
How can I recognized an iPhone 3GS on iTunes 11.0.4.4 version on PC Windows XP Professional with Service Pack 3?
-
Revision: 3913 Author: [email protected] Date: 2008-10-27 13:49:02 -0700 (Mon, 27 Oct 2008) Log Message: BLZ-272 Two long polling endpoints not working in same app with Firefox The long polling waitMonitor object in the FlexSession did not keep track
-
I'm using Crystal Reports for Visual studio 2005 with C#. I need to print some (10-50) drawings 19x10 cm (7.5x4 inch). The drawing creates by my application dynamic and saved in PNG files. For good looking in pictures DPI set to 600. So my picture b