Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Module Pool:editable field not changing

Former Member
0 Likes
1,578

Hi All,

I created one module pool program with three fields MATNR,EBELN,KTMNG(qty). KTMNG is user key in accordingly to create delivery order.

Now the problem is when user key in KTMNG field value let say 10.000.when press enter Again its taking the database value(20.000 for example).

how to keep the user key value 10.000.

here is my coding:

PROCESS BEFORE OUTPUT.

LOOP AT ITAB INTO WA WITH CONTROL tabcontrol.

MODULE STATUS_0100.

ENDLOOP.

PROCESS AFTER INPUT.

MODULE USER_COMMAND_0100.

LOOP AT ITAB.

ENDLOOP.

MODULE USER_COMMAND_0100 INPUT.

CASE SY-UCOMM.

WHEN 'DIS'.

REFRESH:ITAB.

SELECT EBELN MATNR KTMNG INTO CORRESPONDING FIELDS OF TABLE ITAB FROM EKPO

WHERE EBELN EQ EKPO-EBELN.

WHEN 'EXIT'.

LEAVE PROGRAM.

ENDCASE.

ENDMODULE. " USER_COMMAND_0100 INPUT

MODULE STATUS_0100 OUTPUT.

SET PF-STATUS 'ZTESTING'.

SET TITLEBAR 'ZTEST'.

MOVE:WA-EBELN TO EKKO-EBELN,

WA-KTMNG TO EKPO-KTMNG,

WA-MATNR TO EKPO-MATNR.

VCONTROL-LINES = SY-DBCNT.

ENDMODULE.

Please help me.

Thank You,

Anu.

7 REPLIES 7
Read only

Former Member
0 Likes
1,096

Hi Anitha,

In Top Include

data : first type char1.

MOVE: WA-EBELN TO EKKO-EBELN.
if first is initial.
first = 'X'. " Put a Flag like this and proceed further, if this doesnt work check appropriate position to put the Flag
"Putting a Flag will serve your purpose.
MOVE: WA-KTMNG TO EKPO-KTMNG.
endif.
MOVE: WA-MATNR TO EKPO-MATNR.

Cheerz

Ram

Read only

Former Member
0 Likes
1,096

Hi

PROCESS AFTER INPUT.

MODULE USER_COMMAND_0100.

LOOP AT ITAB.

ENDLOOP.

MODULE USER_COMMAND_0100 INPUT.

CASE SY-UCOMM.

WHEN 'DIS'.

REFRESH:ITAB.

SELECT EBELN MATNR KTMNG INTO CORRESPONDING FIELDS OF TABLE ITAB FROM EKPO

WHERE EBELN EQ EKPO-EBELN.

u r doing mistake in PAI.

after user interaction don't fetch the data corresponding to KTMNG just take from screen and the remaining from table .

Anil

Read only

Former Member
0 Likes
1,096

 PROCESS BEFORE OUTPUT.
 LOOP AT ITAB INTO WA WITH CONTROL tabcontrol.
  MODULE STATUS_0100.
    ENDLOOP.
 
 
 PROCESS AFTER INPUT.
  MODULE USER_COMMAND_0100. 
     
    LOOP AT ITAB.
"  add this 
      CHAIN.
        FIELD EKKO-EBELN.
        FIELD EKPO-KTMNG.
        FIELD EKPO-MATNR.
        Modify tablecontrol.
     ENDCHAIN.
  ENDLOOP.
 
 MODULE USER_COMMAND_0100 INPUT.
   CASE SY-UCOMM.
     WHEN 'DIS'.
"  Comment this start and Pushi to PBO and check if  ITAB  is initial then do below Qyery
       REFRESH:ITAB.
       SELECT EBELN MATNR KTMNG INTO CORRESPONDING FIELDS OF TABLE ITAB FROM EKPO 
                                                 WHERE EBELN EQ EKPO-EBELN.
" Comment this end
 
     WHEN 'EXIT'.
       LEAVE PROGRAM.
   ENDCASE.
 ENDMODULE.                 " USER_COMMAND_0100  INPUT
 
 MODULE STATUS_0100 OUTPUT.
   SET PF-STATUS 'ZTESTING'.
   SET TITLEBAR 'ZTEST'.
   MOVE:WA-EBELN TO EKKO-EBELN,
        WA-KTMNG TO EKPO-KTMNG,
        WA-MATNR TO EKPO-MATNR.
   VCONTROL-LINES = SY-DBCNT.
 ENDMODULE.    


  MODULE TABLECONTROL OUTPUT.        "New addition in PAI for Modify 
  MOVE:EKKO-EBELN TO WA-EBELN,
        EKPO-KTMNG TO WA-KTMNG  ,
        EKPO-MATNR TO WA-MATNR .

  MODIFY ITAB FROM wa    INDEX tabcontrol-current_line

 ENDMODULE
 
Read only

0 Likes
1,096

Hi Prabhu,

I tried but its not working. Please help me.

Regards,

Anu

Read only

Former Member
0 Likes
1,096

hi Anitha,

When you are using Case conation after that you clear the SY-UCOMM and OK_CODE Value like:-

 
CASE SY-UCOMM.

WHEN 'DIS'. 
REFRESH:ITAB. 
SELECT EBELN MATNR KTMNG INTO CORRESPONDING FIELDS OF TABLE ITAB FROM EKPO 
WHERE EBELN EQ EKPO-EBELN. 
CLEAR SY-UCOMM.

WHEN 'EXIT'.
LEAVE PROGRAM.
CLEAR SY-UCOMM.

ENDCASE.

You should be use clear SY-UCOMM Statment after the end of WHEN statment.

i think thread is slaved.

Regards,

Abhilash

Read only

0 Likes
1,096

Hi All,

Still same problem facing..Unable to set the cursor field on table control field.

Please suggest me.

Regards.

Anu

Read only

0 Likes
1,096

Hi Anitha,

In the module status 0100 of PBO, use SET CURSOR FIELD f .

Please see below code snippet :-

DATA F(5) VALUE 'MODUS'. 
DATA MODUS(10) VALUE '1234567890'. 
... 
MODULE set_cursor OUTPUT. 
... 
  SET CURSOR FIELD  F. 


or 


  SET CURSOR FIELD 'MODUS'. 

Hope this solves your query, plz close the thread if it does solve.

Regards

Abhii