10-21-2007 4:40 PM
I need to find SAP standard routines to update a registry in an infotype that is being modified. The ones that make changes into BEGDA and ENDDA in other existing records, if necessary if there is overlapping.
I need to see changes in dynpro 3000 without having to get out and enter again.
I am making some modifications in an own infotype but I can not see the changes when I show the summary (dynpro 3000). How can I update a registry with determined BEGDA and ENDDA directly? is a lock problem? I am using ENQUEUE_EPPRELE and DEQUEUE_EPPRELE but I can only see the changes when I get out of PA30 completely and I access the registry again so I do not know what I am doing wrong.
Thanks in advance.
10-22-2007 10:54 AM
Could you please elaborate a bit more on your problem.
I think your problem is SAP standard. When you change the infotype you should "refresh" the date to see it in the summary, If a refresh button is not present in PA30, your only option would be to start the transaction again /npa30.
Kind regards, Rob Dielemas
10-22-2007 11:03 AM
I have been proving this code into a FM but I can not see the results in database. Perhaps it can not be done but it seems to be there is a problem with commit. (I think it is correct that way).
Can anyone help ? Thanks
p9007-pernr = pernr.
p9007-infty = '9007'.
p9007-subty = subty.
p9007-begda = begda.
p9007-endda = endda_n.
p9007-ZZCLSEXP = subty.
p9007-doc_status = 'CD'.
CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
EXPORTING
NUMBER = pernr
IMPORTING
RETURN = return_enqueue.
IF RETURN_ENQUEUE-NUMBER IS NOT INITIAL.
EXIT.
ENDIF
.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
INFTY = '9007'
NUMBER = pernr
SUBTYPE = subty
VALIDITYEND = endda
VALIDITYBEGIN = begda
RECORD = p9007
OPERATION = 'MOD'
IMPORTING
RETURN = return1.
IF RETURN1-NUMBER IS INITIAL.
COMMIT WORK.
ELSE.
ENDIF.
CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
EXPORTING
NUMBER = pernr
IMPORTING
RETURN = return_dequeue.
10-22-2007 4:11 PM
If you don;t see entries in table pa9007 then I guess that the update doesn't work and you should find out why?
Can't your requirement be fulfilled using dynamic actions?
regards, Rob.
10-22-2007 11:22 AM
Do you test you changes in PA30 or PA20? Both transactions do a data prefetch and caches a bunch of values, you will not be aware of data changes without leaving them.
10-22-2007 11:30 AM
10-22-2007 11:33 AM
When you are going to PA20 and watch the case you want to modify you have to leave the entire tansaction to see yout changes. A lot of HR Transactions are doing a prefetch of a lot of tables never refreshing them. If you modify tables you cant see the changes without leaving PA20. Many HR-transacztion behave like that.