Dynamic action to create ESI record
Friends
I am using the following code to create ESI record in infotype 588 in Dynamic actions and working for a single payroll area.
0001
04
862
P
T001P-MOLGA='40'
0001
04
863
P
PSPAR-MASSN='S1'
0001
04
864
P
P0001-ABKRS='P3'
0001
04
865
P
P0001-PERSK='W0'
0001
04
866
F
GET_DATE(HBRDYNMS)
0001
04
867
I
INS,0588,0001,,(P0000-BEGDA),(P0000-ENDDA)/D
My requirement is PERSK is same for various payroll areas, hence don't want to create separate codes.
I am trying to insert multiple payroll areas in line no. 864 with the following code
0001 04 864 P0001-ABKRS = 'P1' OR P0001-ABKRS = 'P3' OR P0001-ABKRS = 'P5'/X
But the record is not getting created.
Pl. help to use multiple payroll area option.
regards
Raghuram R
If you are useing for multiple area please use the below
6
1
P
P0001-ABKRS='XX' /X
6
2
P
P0001-ABKRS= 'XX' /X
you shoduld use all the payroll areas with /X which say if payroll X or Y but not only or after X.
Similar Messages
-
DYnamic Action to set the value of a wage type in IT0014
Dear Experts,
i have created a dynamic action to create a record in IT0014 (wage type 92011) if another record in IT0014 (wage type 9207) is created/changed. that is:
0014 9207 06 I INS,0014,9211,,(P0014-BEGDA),(P0014-ENDDA)/D
0014 9207 06 W Q0014-BETRG=2
now, when i change/create the wage type 9207 in IT0014, the dynamic action opens IT0014 with subtype 9211, and with begin & end dates as set in the action , but an error message that asks me to Enter Amount !!!
why can't the dynamic action read the amount (2) which I want to insert ?!!
Thanks in advanceDear Rovan,
you should not use Q there,
Do not set defaults for Q fields of an Infotype because the values for these fields are derived from the corresponding P fields.
0014 9207 06 I INS,0014,9211,,(P0014-BEGDA),(P0014-ENDDA)/D
0014 9207 06 W P0014-BETRG=2
Regards,
mohammed
Edited by: 0mohammed1 on Oct 27, 2011 5:53 PM -
HR_INFOTYPE_OPERATION not working when called from Dynamic action
Hi ,
Senario : I would like to execute a form from dynamic action which
creates a record in 0015 (Additional payment IT) .
I have writen the code as shown below am using FM HR_INFOTYPE_OPERATION
. When i execute the program from se38 it is creating a record, however it is
not created when it is called from dynamic action..when i debugged the code in
inside the FM HR_INFOTYPE_OPERATION there is a FM HR_MAINTAIN_MASTERDATA where
they are using call dialog (statement) and
sy-oncom = 'N' when called from Dynamic action and
sy-oncom = 'S' when called executed directly.
I tried to change the sy-oncom to S while run from Dynamic action it created
the record.
So Can anyone explain me abt sy-oncom and how can i resolve the issue..
code..
REPORT ZHRPYENH01 .
perFORM TERMIATION_9000.
INCLUDE DBPNPMAC.
FORM Termiation_9000 *
FORM TERMIATION_9000.
INFOTYPES : 0015.
*data : i .
*i ='c'.
*break-point.
*message i000(000) with i.
TABLES : PRELP.
DATA : P9000 TYPE PA9000." with header line.
DATA : P0000 TYPE STANDARD TABLE OF P0000 WITH HEADER LINE.
DATA : P0015 TYPE STANDARD TABLE OF P0015 WITH HEADER LINE.
DATA : HIRE_DATE LIKE SY-DATUM,
TERM_DATE LIKE SY-DATUM.
DATA : MOLGA LIKE T500L-MOLGA VALUE '25',
SEQNR LIKE PC261-SEQNR.
DATA : RGDIR TYPE STANDARD TABLE OF PC261 WITH HEADER LINE.
DATA : ACTUAL_PERIOD LIKE PA9000-RETENTION.
DATA : PNP-SW-FOUND TYPE SY-SUBRC ,
PNP-SY-TABIX TYPE SY-TABIX.
DATA : TER_PERNR LIKE PA0001-PERNR.
DATA : REF_PERNR LIKE PA0001-PERNR.
data : key type BAPIPAKEY.
data : payed_amount type p0015-BETRG.
data : future_payment_amount type p0015-BETRG.
data : p0002 like pa0002.
types : begin of t_deduction ,
deducation_date like p0015-begda,
future_payment_amount type p0015-BETRG.
types : end of t_deduction.
data : future_deduction type standard table of t_deduction with
*header line.
data : future_deduction type t_deduction .
data : RETURN type BAPIRETURN1.
*data : deduction_p0015 like standard table of p0015 with header line.
data : deduction_p0015 like p0015 .
xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxx
****Prepare 0015 data for deduction
*deduction for payed amount
clear deduction_p0015.
*refresh deduction_p0015.
deduction_p0015-pernr = REF_PERNR.
*deduction_p0015-pernr = TER_PERNR.
deduction_p0015-lgart = 'M120'.
deduction_p0015-begda = sy-datum + 1 .
deduction_p0015-endda = sy-datum + 1 .
deduction_p0015-BETRG = payed_amount.
deduction_p0015-WAERS = 'SGD'.
deduction_p0015-ZUORD = TER_PERNR.
*append deduction_p0015.
**deduction for future payment amount
*loop at future_deduction.
*clear deduction_p0015.
*deduction_p0015-pernr = REF_PERNR.
**deduction_p0015-pernr = TER_PERNR.
*deduction_p0015-lgart = 'M120'.
*deduction_p0015-begda = FUTURE_DEDUCTION-DEDUCATION_DATE.
*deduction_p0015-endda = FUTURE_DEDUCTION-DEDUCATION_DATE.
*deduction_p0015-BETRG = future_deduction-future_payment_amount.
*deduction_p0015-WAERS = 'SGD'.
*deduction_p0015-ZUORD = TER_PERNR.
*append deduction_p0015.
*endloop.
Create a deduction wage type in 0015 for the employee
break-point.
CLEAR RETURN.
CALL FUNCTION 'BAPI_EMPLOYEET_ENQUEUE'
EXPORTING
NUMBER = REF_PERNR
VALIDITYBEGIN = '18000101'
IMPORTING
RETURN = return
if not return is initial.
message E000(000) with
'Referred Employee could not be locked for referal payment deducation,
please try after some time'.
endif.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
INFTY = '0015'
NUMBER = REF_PERNR
SUBTYPE = 'M120'
OBJECTID =
LOCKINDICATOR =
VALIDITYEND = SY-DATUM
VALIDITYBEGIN = SY-DATUM
RECORDNUMBER =
RECORD = deduction_p0015
OPERATION = 'COPY'
TCLAS = 'A'
DIALOG_MODE = '2'
NOCOMMIT =
VIEW_IDENTIFIER =
SECONDARY_RECORD =
IMPORTING
RETURN = return
KEY = key
break-point.
COMMIT WORK.
if not return is initial.
*return-TYPE
*ID
*NUMBER
*MESSAGE
message I000(000) with return-MESSAGE.
endif.
CALL FUNCTION 'BAPI_EMPLOYEET_DEQUEUE'
EXPORTING
NUMBER = REF_PERNR
VALIDITYBEGIN = '18000101'
IMPORTING
RETURN = return
xxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxx
Thanks and regards
-Senthil Bala
Message was edited by: senthil balaHi Senthil
Why at all U want a subroutine to create a record in IT0015 through Dynamic action.There are some standard codes available to update infotypes.
Let me give U an example
14 9CON BETRG 4 2 I INS,0015 This will create a record in IT0015 when IT0014 is updated with Wagetype 9CON
14 9CON BETRG 4 3 W P0015-LGART='5400' Set wagetype for IT0015(Here U can use a subroutine call to set the wagetype)
14 9CON BETRG 4 4 W P0015-BETRG=P0014-BETRG set amount for IT0015(Here U can use a subroutine call to get the amount)
14 9CON BETRG 4 5 W P0015-BEGDA=P0014-ENDDA set the dates(Here U can use a subroutine call to set the dates)
Hope this will help U.
Please award points if helpful -
About creating an AJAX page with DML procedures using dynamic actions
About creating an AJAX page with DML procedures in APEX using dynamic actions. Help with limitations.
I want to share my experience, creating AJAX procedures in APEX 4.0.
LIMITATIONS
• How Can I Hide UPDATE button while I press NEW button. ??
• How Can I Hide CREATE button while I’m UPDATING A RECORD. ??
• How can I avoid multiple Inserts or Updates. ??
Here are the steps to create an AJAX Updatable Form using the sample table DEPTS. You can see the demo here: [http://apex.oracle.com/pls/apex/f?p=15488:1]
1) Create a blank page
2) Add a Report Region for departments (It shows the columns deptno, dname and loc).
3) Add an HTML Region and create the elements to edit a Department.
a. P1_DEPTNO (Hidden to store PK)
b. P1_DNAME (Text Field)
c. P1_LOC (Text Field)
4) You also have to create a hidden element called P1_ACTION. This will help to trigger dynamic actions to perform DMLs.
5) Open Page Attributes and in the HTML Header Section include the following code.
<script>
function doSelect(pId){
$x_Value(‘P1_DEPTNO’,pId);
$x_Value(‘P1_ACTION’,’SELECT’);
</script>
6) Modify the column DEPTNO in the report, to add column link. In the link text you can use #DEPTNO# , in target you must select ‘URL ‘ and in the URL field write javascript:doSelect(#DEPTNO#);
7) Create the following Buttons in the Form Region.
CANCEL Redirects to URL: javascript:$x_Value(‘P150_ACTION’,’CANCEL’);
NEW Redirects to URL: javascript:$x_Value(‘P150_ACTION’,’NEW’);
SAVE Redirects to URL: javascript:$x_Value(‘P150_ACTION’,’UPDATE’);
CREATE Redirects to URL: javascript:$x_Value(‘P150_ACTION’,’CREATE’);
8) Create the following Dynamic Action to Select a Department
Name: Select Dept
Event: Change
Selection Type: Item(s)
Item(s): P1_ACTION
Condition: equal to
Value: SELECT
Action: Execute PL/SQL Code
PL/SQL Code:
SELECT dname, loc
INTO :P1_DNAME, :P1_LOC
FROM dept
WHERE deptno = :P1_DEPTNO;
Page Items to Submit: P1_DEPTNO, P1_DNAME, P1_LOC
Don’t include any false action and create the Dynamic Action.
The first limitation, the value of page elements don’t do refresh so I added the following true actions to the dynamic action AFTER Execute PL/SQL Code.
Action: Set Value
Unmark *‘Fire on page load’* and *‘Stop execution on error’*
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_DNAME
Page Items to submit: (none) (leave it blank)
Affected Elements: Item P1_DNAME
Action: Set Value
Unmark *‘Fire on page load’* and *‘Stop execution on error’*
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_LOC
Page Items to submit: (none) (leave it blank)
Affected Elements: Item P1_LOC
These actions allow refresh the items display value.
9) Create the following Dynamic Action to Update a Department
Name: Update Dept
Event: Change
Selection Type: Item(s)
Item(s): P1_ACTION
Condition: equal to
Value: CREATE
Action: Execute PL/SQL Code
PL/SQL Code:
UPDATE dept SET
dname = :P1_DNAME,
loc = :P1_LOC
WHERE deptno = :P1_DEPTNO;
Page Items to Submit: P1_DEPTNO, P1_DNAME, P1_LOC
Don’t include any false action and create the Dynamic Action.
Include the following True Actions BEFORE the Execute PL/SQL Code true Action.
Action: Set Value
Unmark ‘Fire on page load’ and ‘Stop execution on error’
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_DNAME
Page Items to submit: P1_DNAME
Affected Elements: Item P1_DNAME
Action: Set Value
Unmark *‘Fire on page load’* and *‘Stop execution on error’*
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_LOC
Page Items to submit: P1_LOC
Affected Elements: Item P1_LOC
These actions allow refresh the items display value.
Finally to refresh the Departments report, add the following true action at the end
Action: Refresh
Affected Elements: Region Departments
10) Create the following Dynamic Action to Create a Department
Name: Create Dept
Event: Change
Selection Type: Item(s)
Item(s): P1_ACTION
Condition: equal to
Value: CREATE
Action: Execute PL/SQL Code
PL/SQL Code:
INSERT INTO dept(deptno,dname,loc)
VALUES (:P1_DEPTNO,:P1_DNAME,:P1_LOC);
Page Items to Submit: P1_DEPTNO, P1_DNAME, P1_LOC
Don’t include any false action and create the Dynamic Action.
Include the following True Actions BEFORE the Execute PL/SQL Code true Action.
Action: Set Value
Unmark *‘Fire on page load’* and *‘Stop execution on error’*
Set Type: PL/SQL Function Body
PL/SQL Function Body:
DECLARE
v_pk NUMBER;
BEGIN
SELECT DEPT_SEQ.nextval INTO v_pk FROM DUAL;; -- or any other existing sequence
RETURN v_pk;
END;
Page Items to submit: P1_DEPTNO
Affected Elements: Item P1_DEPTNO
Action: Set Value
Unmark *‘Fire on page load’* and *‘Stop execution on error’*
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_DNAME
Page Items to submit: P1_DNAME
Affected Elements: Item P1_DNAME
Action: Set Value
Unmark ‘Fire on page load’ and ‘Stop execution on error’
Set Type: PL/SQL Expression
PL/SQL Expression: :P1_LOC
Page Items to submit: P1_LOC
Affected Elements: Item P1_LOC
These actions allow refresh the items display value.
Finally to refresh the Departments report, add the following true action at the end
Action: Refresh
Affected Elements: Region Departments
11) Create the following Dynamic Action to delete a department
Name: Delete Dept
Event: Change
Selection Type: Item(s)
Item(s): P1_ACTION
Condition: equal to
Value: DELETE
Action: Execute PL/SQL Code
PL/SQL Code:
DELETE dept
WHERE deptno = :P1_DEPTNO;
Page Items to Submit: P1_DEPTNO
Don’t include any false action and create the Dynamic Action.
Include the following True Actions AFTER the Execute PL/SQL Code true Action.
Action: Refresh
Affected Elements: Region Departments
Action: Clear
Unmark ‘Fire on page load’
Affected Elements: Items P1_DEPTNO, P1_DNAME, P1_LOC
12) Finally Create the following Dynamic Action for the NEW event
Name: New Dept
Event: Change
Selection Type: Item(s)
Item(s): P1_ACTION
Condition: equal to
Value: NEW
Action: Clear
Unmark *‘Fire on page load’*
Affected Elements: Items P1_DEPTNO, P1_DNAME, P1_LOCI need some help to solve this issues
• How Can I Hide UPDATE button while I press NEW button. ??
• How Can I Hide CREATE button while I’m UPDATING A RECORD. ??
• How can I avoid multiple Inserts or Updates. ?? -
Dynamic Action on IT0002 for France-Molga 06
Hello,
I would like to set up a dynamic action on IT0002 for France (Molga 06) - field State - 'GBDEP'.
The field 'GBDEP' is a mandatory field for France, but the business is not maintaining the record of the Birth State of an employees.
So I would like to set up a dynamic action to create a default value for this field. The default value created is 999 and it will filled while creating IT0002 record for France during Hiring Action.
I am not quite well versed with dynamic action, so i would appreciate a help in how to set up this dynamic action.
I can share if more information is needed.
Thanks in advance.Try this dynamic action:
INFTY SUBTY FNAME OPERA SEQNO KENNZ VINFO
0000 06 10 * *FRANCE DEFAULT GBDEP
0000 06 12 P PSPAR-TCLAS='A'
0000 06 14 P T001P-MOLGA='06'
0000 06 16 P PSPAR-MASSN='XX'
0000 06 18 I INS,0002,,,(P0000-BEGDA),(P0000-ENDDA)
0000 06 20 W P0002-GBDEP='999'
Here, XX is your hiring action code. Also, make sure you have a 999 entry in V_T005S for FR.
Hope this helps.
Donnie -
APEX 4.0.1: restriction on maximum number of dynamic actions on a page?
Hello,
I would like to know if there is a restriction on the number of dynamic actions on a page.
I have a page with 29 dynamic actions. All works fine on the page.
If I create another dynamic action that only display an alert or does anything else, I have the error message HTTP 404 when I try do display the page.
If I delete an old dynamic action and create a new one then the page works fine.
So after several tests, it seems that there is a maximum number of DA on a page but can someone confirm that?
Environment:
APEX 4.0.1
Embedded PL/SQL Gateway
Regards,
SddcI stand corrected in that some limits are acknowledged:
http://download.oracle.com/docs/cd/E17556_01/doc/user.40/e15517/limits.htm
Where are people getting these ideas that normal form or "Codd" said that there was a
limit on columns and if you had more columns than a database product found convenient to implement that it was a 'design defect'? I took database management as an undergrad and in grad school and there was NO rule about number of columns. Anyone who says there is is shoveling pure bs. Even if there were such a rule, and there isn't, it is very inadvisable for a vendor who allows 1000 columns in a table in their database product to impose a limit that is 1/10 of that in an interface to their database. (And btw you can create a table (A 'wide' table, in sqlserver with 30,000 columns according to this:
http://msdn.microsoft.com/en-us/library/ms143432.aspx )
Artificially dividing up data instruments that were administered/collected at one time into pieces in separate tables, just to make a vendor's developers' life easier and more convenient, or just to keep the product from competing with the extremely extremely expensive "enterprise" products the vendor sells, is not acceptable.
Splitting highly related data into separate tables for no reason other than the
interface is not capable of handling it, creates a load of problems that would not otherwise
exist. What if the user enters less than all the parts? Then someone has to figure out if the parts not entered had no data recorded in the source or if they were simply accidentally skipped. Basically someone or a program would have to enter those pages and denote they had no content if that were the case. Much more logic, much more opportunity for error vs keeping data that was highly associated together.
A software vendor can apply whatever limits they want and no one can stop them, that's for sure. But what would be better here is making these more clear up front. This is a "rad" development tool for very small and not hugely complex forms and reports. Be clear and there will not be people royally steamed over spending their time and money evaluating a product that is not designed to do much of what people need it to do. This stuff should be in an FAQ and the top of the forum. -
IT0071 Dynamic Action does not overwrite Pension Scheme Calculation Rule
I am trying to write a dynamic action to create IT0071 with default values for the Employee contribution (0%) and Employer contribution (4%). However when IT0071 is created the default values from the associated Pension Scheme Calculation Rule (4% and 8%) are not being overwritten by the dynamic action. Is there a way to get the dynamic action to override the Pension Scheme Calculation Rule values?
This is the dynamic action u2026
0171 BENGR 06 10 P T001P-MOLGA='08'
0171 BENGR 06 15 P PSPAR-MASSN='01'/X
0171 BENGR 06 20 P PSPAR-MASSN='12'/X
0171 BENGR 06 25 P P0171-BENGR<>NOBN
0171 BENGR 06 30 P P0171-BSTAT<>NOBN
0171 BENGR 06 300 I INS,0071,SS7,,(P0171-BEGDA),(P0171-ENDDA)
0171 BENGR 06 315 W P0071-PCTEE='0.0000'
0171 BENGR 06 320 W P0071-PCTER='4.0000'
Any help much appreciated.
Regards,
JanetHi Brian,
In standard SAP physical sample planning requires sample drawing procedure.
Link: [http://help.sap.com/erp2005_ehp_05/helpdata/EN/2d/3521b6448c11d189420000e829fbbd/frameset.htm]
And drawing procedure is advised with partial sample numbers.
Link: [http://help.sap.com/erp2005_ehp_05/helpdata/EN/2d/3521b6448c11d189420000e829fbbd/frameset.htm]
Generally when we use partial sample numbers, we also use a drawing procedure. And in that scenario SAP describes the calculation as shown in
Link: [http://help.sap.com/erp2005_ehp_05/helpdata/EN/2d/3521b6448c11d189420000e829fbbd/frameset.htm]
What you have done (partial samples for MICs and not having for others, all without drawing procedure) is not generally done. I think our observations in this context should be confirmed only if we try more of such examples.
Regards
Sm. -
Multiple Select List does not Refresh with Dynamic Action
All,
Scenario:
Using APEX 4.2.2, I have a Select List page item (P4_SPONSOR) set to allow multiple values which has a dynamic LOV to populate the list. What I would like to do is highlight the display values based on another page item's value (P4_DRIVER_ID). When I set the source of P4_SPONSOR to static text, such as a delimited string of 1:2:3:4, any display values where the return values are equal to the static text are highlighted when the page loads.
Problem:
The problem lies in trying to use a query as a source for P4_SPONSOR which is filtered based on the other page item, P4_DRIVER_ID. For instance, my SQL Query (returning colon separated values) returns the same as the static text noted above. In the query's WHERE clause, I specify that the driver's ID is equal to P4_DRIVER_ID:
SELECT sponsor_id
FROM sponsors_drivers_xref
WHERE driver_id = :P4_DRIVER_ID;
This, as I understand it, would necessitate a refresh of P4_SPONSOR whenever the value of P4_DRIVER_ID changes. So, I have a Dynamic Action that does just that. When executed on the page, I can see the P4_SPONSOR multiple select list actually refresh, but none of the display values become highlighted.
Thoughts?
Thanks,
-Seth.Seth,
A dynamic action refresh of your select list will refresh the list of values (this is what you are seeing), it will not refresh the value of the item itself. In fact, it will remove any values that you had already selected. To refresh the value you will need to add additional dynamic actions.
Create another dynamic action with:
Event: After Refresh
Selection Type: Item(s)
Item(s): P4_SPONSOR
If this was a normal select list you could just create a Set Value action and use your query to set the value of the select list. Since this is a multiple select list your will need to get your colon delimited value first and then use some javascript to set the values of your select list.
Create an hidden page item name P4_SPONSOR_TEMP.
Add a true action to your new dynamic action:
Action: Set Value
Set Type: SQL Statement
SQL Statement:
SELECT sponsor_id
FROM sponsors_drivers_xref
WHERE driver_id = :P4_DRIVER_ID;
Page Items to Submit: P4_DRIVER_ID
Selection Type: Item(s)
Item(s): P4_SPONSOR_TEMP
Add another true action to your new dynamic action:
Action: Set Value
Set Type: JavaScript Expression
JavaScript Expression:
$("#P4_SPONSOR_TEMP").val().split(":")
Selection Type: Item(s)
Item(s): P4_SPONSOR
--Jeff -
Dynamic Action-Delimiting a record and creating new record
Hi ,
My requirement is in dynamic Action I need to delimit all records in a Subtype of an Infotype and create New record for these records with BEGDA as ENDDA + 1 of the delimited records.
Iam able to delimit all records in the Subtype but , Iam not able to create new records.
My code for delimiting is as given below, in T588Z,
9901 2 06 801 P P9901-SUBTY='2'
9901 2 06 802 P PSYST-IOPER='MOD'
9901 2 06 803 P P9901-STATS='X'
9901 2 06 804 P P9901-PREAS='91'
9901 2 06 805 F DELIMIT_DTE(ZHSRAS_T588Z_9901)
9901 2 06 806 W P9901-ENDDA=RP50D-ZZDATE3
9901 2 06 807 I MOD,9901,3
9901 3 06 808 P SY-UCOMM='UPD'
9901 3 06 809 F DELIMIT_DTE(ZHSRAS_T588Z_9901)
9901 3 06 810 W P9901-ENDDA=RP50D-ZZDATE3
The above code is working fine.
My code for creating new record is as given below, even though the control is oing to the subroutine, INS statement is not working, and hence new record is not getting created.
9901 3 06 811 P SY-UCOMM='UPD'
9901 3 06 812 P PSAVE-ENDDA<>P9901-ENDDA
9901 3 06 813 P P9901-STATS<>'X'
9901 3 06 814 I INS,9901,3
9901 3 06 815 F BEGIN_DATE(ZHSRAS_T588Z_9901)
9901 3 06 816 W P9901-BEGDA=RP50D-ZZDATE3
9901 3 06 817 W P9901-ENDDA='99991231'
Kindly help me on this.Hi shahana,
1. I have not worked on this dynamic action.
2. But instead of doing in 2 steps,
it is usually done in 1 step only, manually.
3. If we CREATE record from some date,
then the OLD will AUTOMATICALLY get Delimited.
(We don't have to do anything specially for delimiting
the old record)
regards,
amit m. -
Re: Dynamic Action is not triggering in LSMW Recording
Hello All,
In SAP HRMS personnel actions if i do using LSMW Recording it is not triggering the dynamic actions.
Is there any mechanism to Trigger dynamic action in LSMW Recording ?
How to find the differences in process with and with out recording ?
Small help is also highly appreciated.
With Regards,
Sunil,
+91-9903695384.Yes. Do one thing. First study the dynamic action. Try to understand what the dynamic action is doing. Is it creating data in other infotype or is it updating some other table. Once it is clear what the dynamic action is doing then you can try to implement the same logic in LSMW. In LSMW there is a provision to add more than one recording and this recording can be called based on some logic..
Thanks & Regards,
Sandip -
Dynamic actions - how to create an infotype with a date - 1 day.
Hi everyone,
I need a requirement to change an infotype through dynamic action with ENDDA = BEGDA of maintaned infotype(0000) - 1 day.
In other words when a personel action is performed, another infotype (2001) should appear for change, and in the validity period of this infotype should end with the day before the start of the personel action.
is it possible to achieive this using dynamic actions? how?
Thanks!
Stanislaw AdamskiHi Adamski,
A dynamic action has the following components.
Infotype Number (INFTY): specifies the infotype for which you want the dynamic action triggered
Subtype (SUBTY): narrows the focus to a specific subtype
Field Name (FIELDN): starts your action when a maintenance function is performed on a particular field
Function (FC): specifies the various maintenance operations to which your dynamic action would respond. They are 02 (change); 04 (create); 06 (create and change); 08 (delete); 10 (change and delete); 12 (create and delete). Dynamic actions are only applicable in maintenance operations, not in display functions.
Sequence Number (NO): refers to a sequential number.
Step (A): specifies a particular type of action. No dynamic action is executed if the function character has a value other than one of the following:
P: Plausibility checks, which allow you to check certain conditions.
I: Calls an infotype for processing
W: Called after the I statement and used to assign values to screen fields while creating or copying another infotype record through the I statement
F: Calls a FORM routine (subroutines in ABAP) during your action. The routine may reside in or out the module pool MPNNNN00.
V: Lets you treat collectively a number of fields for which you want to define a common dynamic action
M: Sends SAP Office mail
Variable function part: The variable function part along with the step indicator forms the core part of your action. It specifies the processing details when the dynamic action is triggered. For example:
you have to look for the scenario what you are planning tyo create .
The maintenance of dynamic actions is done via the view V_T588Z, as shown in 1 (IMG menu path Personnel Management>Global Settings in Personnel Management>Basic Settings>Infotypes>Create Dynamic Actions
Here you havev to use conditions INS for the infotype what you want to create..
Please brief the light on the scenario.
Warm Regards,
Kapil Kaushal -
Calling earliest record in a dynamic action
Hi all,
I am using dynamic actions to call infotype 0016 when user creates a new record in infotype 19. I am opening this infotype 0016 in change mode.
Now, I want that the earliest record of infotype 0016 should come in the change mode and not the latest one.
Please suggest what to do for that?
Thanks
RibhuHi Do in this way..
Call a routine...
There is a structure RP50D which is accessible in dynamic action...
Structure is :
FIELD1
DATE1
DATE2
FLAG1
.INCLUDE CI_INCLUDE
in side that routine find out the record for ur particular date..
and pass BEGDA and ENNDA for that record to RP50D-DATE1 and RP50D-DATE2.
and in dynamic action call :
COP,0016,,,(RP50D-DATE1),(RP50D-DATE2)
if u want more fields then u can include in CI include..
Hope it will work
reward if helpful
Regards
Prax -
How to create a dynamic action from link column in classic report
I Have an apex page that display a modal window utilizing jquery. In the modal window I have a classic report with a link column that I want to capture its click event.
I was thinking I could create a dynamic action with selection type=jquery selector. Not for sure if I need to do anything on link column and do not know the syntax
for jquery selector. Would appreciate any help or direction???Thank you for your response. I am very new to Jquery so don't understand all that well.
What I did:
I created a dynamic action
Event: Click
Selection Type: jQuery Selector
jQuery Selector: tdheaders
Created True Actions
I created an alert to see if this is being executed.
Alert 'I made it here'
What I have:
I created a report region with the following query:
Select empno, ename, 'SELECT' from emp
where (ename like '%'||ltrim(rtrim(:P2_SEARCHPU))||'%'
or :P2_SEARCHPU is null)
I created 'SELECT' column as Link Column
Report Attributes
Link Text Select
Target Page in this Application
Page 2
Region Header
<div id="ModalForm2" title="Employee List" style="display:none">
Region Footer
</div>
This report is displayed in a modal form when a button is clicked.
Code for modal window in Page Header
<script type="text/javascript">
$( function() {
$('#ModalForm2').dialog(
{ modal : true ,
autoOpen : false ,
buttons : {
Cancel : function() {
closeForm2();
function openForm2()
$('#ModalForm2').dialog('open');
function closeForm2()
$('#ModalForm2 input[type="text"]').val('');
$('#ModalForm2').dialog('close');
</script>
I am trying to capture the click event on the link column of the report in the modal form. I want to pass a couple of column values
back to the main form and close the modal window. I do not want to do the submit that happens if I click on the link column and link back to the main page(2)
If I let the submit to happen, all other entered fields are cleared on my main form.
Just don't understand the jQuery selector. I have no problem catching the button clicks on the modal form. -
Hi everyone, this should be so easy, yet I am stuck.
I have a form region with an item P110_VESSEL_ID. This item is a select list. It is based on the query:
select distinct v.vessel_name, v.vessel_id
from vessels vessels v, frequent_fishermen ff
where ff.dea_permit_id = :G_PERMIT_ID and
ff:vessel_id = v.vessel_id
UNION
select v.vessel_name, v.vessel_id
from apex_collections a, vessels v
where collection_name = 'SUPVES_COLLECTION' and
a.c002 = v.vessel_id
If the user decides against the values in the select list query, they may opt to SELECT ALL VALUES. This SELECT ALL VALUES is a POST ELEMENT TEXT on P110_VESSEL_ID.
<a id="popVessels" href="#"><font color=blue>Select from ALL Vessels</a>
This all works fine.
The issue is that when the user selects a vessel name = 'UNKNOWN' and it's corresponding vessel_id value, I would like an ALERT to appear indicating that they should double check that the vessel is UNKNOWN and not that the is no vessel.
I created a dynamic action
event= change
select type = item
item = P110_VESSEL_ID
True ACtion #1 is the ALERT.
I currently have no other logic, but cannot even get this to work. Any thoughts. I have also tried the SELECT TYPE = jQuery Selector = select[name='P110_VESSEL_ID'] but that does not work either (though I am not certain if the value should be P110_VESSEL_ID or the static name of VESSEL_ID).
Any help is appreciated.
ps. the page is not submitted when the vessel is changed. There is other data that needs to be entered both in this region and others and many validations run when submit, so the submit would not be an option.
thanks again,
KarenKarenH,
KarenH wrote:
I created a dynamic action
event= change
select type = item
item = P110_VESSEL_ID
True ACtion #1 is the ALERT.
This should work. Sometimes I've see where there is other javascript on the page that may have some errors and is causing the dynamic action code to not be executed. Use your favorite browser script console to try and determine if this may be the case.
--Jeff
P.S. Your jQuery selector can be: select#P110_VESSEL_ID -
Dynamically creating a Record Group based on Previously entered Record Grou
Forms [32 Bit] Version 10.1.2.3.0 (Production)
Hi,
I know how to dynamically create a record group based on a query and putting the code in When new form instance.
My query is. I have a form which has multiple Record Groups and the user wants to dynamically create subsequent groups based on previous groups.
For example
I have a record group with selects a Location,
when the user selects the Location from a list of values
the 2nd record group called 'Cost Centres' will have to filter out only those with the locations selected above.
How can I populate the 2nd record group at run-time when I do not know what site the user will select?
If I simply populate in when new form instance as in location and just select everything, the list of values populates.
CC field is a LIST ITEM and the list style is a POP LIST, it is not required.
I have put the code in the Location field in the when-list-changed trigger.
I am getting this error:
frm-41337: cannot populate the list from the record group
here is the code:
DECLARE
v_recsql Varchar2(1000); -- The SQL for creating the Record Group.
v_recgrp RecordGroup; -- Record Group
v_status Number; -- Return Value of Populate_Group function.
c_where VARCHAR2(1000);
BEGIN
IF :location = '1' THEN
c_where := ' substr(cost_centre,1,2) in (''01'',''02'')';
ELSIF :location = '2' THEN
c_where := ' substr(cost_centre,1,2) in (''02'',''03'')';
ELSIF :location = '3' THEN
c_where := ' substr(cost_centre,1,2) in (''01'',''11'',''07'')';
ELSE
c_where := ' 1=1'; --EVERYTHING
END IF;
v_recsql := 'SELECT cost_centre, description FROM cost_centres where '||c_where;
-- Create the Record Group
v_recgrp := CREATE_GROUP_FROM_QUERY('v_recgrp', v_recsql);
IF NOT ID_NULL(v_recgrp)
THEN -- No Error, record group has been successfully created.
-- Populate Record Group
v_status := POPULATE_GROUP('v_recgrp');
IF v_status = 0
THEN -- No Error. Record Group has been Populated.
POPULATE_LIST('block.CC', 'v_recgrp');
END IF; -- IF v_status = 0
-- Delete the Record Group as it is no longer needed.
DELETE_GROUP('v_recgrp');
END IF; -- IF NOT ID_NULL(v_recgrp)
END;thanks for your assistance.Hi,
Once record status gets change for block you can not populate/repopulate the list item. Keep those list items as non-database item with different names and create different items as database orignal items. Than assign the values in WHEN-LIST-CHANGE trigger to the actual database items.
-Ammad
Maybe you are looking for
-
Problems upgrading from Dreamweaver 4 to CS3
The website I manage is www.episcopal-dallas.org. Today, I upgraded from Dreamweaver 4 to CS3. In Design view, I can edit about half of the pages, but those of the other half (including the index/home page) have gray backgrounds (with a few exception
-
How to prevent kids getting into all my apps and email?
One flaw with the iPad is that its so cool the kids want to play with it. But there's no real - or practical - way for me to prevent them from opening my work emails, my shopping apps, etc. I think it's a usability issue for Apple to assume that the
-
XML element attributes in program
I am using following FMs to create XML document from internal table CALL FUNCTION 'SDIXML_DATA_TO_DOM' CALL FUNCTION 'SDIXML_DOM_TO_XML' My internal table has field 'AMT' and generated XML file has following line <AMT>1000</AMT> But I want this line
-
Deleting unclompleted photocast download
I tried to download a photocast, but saw that the photos weren't very interesting, so I stopped the download, then I removed the photocast from my Source list. iPhoto asked wether I wanted to remove all the photos from within the photocast, I said ye
-
Dispay RFC sync payload in SXMB_MONI
Hi all, I hava a synchronous scenario RCF-TO-SOAP (RFC sender is R3 client). On XI I want that the parameter LOGGING_SYNC is set to 0, but at the same time I want to see the inbound payload in SXMB_MONI. I want to see it only for this specific scenar