Number Range increment in SRM
Dear Experts,
We are implementing Classic scenario with SRM 7.03 and ERP 6.05 and have set up the system such that follow-on document to Shopping Cart should be Purchase Order or Purchase Requisition depending on whether Source of Supply is available or not respectively.
We have maintained internal number range for RQ in SAP Implementation Guide -> SAP Supplier Relationship Management -> SRM Server -> Cross-Application Basic Settings -> Number Ranges -> SRM Server Number Ranges -> Define Number Ranges for Shopping Carts and Follow-on Documents and the same number range has been maintained in ERP as external number range for PR
When we order a shopping cart without a supplier, it creates a PR in ERP but shows 'Error in Process' in SC Related Documents. The corresponding error in RZ20 is 'Shopping cart 2170000045 (PReq. 1170000011): W5 030 Purchase requisition 1170000011 does not e xist'
What we have observed is that the PR number in SRM is increments by 10 while PR number in ERP increments by 1. To explain with an example -
Currently in SRM, in PR number range, the last used number is 1170000010.
The same is also available in ERP for PR.
Now we create a SC which would create a PR in ERP. In BBP_PD, in item data, BE_OBJECT_ID is 1170000011. In ERP, PR is successfully created by the same number 1170000011.
However, when we go to 'Related Documents' of the SC, we find the status as 'Error in Process'.
In RZ20, we find the error 'Shopping cart 2170000045 (PReq. 1170000011): W5 030 Purchase requisition 1170000011 does not e xist'
When we go to the SRM IMG path as mentioned above to check the current number for RQ, it is 1170000020 instead of 1170000011
This means that after creation of PR, when this PR number is brought back to SRM, the RQ increments by 10 instead of by 1 and SRM thinks that the incoming PR number is already consumed by ERP.
We have checked for REQREQ in TCode SNRO in SRM and see that buffering is mentioned as 10. But then this is a standard setting which is never changed. We are unable to figure out why is RQ getting incremented by 10 instead of 1.
Any thoughts or guidance would be greatly appreciated.
Best regards,
Madhur Shah
P.S.: Points would be appropriately awarded
Hi Harish
Thanks for the update...
Steps performed
Tcode SE37 type in RSD_CUBE_GET and execute.In the new screen key in ur infocube name and execute.
In the new screen under export parameter under E_T_DIME ,I found 13 enteries -->click on the information button.
Can you please elborate on the below
Now find the column Nobject and note down the value.
Give that value and do the number buffering in SNRO.
Do i need to set Number Range buffering forall the dimensions or how/based on can i select which dim i need to setup an dhow to set configure in snro
and also
Are these settings have to be made individually in each system or in dev and transport them
Thanks in advance
Similar Messages
-
Extended Classic - Purchase Order Number Ranges
We are using Extended Classic EBP. When a PO is created in SRM the PO replicated into R/3 does not have the same number.
The backend PO document type is ECPO. We have assigned an internal and external number range to this document type.
When an SRM PO is replicated to the backend, the backend PO number is taken from the internal number range for the document type. This internal number range does not include the number range of the SRM POs.
We expect the SRM PO number to be pushed into R/3 and therefore the external number range of the R/3 document type should match the SRM PO number range.Hi
No need to maintain the internal number range for the SRM PO document type ECPO in R3 (maintain the external number range code of SRM PO transaction type).
As the PO is created in SRM, and the number range you maintained in SRM and R3 should be same, but in SRM it will be internal number range and in R3 it should be external number range. (number range code should be same in both the systems).
Regards
Reddy -
2 external number range for vendor
Hello,
I am facing a problem when I try to replicate vendor from R/3.
I have 2 external vendor number ranges maintained in SRM, But only the last created external number range is taken into account when i replicate vendors from R/3.
Please could you tell me how can I maintain 2 external number ranges in SRM?
This is very urgent, I need to replicate vendors from R/3.
SRM 4.0 Extended Classic scenario.
Regards,
ShaiekHi Lina
You will have to combine all number ranges in R/3 and create one number range in SRM, if you want to retain the R/3 numbers.
e.g. If your R/3 number ranges are
100000 - 200000
600000 - 699999
In SRM, you need 100000-699999 as the external number range.
At any point of time, you can make only one no. range as default in SRM.
Best regards
Ramki -
Internal number range( alphanumberic) will be incremented automatically
Dear All,
Will the internal number range (Alphanumberic) of the material master get incremented automatically.
say,
the internal number range we set is AW0000001 to AW9999999. The number range should be incremented
Kindly reply for the querry
Thanks
BakyarajYou can try with material Template.
SPRO --> Logisitics - General -- > Material Master --> Basic Settings -- > Define Out put format for Material Numbers.
Transaction Code : OMSL
Activities
1. Define the length of your material numbers.
2. If required, define a material number template.
3. Specify the form in which you wish to store your material numbers.
For information on how to use the Lexicographical indicator, be sure to read the corresponding documentation.
4. Specify whether your material numbers are to contain leading zeros.
Note
If the Lexicographical indicator is set, the system ignores the setting of the Leading zeros indicator.
Indicator for lexicographical material numbers
Definition
Defines the way numeric material numbers are stored in the database.
Use
Caution
It is only possible to set or reset (cancel) this indicator if no numeric material numbers have been used yet in the system since they would no longer be interpretable after setting or resetting this indicator.
If this indicator is not set, numeric material numbers are padded with leading zeros and stored right-justified (example 1). Material numbers containing at least one nonnumeric character are stored left-justified (example 2).
Example 1
Defined length: 8 characters
Internally/externally assigned number: 123
Stored number: 000000000000000123
Example 2
Defined length: 8 characters
Externally assigned number: 1A3
Stored number: 1A3
If this indicator is set, material numbers are stored as follows:
If the material number (numeric or not purely numeric) was assigned externally, it is stored left-justified as entered.
Example
Defined length: 8 characters
Externally assigned number: 123
Stored number: 123
Note
Any leading zeros that may have been entered are stored too. This makes it possible to distinguish between the material numbers 123 and 0123.
If the material number (numeric only) was assigned internally, it is padded with leading zeros to the defined length and stored left-justified.
Example
Defined length: 8 characters
Internally assigned number: 123
Stored number: 00000123 -
Classic - SAME PO number ranges in SRM PO via SC as well as ECC PO via PR
Hi
for example we do have PO
existing
PO 54XXXXX number serial creates via SRM by shopping cart
PO 55XXXXX number serial created PO via ECC system
but business now wants same number ranges for Both system Purchase orders WHATERVER IT MAY BE.
54XXXXXX only for SRM created PO as well as ECC PO .
SC IN srm PO in ECC 54XXXXX
PR-PO in ECC 54XXXXX
is it possible? TO HAVE SAME NUMBER RANGE
*CUSTOMER EXPECTS LIKE BELOW.*
*FOR EX PO 540000001 CREATED FROM srm by Shopping cart
*PO 540000002 CREATED BY ECC SYSTEM.via Purchase request or direct me21n*
HOW CAN I MAKE INTERNAL AS WELL EXTERNAL VIS DOC TYPE.
THEY DO NOT WANT TO HAVE TWO SEPARATE NUMBER RANGES FOR ONE BUSINESS OBJECTS. aNY ONE ACHIEVED IN REAL TIME?
br
MuthuThanks much Ahmed for confirmation on this.Appreciate you Ahmed on this help.
why i have asked this question we do create some PR from APO system. but their APO Purchase request uses same number range in the ECC system.
for eg. APO creates PR -300001
ECC creates PR -300002
but i dont know how it achieved in APO -ECC scenario.
Muthu
Edited by: Muthuraman Govindasamy on Jan 16, 2010 3:01 PM -
Incremental number range in non leading ledger
Hello Experts,
I have a serious problem with regard to number ranges in non leading ledger.
I have defined number range from 8000 to 8999 for document type SA. When I do a posting in FB50L, document number for non leading ledger is created as 8001. I am OK with this. But system is showing current number in use as 8099 instead of 8001. I have changed manually the current number as 8100 and posted one more document. Now document number is 8002, but number in use showing as 8199. If I post now document number will show as 8003, but number in use will show as same 8199.
Please advise me how to resolve this issue.
Thanks in advance.
Regds
JoyCheck in SNRO for numbe range object RKE_BELEG if any buffering has been set.
If yes, then go to Edit-Set up buffering and set to No buffering.
Also check in FAGLFLEXA on the last document number posted and maintain that number as the current number in number range in FBN1.
Thanks and regards
Kedar -
SRM standard number ranges?
I know from former relases like SRM400 there were standard number ranges delivered, but not with SRM500
What is the standard number range for PO respones?
Rgds.
DieterHi Dieter,
please see the following number ranges:
01 0000000001 1999999999
02 2000000000 2999999999
Regards,
Peter -
Number ranges for Business Partner
Hello experts,
Can you please guide how to define different number ranges for differenet different parner functions such Bidder and Employee.
Presently when I create a new employee for a Business partner who has newly registered with SRM, they both are getting same range of BP number, which makes the user list very long to manage/search while creating BID/Auction invitation.
Please guide me. Thanks in advance
VijayHello,
find below the settings of table T77S0 in our system. We use grouping Z4 for org units. Be aware of the fact that number range and grouping have to have the same ID in this case.
Regards
Wolfgang
GRPID SEMID GSVAL ETEXT
HRALX HRAC X Activate HR Integration
HRALX MERID X Enter Integration Error in IDOC
HRALX MSGRE 0 Recipient of Error Message When Creating BP
HRALX OADBP Business Partner of Standard Address
HRALX OADRE Address Necessary for Business Partner?
HRALX OBPON ON Integration O-BP Activated
HRALX OBWIG X Ignore Business Partner Warnings
HRALX ONUMB 2 Business Partner Number Assignment (Org. Unit)
HRALX OPROL BUP004
HRALX OSUBG Z4 Business Partner Subgroup (Organizational Unit)
HRALX PALEO Log: Organizational Units in ALE
HRALX PALEP Log: Employees in ALE
HRALX PBPHR OFF Employees Are Replicated from HR System
HRALX PBPON ON
HRALX PCATS Integration P-BP for CATS Activated
HRALX PINAC Activate ALE Distribution of Inactive Employees
HRALX PLEVE 3 Log: Detail Level of Error Messages (1 - 5)
HRALX PNUMB 3 Business Partner Number Assignment (Employee)
HRALX PPROL BUP003
HRALX PQUAL Import Qualifications
HRALX PRTON Log Active
HRALX PSUBG Business Partner Subgroup (Employees)
HRALX PSYNO Log: Organizational Units in Dialog
HRALX PSYNP Log: Employees in Dialog
HRALX USRAC X Create Relationship to User -
Anybody ever created multple PO doc type/number ranges in extended classic?
I have searched this forum, and found plenty of useful threads which would help me determine different document types/number ranges for back-end purchase orders in a classic scenario. (And I have done something similar many years ago on a classic EBP 3.0 implementation)
However, I have a customer who has an SRM 5 extended classic implementation, and who (Based on certain simple criteria) requires a different PO number range to identify certain types of indirect orders. (They also have direct materials procured using doc type ECDP, but that's not relevant to this requirement)
This would obviously have to apply to the local PO in SRM, as well as the backend ECC PO.
It would also need to be derived for orders created automatically via approved shopping carts, as well as those orders that are created via sourcing.
I've copied ECPO via define transaction types IMG step, as well as assigned a new number range.
Just to test, I've also added the second doc type in the BSA attribute for a particular test user - just initially see if it was possible to manually choose when creating a PO in sourcing. However, I could only get ECDP and ECPO.
I have looked at various BADIs to see if I can determine doc type or number range somewhere in the PO creation, but as far as I can see, they either:
- Seem to apply only to the object type (PO, requisition, reservation etc) rather than the transaction type within that object.
- Or look like they are too late in the process to influence the doc type and number range (BBP_DOC_CHANGE_BADI?) ... which doesn't seem to have those doc type or PO number fields available anyway
- Or I doesn't seem to be trigerred at all when turning requirement into Po and ordering via sourcing. (tried break-point & endless loop in implemnetation of BBP_CREATE_BE_PO_NEW, but nothing happened. In any case the PO number was alreadya ssigned)
If anybody has ever managed this before, or can tell me that I am definitely barking up the wrong tree, it would be gratefully appreciated. The document type is actually lesss important than the different number range... and was really just an attempt to trigger a different number. I'm starting to think that this sort of thing may only be possible in a classic implemntation.
What I need ideally, would have been some kind of 'local PO' equivelent of the BADI that enables you to determine transaction type for a bid.
Regards,
Vince
Edited by: Vincent White on Dec 6, 2010 5:13 PMHi. Not sure on this, but I can tell you that with extended classic it is BADI BBP_ECS_PO_OUT_BADI that is called for the backend PO instead of the CREATEPO_BACK BADI.
You can have a look in BBP_ECS_PO_OUT_BADI and see if that helps?
Don't think it will influence the PO in SRM at all though.
Have you tried the number range / grouping BADIs? They definitly work for changing the number range for classic POs.
Regards,
Dave. -
Hi Friends ,
I have done all settings for Supplier Registration Process. I am able to transfer the supplier from pre selection screen and all the relevant information is coming in supplier screen, when i am clicking on SAVE button, I am getting following error messages.
1. Number not in interval 0000100001 u2013 1999999999
2. Business partner 162 already exists
In supplier screen partner number shows 162 which is in between Internal Number range assignment while at the time of SAVE system comparing with External Number Range assignment why? When I am changing partner number 162 with External Number range Number for example 100009 then only I am able to create Bidder else it is getting error. Should I have to change Number range assignment or Am I missing any steps?.
I have assigned following entries in Tx. BUCF in SRM.
01 0000000001 0000100000 170
AB 0000100001 1999999999 0 X (Ext)
MD 9000000000 9999999999 0 X (Ext)
Entries defined in SRM Server - Technical Basic Settings - Settings for Supplier Synchronization - Define Global Settings
Vendor Number Assignment Type u2013 Assign SAP-ERP Numbers Only
AbhijeetDear Nitesh,
What is the exact error message that you are getting?
Regards,
Naveen. -
External number range for purchase order response?
Hi all,
is it possible to use an external number range when creating purchase order responses (BUS2209, PCO, POR) manually?
If I transfer the POR from an external system like SUS via XML, can I use an external number range?
I'm using SRM 4.0 (EBP 5.0) in standalone scenario with Business Connector 4.7 as XML interface.
Any help is appreciated,
KarstenHi
No need to maintian Internal number range.. Yes you need to use an external number range
Only the PO, RQ & RS are sync and therefore must correspond with the R/3 number ranges.
The rest, Shop Cart (SC), Local PO (EBP), Confirmation, Invoice, Bid Inv and Bid, aren't synced and can be assigned to any number range. (FYI- using ECS)
Re: Extended Classic - Purchase Order Number Ranges
http://help.sap.com/saphelp_srm50/helpdata/en/87/7cc73cee4fb55be10000000a114084/frameset.htm
http://help.sap.com/saphelp_srm50/helpdata/en/6d/0f343e47fd6b2ee10000000a114084/frameset.htm
Re: Number range config
Re: config for Number Ranges ? :-(
Re: PO Creation with external PO number
Purchase Order Response BUS2232
PO number range Issue
Re: Defining the number range
Regards
- Atul -
Vendor number range issue in BUCF transaction
Hi,
We are implementing the SRM 5.0 with Extended Classic scenario. I my current SRM system is already connected with 3 SAP R/3 system and I am implementing and adding 4th SAP R/3 system.
I am having an issue to replicating the vendor master from 4th R/3 system to our SRM system due to wrong number ranges in BUCF transaction code.
Current Number Range in SRM systems are:-
01 0010000000 0014999999 10003009
AB 0001000000 0009999999 X --> (7 Digits)
My new vendor master from 4th R/3 system is:-
0080000001 to 0080029999 --> (8 Digits)
My new vendor master number range is overlapping with my internal number range 01. As we know that we cannot reduce the lower range of 01 from 0010000000 to 0000000001. Also I cannot increase the number AB higher value from 0009999999 to 0099999999.
Can you any one please suggest me to correct the number range?
Thanks,
SenthilHello Senthill,
The vendor replication to external number ranges works as follows:-
(1) Cross-Application Components SAP Business Partner > Business Partne
> Basic Settings > Number Ranges and Groupings > Define Number Ranges
Here you sould define an external number range which corresponds to
the R/3 numbers. You may want to have more than one external range
in order to replicate all vendors.
(2) Cross-Application Components > SAP Business Partner > Business Part
> Basic Settings > Number Ranges and Groupings > Define Groupings and
Assign Number Ranges
For each replication run, you can download the vendors which correspond
to the external number range / grouping which is marked as 'standard
external'.
So, you will have to replicate your vendors separately for each number
range:-
Select the correct grouping each time by marking 'Ext.Std Grping'
and then run BBPGETVD for the vendors to be assigned to this grouping.
As standard, the customized settings for the number ranges
would have to be changed for each run of BBPGETVD and BBP_VENDOR_SYNC.
If you run the update or synchronization in combination with a
BADI the intervals could be taken into account.
The BADI is BBP_TRANSDATA_PREP
The methods are:-
Method: PREPARE_REPLICATION_DATA (intitial download)
Method: PREPARE_UPDATE_DATA (update)
Import data is stored in CT_LFA1 should be copied to an
internal table. There the required intervals can be determined.
This BADI is not assigned in the IMG but can be seen through SE18.
I hope this information is helpful.
Kind Regards,
Edel. -
Issue on Number Range for MRP Purchase Requisition
Hi Gurus,
Please help me on the issue explained below.
We are already using SAP ECC 6.0 and SRM 5.0 and now we are implementing Plant Maintenance Module.As a result of this implementation ,we have created number of PR document types and assigned to unique number ranges in ECC. One of these document types has been maintained for MRP group for a material type in order to identify the MRP purchase requisitions created on the shortage of the materials for these material types.
This functionality is working fine. MRP run for the materials is picking the appropriate PR document but number range of the document is not the same what was assigned to the linked document type.Some other number series is getting picked by system .
There is setting under SPRO Consumption Based PlanningNumber RangesPurchase Requisitions
Here, number range assignment is against plant. This is the same number range which is being taken by system on running MRP. But the desired number range is the one which has been linked to PR document type.
If I change the number range above then number range for MRP PR in present system will get affected..
Can you please advise me on above so that PR generated on MRP run should have appropriate number range?
Thanks & Regards,
NitiHi,
As per my understanding, what you have mentioned above is exactly the way SAP is designed. Its SAP Standard behaviour.
But if you check your PR document type - no:range & the CBP no:range both will be same only since both refers to the same object.
Please check the PR document type that you have assigned in the CBP & its no:ranges.
Thanks & Regards,
Ram -
Number ranges - APO or ECC system - Which one is master system?
Hi
In SRM always SRM system is a master system for issuing number range. to create a folow on documents like purchase request and Purchase order . SRM system always determines the number range for purchase orders , Purchase request .
for example in Classic scenario :-
SRM we create a Shopping cart and Purchase order in ECC system.but SRM determines the number range which number Purchase order needs to be created.
What about in APO number ranges for Purchase request and Purchase order ? .iS That SAME ? .
In APO , do you have technical scenarios like Classic and Extended classic?
classic :- shoping cart crated in SRM and Purchase order will be created in ECC system.
Ext Classic :- Shopping card created in SRM and Purchase order will be created in SRM itself and replicated to ECC system.
But both above scenarios, SRM system is a master system to issue number ranges.
i learnt that APO system dont supply any number ranges to create a PR or PO in ECC system (trigger from APO) only ECC system determines? is it true?
BR
MuhtuHi,
For Purchase requisition there is temporary number range in APO system but once requisition gets transfered to ECC through CIF it determines number range from ECC and returns back same number to APO.
For Purchase order number range exists in ECC only and not in APO. Even if you trigger conversion of PR to PO from APO number range will be taken from ECC only.
So ECC remains master system .
Regards,
Santosh -
Could you check our source? (To determine the PR type and number range)
Hello.
We use SRM Server5.5 with Classic Scenario.
We will use the BADI BBP_SC_TRANSFER_BE to determine the PR type and number range according to your recommend.
We have two PR type in R/3.
1) KGPR
2) KTR1
As you know that shopping cart has no type. So we add customer field to mapping to R/3 PR type and this field has two values.
1) PR01: mapping to KGPR
2) PR02: mapping to KTR1
We will use the method GROUP_RQ to determine the PR type.
If customer field is PR01, PR type is determined KGPR
If customer field is PR002, PR type is determined KTR1.
To determine the PR number range, we will use the method GET_NUMBER_OR_RANGE.
If PR type is KGPR, Choose the No key 12
If PR type is KTR1, Choose the No key 16.
Configuration step:
1. Maintain the PR number range in SRM.
No key: 12 (for KGPR) internal NR
No range: 2520000000 2529000000
No key: 16 (for KTR1) internal NR
No range: 2560000000 2569000000
2. Maintain the PR number range in R/3
No key: 12 (for KGPR) Ext NR
No range: 2520000000 2529000000
No key: 16 (for KTR1) Ext NR
No range: 2560000000 2569000000
3. Assign the PR number range to PR type in R/3
KGPR 12 (EXT)
KTR1 16 (EXT)
4. Maintain the attribute in SRM
Document type in R/3
Add KGPR and KTR1
We developed this logic, but its not working.
LOOP AT ct_proc_item INTO ls_proc_item Where is no date in ct_proc_item:
We can not find out the reason.
Could you check our source?
METHOD if_ex_bbp_sc_transfer_be~group_rq.
DATA:
ls_proc_item TYPE bbps_procurement,
lv_number_int TYPE bbp_item_no,
ls_item TYPE bbp_pds_transfer_item,
lv_group_counter TYPE numc5,
CONSTANTS:
lc_on(1) VALUE 'X'.
SORT ct_proc_item BY obj_to_gen.
CLEAR: lv_group_counter.
LOOP AT ct_proc_item INTO ls_proc_item
where obj_to_gen eq iv_object_to_generate.
get item data which includes customer fields
MOVE ls_proc_item-preq_item TO lv_number_int. " convert
READ TABLE it_item INTO ls_item WITH KEY number_int = lv_number_int.
IF sy-subrc = 0.
IF ls_item-pr_type EQ 'PR01'.
ls_proc_item-doc_type = 'KGRP'.
ELSEIF ls_item-pr_type EQ 'PR02'.
ls_proc_item-doc_type = 'KTR1'.
ENDIF. " lv_cust_field
lv_group_counter = lv_group_counter + 1. " increase counter
ls_proc_item-group_1 = lv_group_counter.
MODIFY ct_proc_item FROM ls_proc_item
TRANSPORTING group_1.
ENDIF. " sy-subrc
ENDLOOP.
cv_method_active = lc_on.
ENDMETHOD.
method IF_EX_BBP_SC_TRANSFER_BE~GET_NUMBER_OR_RANGE.
if is_item-pr_type = 'PR01'.
CV_NUMBER_RANGE = '12'.
CV_NUMBER = '2520000000'.
elseif is_item-pr_type = 'PR02'.
CV_NUMBER_RANGE = '16'.
CV_NUMBER = '2560000000'.
endif. " is_proc_item / is_item
Thank you
Best Regard
SHHi
Please find some suitable sample code, which might help you out.
method IF_EX_BBP_SC_TRANSFER_BE~GET_NUMBER_OR_RANGE .
* IV_OBJECT_TO_GENERATE
* '1' Reservation
* '2' Purchase Requsition (BANF)
* '3' Purchase Order
* '4' Customer Object
* 1. current item data are in structures
* - IS_ITEM shopping cart item data including Customer Fields
* - IS_PROC backend relevant item purchasing data
* 2. accounting data in tables
* - IT_ACCOUNT all shopping cart account. data with Customer Fields
* - IT_PROC_ACCOUNT backend relevant accounting data for current item
* - key criteria between this tables are
* - it_proc_account-preq_item
* -serial_no (numc 2)
* - guid from is_item
* - it_account-p_guid
* -accno(numc 4)
* A) example to use current item data + item customer fields
* if is_proc_item-DOC_TYPE = 'ABCD' AND
* is_item-<field of CI_BBP_ITEM> = .
* set own number range
* CV_NUMBER_RANGE = .
** set own number
** .. ==> if initial SAP Standard with no.range will be processed
* CV_NUMBER = .
* endif. " is_proc_item / is_item
* B) example to use only proc_account no accounting customer fields
*data:
* ls_proc_account type bbp_bapipogna.
* loop at it_proc_account
* into ls_proc_account.
* if ls_proc_account-BUS_AREA = '9988'.
** set own number range
* CV_NUMBER_RANGE = .
** set own number
** .. ==> if initial SAP Standard with no.range will be processed
* CV_NUMBER = .
* endif. " ls_proc_account
* endloop.
* C) example to use only accounting customer fields, no other accounting
*data:
* ls_account type bbp_pds_acc.
* loop at it_account
* into ls_account
* where p_guid = is_item-guid.
* if ls_account-<field of CI_BBP_ACC> = .
** set own number range
* CV_NUMBER_RANGE = .
** set own number
** .. ==> if initial SAP Standard with no.range will be processed
* CV_NUMBER = .
* endif. " ls_account
* endloop.
* D) example to use proc_account + customer fields for accounting
*data:
* lv_serial_no type bbp_bapipogna-serial_no, " sequence num 2
* lv_acc_no type bbp_pds_acc-acc_no, " sequence num 4
* ls_proc_account type bbp_bapipogna,
* ls_account type bbp_pds_acc.
* loop at it_proc_account
* into ls_proc_account.
* move ls_proc_account-serial_no to lv_acc_no.
* read table it_account
* into ls_account
* with key p_guid = is_item-guid
* acc_no = lv_acc_no.
* if sy-subrc = 0.
** if ls_account-<field of CI_BBP_ACC> = .
** set own number range
** CV_NUMBER_RANGE = .
** set own number
** .. ==> if initial SAP Standard with no.range will be processed
** CV_NUMBER = .
** endif. " ls_account
* endif. " sy-subrc
* endloop.
endmethod.
method IF_EX_BBP_SC_TRANSFER_BE~GROUP_RQ .
* 1. current item data are in structures
* - IT_ITEM all shopping cart item data including Customer Fields
* - IT_PROC_ITEM backend relevant item data of current log.system
* key criteria between this tables are:
* - IT_ITEM-NUMBER_INT (numc 10)
* - IT_PROC_ITEM (numc 5)
* 2. accounting data in tables
* - IT_ACCOUNT all shopping cart account. data incl. Customer Fields
* - IT_PROC_ACCOUNT backend relevant accounting data for current item
* - key criteria between this tables are
* - it_proc_account-preq_item (numc 5)
* -serial_no (numc 2)
* - is_item-guid
* -number_int (numc 10)
* - it_account-p_guid
* -accno(numc 4)
constants:
lc_on(1) VALUE 'X'.
* A) example to use only proc_item with NO customer fields
* group requisitions by backend document type
*data: lv_doc_type TYPE esart,
* ls_proc_item type BBPS_PROCUREMENT,
* lv_group_counter type numc5.
* clear lv_group_counter.
* clear lv_doc_type.
* SORT ct_proc_item BY obj_to_gen doc_type.
* LOOP AT ct_proc_item
* into ls_proc_item
* WHERE obj_to_gen EQ iv_object_to_generate.
** new group criteria?
* if lv_doc_type ne ls_proc_item-doc_type. " backend doc.type
* lv_group_counter = lv_group_counter + 1. " increase counter
* lv_doc_type = ls_proc_item-doc_type. " save criteria
* endif.
* ls_proc_item-group_1 = lv_group_counter.
* modify ct_proc_item from ls_proc_item
* transporting group_1.
* ENDLOOP.
* B) example to use item customer fields
* data:
* ls_proc_item type BBPS_PROCUREMENT,
* lv_cust_field type <field of ci_bbp_item>.
* lv_number_int type BBP_ITEM_NO,
* ls_item type BBP_PDS_TRANSFER_ITEM.
* clear lv_group_counter.
* clear lv_cust_field .
* SORT ct_proc_item BY obj_to_gen.
* LOOP AT ct_proc_item
* into ls_proc_item
* WHERE obj_to_gen EQ iv_object_to_generate.
** get item data which includes customer fields
* move ls_proc_item-preq_item to lv_number_int. " convert
* read table it_item
* into ls_item
* with key number_int = lv_number_int.
* if sy-subrc = 0.
** new group criteria?
* if lv_cust_field ne 'XYZ'.
* lv_group_counter = lv_group_counter + 1. " increase counter
* lv_cust_field = ls_item-<field of ci_bbp_item>."save criteria
* endif. " lv_cust_field
* ls_proc_item-group_1 = lv_group_counter.
* modify ct_proc_item from ls_proc_item
* transporting group_1.
* endif. " sy-subrc
* ENDLOOP.
* C) example to use accounting data with customer fields
* group requisitions by backend document type
*data: lv_doc_type TYPE esart,
* ls_proc_item type BBPS_PROCUREMENT,
* lt_account type BBPT_PD_ACC,
* ls_account type bbp_pds_acc,
* ls_item type BBP_PDS_TRANSFER_ITEM,
* lv_number_int type BBP_ITEM_NO,
* lv_account_flag type c,
* lv_group_counter type numc5.
* clear lv_group_counter.
* clear lv_doc_type.
* SORT ct_proc_item BY obj_to_gen doc_type.
* lt_account[] = it_account[].
* SORT lt_account BY p_guid acc_no.
* LOOP AT ct_proc_item
* into ls_proc_item
* WHERE obj_to_gen EQ iv_object_to_generate.
** get accounting customer fields for this item
* clear lv_account_flag.
** ..first get item guid
* move ls_proc_item-preq_item to lv_number_int.
* read table it_item
* into ls_item
* with key number_int = lv_number_int.
* if sy-subrc = 0.
* loop at lt_account
* into ls_account
* where p_guid = ls_item-guid.
* if ls_account-<field of CI_BBP_ACC> = .
* lv_account_flag = lc_on.
* endif.
* endloop.
* endif. " sy-subrc it_item
** new group criteria?
* if lv_doc_type ne ls_proc_item-doc_type OR " backend doc.type
* lv_account_flag = lc_on. " accounting
* lv_group_counter = lv_group_counter + 1. " increase counter
* lv_doc_type = ls_proc_item-doc_type. " save criteria
* endif.
* ls_proc_item-group_1 = lv_group_counter.
* modify ct_proc_item from ls_proc_item
* transporting group_1.
* ENDLOOP.
* !!!! set flag that BADI was processed
* .. ==> no SAP Standard grouping will be processed
cv_method_active = lc_on.
endmethod.
Hope this will help.
Please reward suitable points, incase it suits your requirements.
Regards
- Atul
Maybe you are looking for
-
How do I delete a previous deleted user's files off my macbook?
I have just bought a secondhand mac from a friend and he did a terrible job of deleting his stuff on here. He deleted his user account but nothing else. I was wondering if there is a way I can delete his home folder as it is taking up all the storage
-
What is the default time settings in Process chains
Hi, What is the default time settings in Process chains. How to set time settings for daily,weekly,monthly loads in Process chains. What is the time settings that we have to take care when creating meta chains. Thanks, Madhu.
-
Is it possible to email a song that can then be entered into iTunes on another computer? If so, how? I have an iMac with 10.8.3 and the latest iTunes. Thank you Carl
-
Hello, Oracle offers licencing by the number of processes parameter. I want to increase Processes value to 300. let me know oracle recomends any licence aggrement? or we can increase the processes parameter any value depends on the no of CPU's ? Is t
-
A couple of years ago, I asked a Mac technician to disable my clamshell mode. He did and it works fine, but now I'd like to reenable it. Does anyone know the specific terminal command? Sudo pmset -a lidwake 1 does not work.