Quantcast
Channel: SCN : Popular Discussions - ABAP Switching, Enhancing, and Adapting Standard Programs
Viewing all 329 articles
Browse latest View live

Re: Enhancement-point VS Enhancment-Section

$
0
0

HI All,

 

  Could you please let me know the use of Enhancement-Point and Enhancement-Section.

 

Thanx in Advance.

 

Regards

ambi


MV45AFZZ cancel document saving process

$
0
0

Hi,

 

I'm investigating an option on how to cancel the saving process of a document in user-exit include MV45AFZZ from within transaction VA01/VA02.

 

Currently I've tried to do some MESSAGE E in FORM USEREXIT_SAVE_DOCUMENT_PREPARE or  FORM USEREXIT_SAVE_DOCUMENT w/o any success so far.

Of course MESSAGE A is possible but does a hard break and is not the best solution at all.

 

Setting any screen like SET SCREEN 0 or LEAVE TO SCREEN 0 or any similar things did not work either.

 

What am I trying to do? I would like to check some VBAP/VBAK fields if certain conditions are met and cancel the saving process if  necessary - of course without dropping the complete document.

 

I've already searched the forum here and only found hints like those already mentioned above - but nothing really specific.

 

Another thing which came into my mind is what about storing some a line into the incomplete log of the transaction to prevent from saving? However, I did not found any function module to add some lines to the log in user-exit MV45AFZZ so far.

 

 

Any hints on how to accomplish this?

Exit/BTE for tx F110 (SAPF110S), Automatic Payments (field XREF3)

$
0
0

Hello,

 

I have been searching for a long time the posts in the forums regarding similar issues, but I can not find a suitable solution.

 

The problem is:

It's needed to fill one field of the payment document (BSEG-XREF3) created by tx F110, with the value coming from the original  document (REGUP-XREF3) that is processed by F110 (SAPF110S).

 

I can not find a BTE / exit that: 1) Could be reached during F110 execution and 2) contains data from both documents, or something similar that could allow me to gather the data from both documents.

 

Let me say that I'm very AWARE of the fact that SAPF110S schedules and executes all this processes in background; I am debugging it using the okcode JDBG in tx SM37. In fact, I can "reach" and debugg another BTE already in use (BTE process 1120, FI document creation), when the payment document is created. This one could be suitable to pass the value to the payment document that is to be created.

 

The other BTE only reached is BTE process 1830, but this one is only executed during proposal creation, and although I get access to REGUP values, the only possibility is to save the value with SET/GET parameters statement, in order to pass the value in memory for the next execution of F110, but this approach is not good at all.

 

Any ideas? Somebody has resolved something similar?

(In forums, a lot of people talks abouts exits or BTEs that they has never used before).

 

I have tested various of the user-exits that came across searching in the forums, and the BADI FI_F110_SCHEDULE_JOB, but:

-No one of the u-exits works, and

-The BADI is not suitable for solving the problem.

 

Thanks in advance,

José Gabriel Martínez.

 

Edited by: José Gabriel on Sep 7, 2009 2:06 PM

 

How to create Authority check object

$
0
0

Hello Gurus,

 

How to create Authority-check object 'ZABC'

                                                         ID 'TABLE' FIELD 'ZTABLE'.

Please tell me detailed procedure.

 

Thanks in advance.

 

Best Regards,

zubera

How To Find Screen Exit & Menu Exit

$
0
0

Hi Friends,

 

How can we find Screen Exit & Menu Exit?

 

Kindly do not specify the report which is prevailing all over.

 

And does class CL_EXITHANDLER also return exits apart from BADI names ?

 

Regards,

Pradeep

Exit/BTE for tx F110 (SAPF110S), Automatic Payments (field XREF3)

$
0
0

Hello,

 

I have been searching for a long time the posts in the forums regarding similar issues, but I can not find a suitable solution.

 

The problem is:

It's needed to fill one field of the payment document (BSEG-XREF3) created by tx F110, with the value coming from the original  document (REGUP-XREF3) that is processed by F110 (SAPF110S).

 

I can not find a BTE / exit that: 1) Could be reached during F110 execution and 2) contains data from both documents, or something similar that could allow me to gather the data from both documents.

 

Let me say that I'm very AWARE of the fact that SAPF110S schedules and executes all this processes in background; I am debugging it using the okcode JDBG in tx SM37. In fact, I can "reach" and debugg another BTE already in use (BTE process 1120, FI document creation), when the payment document is created. This one could be suitable to pass the value to the payment document that is to be created.

 

