‎2014 Mar 23 11:08 AM
Hi,
I had copied the spfli table as ZSPFLI and insert values through a module pool program. I have created a work area of type ZSPFLI and get values ino work area from program and then tried to insert/update it to the ZSPFLI. This method will notperform the checktable validations. How can I do check table validations to the field in the workarea.
Thanks in advance.
‎2014 Mar 23 11:36 AM
hi rakesh,
In your zspfli make sure carrid has the value table as SCARR and connid value table as SPFLI as seen in standard.
Thant will help you in inserting checktable validations
Regards,
Sivaganesh
‎2014 Mar 23 11:50 AM
Yeah there is. The check table is performing when inserting through se11. But not through the program.
‎2014 Mar 23 12:11 PM
make sure you have the table fields mapped correctly to the screen field values.
else write a select statement in chain.. endchain for finding if the value exist in the master table. If not throw a error message.
Regards,
Sivaganesh
‎2014 Mar 23 10:44 PM
Are you expecting the program to check the check tables for you when you try to insert into the database? If so it won't work as when you do an ABAP insert into a database table it does not look at the associated check tables. You would have to do the checks yourself by doing a slect at the check table and branching the program.
‎2014 Mar 24 6:09 AM
‎2014 Mar 24 7:34 AM
Hi Rakesh,
Are you uploading the data using any FM or using Update / Modify statement. If you are using modify statement then it ll not check for the check table entries.
With Regards,
Giriesh M
‎2014 Mar 24 9:00 AM
SE11 / SE16N / SE54 generated programs look for foreign keys, domain values and such ddic constraints, but for a fully customer program you have to check those yourself in PAI or during save of data. Also did you check the ddic reference box in your dynpro ?
If available on your system look at a FM like OIUREP_CHECK_STRUCT_WITH_DDIC which check a whole structure vs ddic constraints or FM DDUT_INPUT_CHECK which checks a single field value for the same.
Regards,
Raymond