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

dialog programming

Former Member
0 Likes
693

Hi

i designed a screen with po number and item details in table control.i havnig the requirement that when user givesa ponumber and press enter the data from item table must be poppulated into table control .

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
671

hi,

please clarify ur query...

u having one I/O field and one table control on screen...

when user give po number into I/O field u want assosiated data of that PO number into table control?

is that so?

6 REPLIES 6
Read only

Former Member
0 Likes
672

hi,

please clarify ur query...

u having one I/O field and one table control on screen...

when user give po number into I/O field u want assosiated data of that PO number into table control?

is that so?

Read only

0 Likes
671

Hi ,

My layout design is with fields.

PONum

delivery date in PO.

Actual delivery date.

Fields inTable Control.

Material Number

Material Description

Qtyin PO

Actual Delivered quantity

Netvalue.

When user enters Po number and press enter fields Delivery date in PO,Matnum,Quantity in Po must be retived from Po table and displayed in screen as disabled mode and we have to enter Actual delivery date , Actual delivered Qty,Net Value

in screen when user press save all field values must be saved in Delivery table

Edited by: raghavendra bysani on Feb 26, 2008 6:44 AM

Read only

0 Likes
671

hi,

ok first make all the output enable in which u want automatic output....

now in module user_command of PAI.....

write like this...

MODULE user_command_1000 INPUT.

CASE ok_code.

WHEN 'BACK' OR 'UP' OR 'CANC'.

LEAVE PROGRAM.

WHEN ' '.

IF itab-matnr IS NOT INITIAL.

SELECT mblnr INTO CORRESPONDING FIELDS OF TABLE itab1 FROM mseg

WHERE matnr = itab-matnr.

ENDIF.

ENDCASE.

ENDMODULE. " USER_COMMAND_1000 INPUT

here when u press enter space will be in sy-ucomm.....

here itab-matnr is my input field.....

when i enter matnr into input field and press enter table control filled with its material doc,which is in table control

reward if usefull...

Read only

Former Member
0 Likes
671

Hi ,

In PAI of the screen select data for this particular PO number and stored the data in your internal table which used for table control.dont forget to write the loop endloop in PAI and PBO.

write one module in the PAI of the screen to fetch data from database.hope this is clear.otherwise let us knw

IN PBO.

loop at it_decl into wa_decl with control tc_rec

cursor tc_rec-current_line.

module display_mode.

endloop.

IN PAI.

loop at it_decl.

chain.

field : wa_decl-qtydmgd,

wa_decl-qtyshdelvd,

wa_decl-salvagevalue.

module check_qty.

endchain.

regards

shibu

Read only

Former Member
0 Likes
671

Hi ,

Create a screen 100 with header fields

Po number

Delivery date

Actual Delivery date

IN MODULE POOL EDITOR

PBO

loop at it_decl into wa_decl with control tc_rec

endloop.

PAI

Loop at it tab into gstab.

endloop.

and table control for item details.

THIS IS IN ABAP EDITOR

In PAI for Screen 100

After Entering the values for

Po number

Delivery date

Actual Delivery date

and press enter( you have to capture that user command in screen 100)

PAI

case sy-ucomm.

when 'ENTE'.

loop at gt_tab into gs_tab.

endloop.

endcase.

This will populate all the records into table control.

If this helps reward Points

Read only

Former Member
0 Likes
671

Hi,

For Reference try this code as follows.

We had try on Customer number IN TRAINING i.e on Kna1-knuur, if we gave kunnr value in first screen, related sales order number should display in table control. in Table Control , if We put a cursor on one sale oreder i.e, vbak-vbeln(sale order hedaer value) then item values has to display in second table control .

In Screen Painter

First Screen say 100 layout design

flow logic

PROCESS BEFORE OUTPUT.

MODULE STATUS_0100.

PROCESS AFTER INPUT.

FIELD KNA1-KUNNR MODULE VALIDATE_KUNNR ON INPUT.

MODULE USER_COMMAND_0100.

create a

Customer number (text box) -


(input field form distionary )

And Create one Pushbutton for display ( write FCode)

Second Screen say 200 lay out degin

create a (as the above)

Customer number (text box) -


(input field form distionary )

Name of Kna1(text box)----


(input field form distionary )

And

*Create One Table Control from interbnal table here for *header sales order ** . put all these thing in one box for good looking

flow logic

PROCESS BEFORE OUTPUT.

LOOP AT IT_TAB WITH CONTROL TC1 CURSOR TC1-CURRENT_LINE.

ENDLOOP.

MODULE STATUS_0200.

PROCESS AFTER INPUT.

LOOP AT IT_TAB.

MODULE MODIFY.

ENDLOOP.

MODULE USER_COMMAND_0200.

*Third Screen say 300 Lay out Design *

PROCESS BEFORE OUTPUT.

MODULE STATUS_0300.

LOOP AT IT_TAB1 WITH CONTROL TC2 CURSOR TC2-TOP_LINE.

ENDLOOP.

PROCESS AFTER INPUT.

MODULE USER_COMMAND_0300.

LOOP AT IT_TAB1.

ENDLOOP.

*Create One Table Control from interbnal table here for sales item *

UPTO THIS PART IS SCREEN PAINTER

Driver Program ifs follows

TABLES KNA1.

*----


First internal table for screen 200

DATA: BEGIN OF IT_TAB OCCURS 0,