The other BTE only reached is BTE process 1830, but this one is only executed during proposal creation, and although I get access to REGUP values, the only possibility is to save the value with SET/GET parameters statement, in order to pass the value in memory for the next execution of F110, but this approach is not good at all.

 

Any ideas? Somebody has resolved something similar?

(In forums, a lot of people talks abouts exits or BTEs that they has never used before).

 

I have tested various of the user-exits that came across searching in the forums, and the BADI FI_F110_SCHEDULE_JOB, but:

-No one of the u-exits works, and

-The BADI is not suitable for solving the problem.

 

Thanks in advance,

José Gabriel Martínez.

 

Edited by: José Gabriel on Sep 7, 2009 2:06 PM

 

MIRO - User Exit during SAVE: Read items & Update header

$
0
0

Hi there!

During MIRO after pressing save...

I search for an user-exit or BAdI, to READ ITEM DATA and UPDATE HEADER DATA (XBLNR) after SAVE but before UPDATE.

 

I have searched this forum, but with no luck. Many more then me seem to have the same problem. The most common answer have been to try BAdI INVOICE_UPDATE, but that BAdI only give READ access and NO UPDATE, so no luck there..

 

To summarize all my searching here and findings... I list all exits I have tested...

 

User-Exits

LMR1M001 User exits in Logistics Invoice Verification

LMR1M002 Account grouping for GR/IR account maintenance

LMR1M003 Number assignment in Logistics Invoice Verification

LMR1M004 Logistics Invoice Verification: item text for follow-on docs

LMR1M005 Logistics Inv. Verification: Release Parked Doc. for Posting

LMR1M006 Logistics Invoice Verification: Process XML Invoice

MRMH0001 Logistics Invoice Verification: ERS procedure

MRMH0002 Logistics Invoice Verification: EDI inbound

MRMH0003 Logistics Invoice Verification: Revaluation/RAP

MRMN0001 Message output and creation: Logistics Invoice Verification

 

BADI - When saving in MIRO the following BAdI were passed...

PPA_CUST_BADI

/CCIS/FICLRDC_ENH

INVOICE_UPDATE  << only read no update

ME_DP_CLEARING

AC_DOCUMENT

FI_LIMIT_PROCESS

AC_QUANTITY_GET

FMRE_BUS_PROCESS

EXIT_XFMPRI_001

CO_DOCUMENT_INFO

INVOICE_UPDATE (method change_before_update ) << only read no update

MRM_RANSACT_DEFAULT

MRM_HEADER_DEFAULT

 

Other BAdI's

MRM_HEADER_CHECK - Bara ingående värden för kontroll

MRM_HEADER_DEFAULT - Tyvärr sätter bara XBLNR precis när man går in i MIRO...dvs för tidigt.

MRM_ERS_HDAT_MODIFY  - EJ anropad...

 

 

Would be greatful for any ideas on this matter...

 

Best regards

Henrik

 

Difference b/w static and instance method

$
0
0

&#61656;     In BADI what is the difference between Static Method and Instance Metbod?


how to implement enhancement spot

$
0
0

hi to all experts,

 

how to implement enhancement spots for example ENHANCEMENT-POINT SAPLMEGUI_01 SPOTS ES_SAPLMEGUI STATIC.

 

 

i dont have any idea regarding this please help me

 

 

thanks

Add custom fields in Additional Data B tab (header) in VA01/02 using BADI

$
0
0

Hi experts,

                  My requirement is to add custom fields from custom table( z or y table) to Additional Data B tab (header) of VA01 transaction. How can we do it using BADI's? I do not want to use the access key and modify respective screens in SAPMV45A.

I'v seen many threads related to this issue but none of them were answered. Hope I'll get it with your help. Thanks in advance.

 

Edited by: srivarma on Dec 8, 2011 10:09 AM

 

Edited by: srivarma on Dec 8, 2011 10:15 AM

Re: Enhancement-point VS Enhancment-Section

$
0
0

HI All,

 

  Could you please let me know the use of Enhancement-Point and Enhancement-Section.

 

Thanx in Advance.

 

Regards

ambi

Problem while Creating Validation user exit in GGB0

$
0
0

Dear All ,

 

 

i have created one Validation user-exit  in GGB0 for FI followed all steps  1

1)  Copied RGGBR000 to ZRGGBR000  .

2)  added exit-name  , title ,parameter none  .

 

 

  exits-name  = 'ZORD'.
  exits-param = c_exit_param_none.        "Complete data used in exit.
  exits-title = text-105.                "Posting date check
  APPEND exits.

 

3)  also  form . endform 

 

  FORM zord USING b_result.
tables : coas .
if sy-tcode ='MB1A' .


endif.


ENDFORM

 

4) done changes  in table t80d  using GCX2

modified zprogram name  for application area gblr

 

5)  there is also entry  in ob28 for validation rule 

 

6) executed report  RGUGBR00  .

 

7) when i go in GGB0  and put cursor  on exit  and click on ABAP editor  it show that code  ...

 

8) when i called that exit  through GGB0 it does not gives call to that exit NAME "ZORD" ?

 

Could you please guide us for the same  .

I have attached the screen shot of exit created  by name zord  .

 

Regards

Deepak.

 

how to implement enhancement spot

$
0
0

hi to all experts,

 

how to implement enhancement spots for example ENHANCEMENT-POINT SAPLMEGUI_01 SPOTS ES_SAPLMEGUI STATIC.

 

 

i dont have any idea regarding this please help me

 

 

thanks

Confusion in classic and kernel badis

$
0
0

Hi Experts , I have checked in

http://help.sap.com/saphelp_nw04s/helpdata/en/ee/6f3b42ea85b26be10000000a155106/content.htm

 

above link explains difference between classic and new badi.

but there are a lot of confusions.

 

Point 1 :

With classic BAdIs, a BAdI object is created by calling a factory method, and referenced via a reference variable of the type of the BAdI interface.  

                  With new BAdIs, a BAdI object is created via the ABAP statement GET BADIas a handle for the calls of BAdI methods,  referenced via a reference variable of the  type of the BAdI.

                    A BAdI object is an instance of an internal BAdI class, which otherwise is invisible to the outside.

                   

                    What is the point as both badis are refrenced by  refrence varable of badi? please explain.

                   

`                 Point 2 :

     a. With the classical BAdIs, the filter values are stored in a structure and passed with the call of the BAdI methods.       

     b. With the new BAdIs, the comparison values for the filters used to search for implementations are passed when the BAdI object is created with the GET BADI statement.

There is no way of migrating the call of the factory method one-to-one into the ABAP statement, because GET BADI can also return an existing BAdI object, which is not possible with the factory method.

 

Can any 1 Explain this with a simple example.

 

Point 3 :

.                     A classic BAdI can be called only once and the call positions are registered centrally.

                  With new BAdIs, multiple calls are possible and the call positions are not registered centrally.

    For the above reasons, an automatic call migration is not possible.

 

What is the meaning of registered cenrallly?

 

Please help experts...

C

 

 

W

 

Message was edited by: Suhas Saha

Userexit for service order(IW31.iw32) after saving ...

$
0
0

Hi,

Can anybody help me in finding a userexit for service order after saving.

My requirement is to get characteristic values after saving into zfields of AUFK table.

I cant use any exit which is trigered before saving of service order since characteristics values can be changed while saving.

 

I am using FM   CUCB_GET_SINGLE_INSTANCE to get the characteristics values..

 

Any input will be appreciated...!

 

regards,

Sheeba


MIRO - User Exit during SAVE: Read items & Update header

$
0
0

Hi there!

During MIRO after pressing save...

I search for an user-exit or BAdI, to READ ITEM DATA and UPDATE HEADER DATA (XBLNR) after SAVE but before UPDATE.

 

I have searched this forum, but with no luck. Many more then me seem to have the same problem. The most common answer have been to try BAdI INVOICE_UPDATE, but that BAdI only give READ access and NO UPDATE, so no luck there..

 

To summarize all my searching here and findings... I list all exits I have tested...

 

User-Exits

LMR1M001 User exits in Logistics Invoice Verification

LMR1M002 Account grouping for GR/IR account maintenance

LMR1M003 Number assignment in Logistics Invoice Verification

LMR1M004 Logistics Invoice Verification: item text for follow-on docs

LMR1M005 Logistics Inv. Verification: Release Parked Doc. for Posting

LMR1M006 Logistics Invoice Verification: Process XML Invoice

MRMH0001 Logistics Invoice Verification: ERS procedure

MRMH0002 Logistics Invoice Verification: EDI inbound

MRMH0003 Logistics Invoice Verification: Revaluation/RAP

MRMN0001 Message output and creation: Logistics Invoice Verification

 

BADI - When saving in MIRO the following BAdI were passed...

PPA_CUST_BADI

/CCIS/FICLRDC_ENH

INVOICE_UPDATE  << only read no update

ME_DP_CLEARING

AC_DOCUMENT

FI_LIMIT_PROCESS

AC_QUANTITY_GET

FMRE_BUS_PROCESS

EXIT_XFMPRI_001

CO_DOCUMENT_INFO

INVOICE_UPDATE (method change_before_update ) << only read no update

MRM_RANSACT_DEFAULT

MRM_HEADER_DEFAULT

 

Other BAdI's

MRM_HEADER_CHECK - Bara ingående värden för kontroll

MRM_HEADER_DEFAULT - Tyvärr sätter bara XBLNR precis när man går in i MIRO...dvs för tidigt.

MRM_ERS_HDAT_MODIFY  - EJ anropad...

 

 

Would be greatful for any ideas on this matter...

 

Best regards

Henrik

 

Customer Exit for service PO in ME21N

$
0
0

Dear All,

 

When I create service PO with the following step:

1. Create a purchase request (PR) with an item which item category ('D' - Service)

2. Input a Service number / External service no. in item's details

3. Create a purchase order (PO) with ref to that PR

4. Input an outline agreement number into the PO item

5. Copy service line item(s) to PO<b> only if </b>service number / External service no. are covered by the Outline agreement number.

 

I want know how to make a checking by customer exit in ME21N at step 5?

 

Thanks,

Well

Confusion in classic and kernel badis

$
0
0

Hi Experts , I have checked in

http://help.sap.com/saphelp_nw04s/helpdata/en/ee/6f3b42ea85b26be10000000a155106/content.htm

 

above link explains difference between classic and new badi.

but there are a lot of confusions.

 

Point 1 :

With classic BAdIs, a BAdI object is created by calling a factory method, and referenced via a reference variable of the type of the BAdI interface.  

                  With new BAdIs, a BAdI object is created via the ABAP statement GET BADIas a handle for the calls of BAdI methods,  referenced via a reference variable of the  type of the BAdI.

                    A BAdI object is an instance of an internal BAdI class, which otherwise is invisible to the outside.

                   

                    What is the point as both badis are refrenced by  refrence varable of badi? please explain.

                   

`                 Point 2 :

     a. With the classical BAdIs, the filter values are stored in a structure and passed with the call of the BAdI methods.       

     b. With the new BAdIs, the comparison values for the filters used to search for implementations are passed when the BAdI object is created with the GET BADI statement.