CHK,

VBELN TYPE VBAK-VBELN,

KUNNR TYPE VBAK-KUNNR,

ERNAM TYPE VBAK-ERNAM,

AUDAT TYPE VBAK-AUDAT,

VBTYP TYPE VBAK-VBTYP,

END OF IT_TAB.

*----


Second internal table for screen 300

DATA: BEGIN OF IT_TAB1 OCCURS 0,

VBELN TYPE VBAP-VBELN,

POSNR TYPE VBAP-POSNR,

PSTYV TYPE VBAP-PSTYV,

POSAR TYPE VBAP-POSAR,

END OF IT_TAB1.

*----


ok_code declaration

DATA OK_CODE TYPE SY-UCOMM.

DATA: V_KNA1 LIKE KNA1.

&----


*& Module STATUS_0100 OUTPUT

&----


*----


PF-STATUS FOR SCREEN 0100

MODULE STATUS_0100 OUTPUT.

SET PF-STATUS 'FAR'.

ENDMODULE. " STATUS_0100 OUTPUT

&----


*& Module USER_COMMAND_0100 INPUT

&----


MODULE USER_COMMAND_0100 INPUT.

OK_CODE = SY-UCOMM.

CASE OK_CODE.

WHEN 'DISP' OR SPACE.

SELECT SINGLE *

FROM KNA1

INTO KNA1

WHERE KUNNR = KNA1-KUNNR.

SELECT *

FROM VBAK

INTO CORRESPONDING FIELDS OF TABLE IT_TAB

WHERE KUNNR = KNA1-KUNNR.

IF SY-SUBRC <> 0.

MESSAGE 'NO RECORDS FOUND' TYPE 'E'.

ENDIF.

WHEN 'BACK'.

LEAVE PROGRAM.

ENDCASE.

ENDMODULE. " USER_COMMAND_0100 INPUT

&----


*& Module USER_COMMAND_0200 INPUT

&----


MODULE USER_COMMAND_0200 INPUT.

CONTROLS TC1 TYPE TABLEVIEW USING SCREEN 200.

SET PF-STATUS 'ZFAR'.

CASE OK_CODE.

WHEN 'BACK'.

LEAVE TO SCREEN 100.

WHEN 'EXIT'.

LEAVE PROGRAM.

WHEN 'DISP'.

CLEAR IT_TAB.

READ TABLE IT_TAB WITH KEY CHK = 'X'.

IF NOT IT_TAB-CHK IS INITIAL.

SELECT VBELN POSNR PSTYV POSAR

FROM VBAP

INTO TABLE IT_TAB1

WHERE VBELN = IT_TAB-VBELN.

*------Processing error

IF SY-SUBRC <> 0.

MESSAGE 'NO ITEMS FOUND' TYPE 'E'.

ENDIF.

ENDIF.

ENDCASE.

ENDMODULE. " USER_COMMAND_0200 INPUT

&----


*& Module STATUS_0200 OUTPUT

&----


                        • PF-STATUS FOR SCREEN 0200

MODULE STATUS_0200 OUTPUT.

SET PF-STATUS 'ZFAR'.

ENDMODULE. " STATUS_0200 OUTPUT

*&----


**& Module STATUS_0300 OUTPUT

*&----


**----


PF-STATUS FOR SCREEN 0300

*MODULE STATUS_0300 OUTPUT.

  • SET PF-STATUS 'FAR2'.

  • SET TITLEBAR 'TITLE'.

*ENDMODULE. " STATUS_0300 OUTPUT

&----


*& Module MODIFY INPUT

&----


*----


modifying table input

MODULE MODIFY INPUT.

MODIFY IT_TAB INDEX TC1-CURRENT_LINE.

ENDMODULE. " MODIFY INPUT

&----


*& Module USER_COMMAND_0300 INPUT

&----


*----


table control for third screen

MODULE USER_COMMAND_0300 INPUT.

CONTROLS TC2 TYPE TABLEVIEW USING SCREEN 300.

SET PF-STATUS 'FAR2'.

*------case

CASE OK_CODE.

*----


leave to previous screen.

WHEN 'DISP'.

LEAVE TO SCREEN 200.

WHEN 'EXIT'.

LEAVE PROGRAM.

*----


error record no existing sales item found

IF SY-SUBRC <> 0.

MESSAGE 'NO SA_ITEMS FOUND' TYPE 'E'.

ENDIF.

ENDCASE.

ENDMODULE. " USER_COMMAND_0300 INPUT

&----


*& Module VALIDATE_KUNNR INPUT

&----


*----


validating kunnr

MODULE VALIDATE_KUNNR INPUT.

V_KNA1 = KNA1.

SELECT SINGLE *

FROM KNA1

INTO KNA1

WHERE KUNNR = KNA1-KUNNR.

*------Process information

IF SY-SUBRC <> 0.

CLEAR KNA1.

KNA1-KUNNR = V_KNA1-KUNNR.

CASE OK_CODE.

*----


leave program

WHEN 'BACK'.

LEAVE PROGRAM.

ENDCASE.

*----


raises an error that no customers found.

MESSAGE 'NO CUSTOMER FOUND' TYPE 'E'.

LEAVE TO SCREEN 100.

ENDIF.

Reward Points If Usefull

Regards

Fareedas

Edited by: Fareeda Tabassum S on Apr 30, 2008 11:19 AM