There is no way of migrating the call of the factory method one-to-one into the ABAP statement, because GET BADI can also return an existing BAdI object, which is not possible with the factory method.

 

Can any 1 Explain this with a simple example.

 

Point 3 :

.                     A classic BAdI can be called only once and the call positions are registered centrally.

                  With new BAdIs, multiple calls are possible and the call positions are not registered centrally.

    For the above reasons, an automatic call migration is not possible.

 

What is the meaning of registered cenrallly?

 

Please help experts...

C

 

 

W

 

Message was edited by: Suhas Saha

Problem while Creating Validation user exit in GGB0

$
0
0

Dear All ,

 

 

i have created one Validation user-exit  in GGB0 for FI followed all steps  1

1)  Copied RGGBR000 to ZRGGBR000  .

2)  added exit-name  , title ,parameter none  .

 

 

  exits-name  = 'ZORD'.
  exits-param = c_exit_param_none.        "Complete data used in exit.
  exits-title = text-105.                "Posting date check
  APPEND exits.

 

3)  also  form . endform 

 

  FORM zord USING b_result.
tables : coas .
if sy-tcode ='MB1A' .


endif.


ENDFORM

 

4) done changes  in table t80d  using GCX2

modified zprogram name  for application area gblr

 

5)  there is also entry  in ob28 for validation rule 

 

6) executed report  RGUGBR00  .

 

7) when i go in GGB0  and put cursor  on exit  and click on ABAP editor  it show that code  ...

 

8) when i called that exit  through GGB0 it does not gives call to that exit NAME "ZORD" ?

 

Could you please guide us for the same  .

I have attached the screen shot of exit created  by name zord  .

 

Regards

Deepak.

 

Userexit for service order(IW31.iw32) after saving ...

$
0
0

Hi,

Can anybody help me in finding a userexit for service order after saving.

My requirement is to get characteristic values after saving into zfields of AUFK table.

I cant use any exit which is trigered before saving of service order since characteristics values can be changed while saving.

 

I am using FM   CUCB_GET_SINGLE_INSTANCE to get the characteristics values..

 

Any input will be appreciated...!

 

regards,

Sheeba

Viewing all 329 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>