How to update database table with key field?
Hello Experts,
I have a database table with following fields
MATNR - Key
SSOUR - Key
KUNNR - Key
MENG1
MENG2
MENG3
And this table contains records like...
MSD50001 R 1000001 5.30 2.30 5.25
MSD50002 R 1000002 5.30 2.30 5.25
MSD50003 R 1000003 5.30 2.30 5.25
MSD50005 R 1000004 5.30 2.30 5.25
MSD50004 R 1000005 5.30 2.30 5.25
I have an internal table with same fields of above database table.
MSD50001 A 1000001 5.30 2.30 5.25
MSD50002 A 1000002 5.30 2.30 5.25
MSD50003 A 1000003 5.30 2.30 5.25
MSD50005 A 1000004 5.30 2.30 5.25
MSD50004 A 1000005 5.30 2.30 5.25
MSD50006 A 1000006 5.30 2.30 5.25
I want to update the DB table with following internal table records.
If internal table records = db table records are same then Update....else insert from internal table to db table.
But here, SSOUR is key field so i am not able to use
MODIFY dbtab from itab.
It results me , entries in internal table are inserted into db table.
So i have double records.
Is there any statement which updates the key field? and if no fields in db table then insert it?
Regards
RH
hi,
u cannot update akey field.u can update only non key fields by using key field as a selection criteria.For example if u go to sm30 if u enter any table for inserting values, the key field will always be greyed out it is not succumbed to chnges.but u can insert value into ,if ur inserting and in the insert staemnet if u have key field which is already present in the table it will return sy-subrc = 4 otherwise it will insert the record and return 0.
eg for update :
UPDATE zdm_wtyprof SET upload_status = 'S'
WHERE spart = wa_upd-spart.
here spart is the key field and it will update the status field in the table as S.
if updated succesfully it will return 0.
SIMILARLY U CAN USE select.
Similar Messages
-
How to update database table with this new internal table
hi
i have a internal table having 8 records and it contains one record which was modified by user
not i want this new record to be updated to the database table which was modified by the user
how to do it pls suggest?
i want to use index for comarision as using index will not have any problems like promary key etc
like i want to capture the index for this table which was modified thr recoed index and use thi record indext to modify the database table
or any other suggestion
regards
nishantHi Nishant,
Have an additional field in a table to indicate a change with which you avoid in updating the record modified by user.
Regards,
Madhu. -
How to Update ESTMJ table with appended fields
Attempting to do a mass load of data to table ESTMJ. Tried using an LSMW, but took a very long time...days in fact. Added a couple Z fields to this table in an append structure. Attempting to run BAPI_BUS1077_CREATE to add records, but how do I update the new Z fields using this BAPI?
Hi,
the af:column allows you to group columns
<af:column>
<af:column> </af:column>
<af:column> </af:column>
</af:clomn>
Also, in HTML it is easy to assign a background color to cell, e.g. cell with Label 1 is red, Label 2 is green.
Is there something like this in JSF?
You can use CSS on the inlineStyl or contentStyle property to dynamically set CSS using EL. You can reference e.g. a managed bean , access the #{row} variable within the managed bean method and return the color based on the value you read for the each row
Frank -
How to update database table !!!
hi all,
Please advice how to update database table with certain cndition needs to be checked.
Please consider below scenario.
have used enqueu and dequeue function to lock entries and also i have used BAPI so considering that return parameter . i want to update table
/tdk/st0027.
1. I want to update database table
2. there are certain condition needs to be checked like ,
loop at it_final into wa_final.
th_return-type = 'S'.
if th_final-vbeln = /tdk/st0027-vbeln and
th_final-posnr = /tdk/st0027-posnr and
th_final-etenr = /tdk/st0027-sdslno.
above condition which i need to check .and need to append below system fields need to be appended in table.
th_final-prstsind = '20'.
th_final-chgdate = g_date.
th_final-chgtime = g_uzeit.
th_final-chgprog = g_cprog.
th_final-chguser = g_uname.
append th_final to td_final.
update /tdk/st0027 FROM th_final.
endif.
endloop.
but i am getting error saying that "The type od database table and work area (TH_FINAL) are not unicode convertible"?
I am not able to understandwhat would be the solution for this ?
Thanks and regards,
Prasad K. NAralkarThe error occurs in the UPDATE statement included in the code. In this statement it is seen that there is a mismatch of structure defined for the DDIC table /tdk/st0027 and that of your work area th_final.
try to create a structure w.r.t the DDIC table.
Eg: DATA: wa_temp TYPE /tdk/st0027.
MOVE-CORRESPONDING th_final TO wa_temp.
Then try to UPDATE using the temporary work area i.e wa_temp which has structure similar to that of the database table. -
How to update two tables with trigger
Hi:
how to update two tables with trigger ?
I have two tables :
(1)ASIA
MI number;
(2)ASIA_P
ID number;
When I insert a new value into the asia.MI ,I also can
insert the same value into the asia_p.id field.
I have write a trigger as follows but it does't work.
create or replace trigger MI_TRG
before insert on asia
for each row
declare
seq number;
begin
select MI_SEQ.Nextval into seq from dual;
:new.MI:=seq;
insert into ASIA_PRO(MI_ID)
values
(seq);
end MI_TRG;
How to realize it ?
thanks
zzmWhy do you say it does not work?
-
Need help in updating database table from screen fields
Hi,
Can anyone tell me how to update the database table with the entries given in the fields of a screen ?...a procedure-wise explanation would be very helpful.
Thank you.
Moderator message: sorry, no beginner forums here, please search for available information or attend training.
locked by: Thomas Zloch on Aug 12, 2010 3:16 PMHi,
Can anyone tell me how to update the database table with the entries given in the fields of a screen ?...a procedure-wise explanation would be very helpful.
Thank you.
Moderator message: sorry, no beginner forums here, please search for available information or attend training.
locked by: Thomas Zloch on Aug 12, 2010 3:16 PM -
How to convert internal table with dynamic fields to XML
Dear all,
I met a problem like the following:
The aim is to transform the following parameter to XML
IT_FIELD stores the dynamic filed name of the internal table,with these fields, the dynamic internal can be created by cl_abap_tabledescr=>create(it_field)
IT_VALUE stores the value of the internal table dynamically created with dynamic fields.
For example
IT_FIELD =>
line1: FIELD1
line2: FIELD2
line3: FIELD3,
three lines in this internal table.
dynamically created internal table structure FIELD1 FIELD2 FIELD3
And IT_VALUE=>
1 2 3 (First line)
11 22 33
two lines of data.
Do you have any idea about how to transform the IT_VALUE to XML here? And also the transformed XML to the IT_VALUE.( we may need remember IT_FIELD here for later XML to IT_VALUE.)
Hope I describe the problem clearly.
Any inputs will be appreciated.
Edited by: Max Tang on Jan 12, 2009 3:46 PM
Edited by: Max Tang on Jan 12, 2009 4:14 PMHi,
you need to implement a bit of coding for that.
With the 'do varying' statement abap provides a loop over those fields. Within this loop you can build up a new internal table with one entry for each period and amount.
kind regards
Siggi
PS: I am not very familiar with CO, but I guess there will be a standard extractor for that. -
How to Update EKPO table with enhancement at header level-customer data tab
Experts,
I have a requirement where I had to create a new button in the 'customer data' tab(header) in the ME21N/ME22N Transaction and once it gets clicked a table control will appear and in that all the line items with item no, material and plant and an additional check box will display, and once any one checks the check box against the item/material in the table control the item data with additional z fields (already created the zfields in EKPO Table) should get updated.
Displaying Table control and item data on the click of button was successful, but once you check the check box against the item and save the PO it is not updating the z-fields in the EKPO table.
I have implemented all the user exits , badis but no results.
Once you check the box in the table control against each item in the header part (Table control is in header part (customer tab)) the line item EKPO table with z fields should get updated.
Any Clues/ideas will be appreciated.
Thanks in advance,
Kalikonda.Hi,
Can you please share the remedy for above issue, recently we have same issue in our system.
or please send me any supportive doc. for the below mail
Looking forward for your positive response.
Thanks
Mohan
([email protected]) -
Updating database table with DUPLICATE keys
i have an internal table having data as follows.
emp_id name date proj_id activity_id Hours Remarks
101 Pavan 09.10.2007 123 1 2.00 Coding
101 Pavan 09.10.2007 124 2 1.00 Documentation
102 Raj 09.10.2007 123 3 6.00 Testing
Now i need to update a Ztable with above mentioned data.
The structure of the Ztable is as follows.
Mandt emp_id name date proj_id activity_id Hours Remarks
NOte: i have ticked both check boxes for the field MANDT in table.
Rest didnt select the check boxes.
I believe now the field MANDT alone is a primary key for the z-table.
NOw i have tried with UPDATE/INSERT statments to update the database table.
But instead of inserting all the rows, the system is over writing on the same emp_id row.
Even tried with the statments like INSERT INTO <Ztable> values <Internal table> ACCEPTING DUPLICATE KEYS.
But its not getting inserted as a separate row in the table.
Requirement is to insert the multiple rows in the database table without any over writing activity.
Can anyone give me the code to do this?
Regards
PavanHi Pavan,
Please let me know what are the key fields in your Ztable. Try with below code it may help you. change the "Ztablename" as your database table name and I_INTERNAL TABLE as your internal table name. still you are facing the problem please let me know.
lock the custom table before updating the table.
CALL FUNCTION 'ENQUEUE_E_TABLE'
EXPORTING
MODE_RSTABLE = 'E'
TABNAME = 'ZTABLENAME'
VARKEY =
X_TABNAME = ' '
X_VARKEY = ' '
_SCOPE = '2'
_WAIT = ' '
_COLLECT = ' '
EXCEPTIONS
FOREIGN_LOCK = 1
SYSTEM_FAILURE = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
INSERT ZTABLENAME FROM TABLE I_INTERNALTABLE ACCEPTING DUPLICATE KEYS.
COMMIT WORK.
ENDIF.
unlock after updating the custom table After updation is done.
CALL FUNCTION 'DEQUEUE_E_TABLE'
EXPORTING
MODE_RSTABLE = 'E'
TABNAME = 'ZTABLENAME'
VARKEY =
X_TABNAME = ' '
X_VARKEY = ' '
_SCOPE = '3'
_SYNCHRON = ' '
_COLLECT = ' ' -
How to update database table from Internal Table
hi experts,
Can anyone please assist me in inserting records to a database table from an Internal Table
whose structures are identical.
Thanks in Advance,
Sudhaa............Hi Sudha,
Here are some example of update and insert:
UPDATE SFLIGHT SET PLANETYPE = 'A310'
PRICE = PRICE - '100.00'
WHERE CARRID = 'LH' AND CONNID = '0402'.
This example overwrites the contents of the PLANETYPE column with A310 and decreases the value of the PRICE column by 100 for each entry in SFLIGHT where CARRID contains u2018LHu2019 and CONNID contains u2018402u2019.
TABLES SPFLI.
DATA WA TYPE SPFLI.
MOVE 'AA' TO WA-CARRID.
MOVE '0064' TO WA-CONNID.
MOVE 'WASHINGTON' TO WA-CITYFROM.
UPDATE SPFLI FROM WA.
MOVE 'LH' TO SPFLI-CARRID.
MOVE '0017' TO SPFLI-CONNID.
MOVE 'BERLIN' TO SPFLI-CITYFROM.
UPDATE SPFLI.
CARRID and CONNID are the primary key fields of table SPFLI. All fields of those lines where the primary key fields are "AA" and "0064", or "LH" and "0017", are replaced by the values in the corresponding fields of the work area WA or the table work area SPFLI.
DATA: ITAB TYPE HASHED TABLE OF SPFLI
WITH UNIQUE KEY CARRID CONNID,
WA LIKE LINE OF ITAB.
WA-CARRID = 'UA'. WA-CONNID = '0011'. WA-CITYFROM = ...
INSERT WA INTO TABLE ITAB.
WA-CARRID = 'LH'. WA-CONNID = '1245'. WA-CITYFROM = ...
INSERT WA INTO TABLE ITAB.
WA-CARRID = 'AA'. WA-CONNID = '4574'. WA-CITYFROM = ...
INSERT WA INTO TABLE ITAB.
UPDATE SPFLI FROM TABLE ITAB.
This example fills a hashed table ITAB and then overwrites the lines in SPFLI that have the same primary key (CARRID and CONNID) as a line in the internal table.
Insert statement :
TABLES SPFLI.
DATA WA TYPE SPFLI.
WA-CARRID = 'LH'.
WA-CITYFROM = 'WASHINGTON'.
INSERT INTO SPFLI VALUES WA.
WA-CARRID = 'UA'.
WA-CITYFROM = 'LONDON'.
INSERT SPFLI FROM WA.
SPFLI-CARRID = 'LH'.
SPFLI-CITYFROM = 'BERLIN'.
INSERT SPFLI.
If the database table does not already contain a line with the same primary key as specified in the work area, the operation is completed successfully and SY-SUBRC is set to 0. Otherwise, the line is not inserted, and SY-SUBRC is set to 4.
Regards,
Premraj kaushik -
How to convert the table with separate fields for every period
Hi there,
I have the table in R/3 called COSP. The table contains the separate fields for values of separate reporting periods, let's say Amount01, Amount02 etc. I need to extract this data to BW and load it into ODS, which contains the data like common key figure for amount and info object Fiscal Period. How to extract and tansform the data to be able to load it there?
I mean, how to change the row like:
100 100 200 200....
for rows like:
001 100
002 100
003 200
004 200
I hope you'll help,
KooyotHi,
you need to implement a bit of coding for that.
With the 'do varying' statement abap provides a loop over those fields. Within this loop you can build up a new internal table with one entry for each period and amount.
kind regards
Siggi
PS: I am not very familiar with CO, but I guess there will be a standard extractor for that. -
How to update Nested tables with xsu
Hello,
I have three tables.
1) DEPARTMENT_TAB
2) EMPLOYEE_TYP
3) ADDRESS_TYP
ADDRESS_TYP is a collection and it is nested inside EMPLOYEE_TYP.
EMPLOYEE_TYP is a collection and it is nested inside DEPARTMENT_TAB.
created with below scropt
CREATE TYPE ADDRESS_TYP AS OBJECT (CITY VARCHAR2(10), STATE VARCHAR2(2));
CREATE TYPE ADDRESS_TYP_NT AS TABLE OF ADDRESS_TYP;
CREATE TYPE EMPLOYEE_TYP AS OBJECT (EMPNO NUMBER(4), ENAME VARCHAR2(10), ADDRESS_VAR ADDRESS_TYP_NT);
CREATE TYPE EMPLOYEE_TYP_NT AS TABLE OF EMPLOYEE_TYP;
CREATE TABLE DEPARTMENT_TAB (DEPTNO NUMBER(4), DNAME VARCHAR2(10), EMPLOYEE_VAR EMPLOYEE_TYP_NT)
NESTED TABLE EMPLOYEE_VAR STORE AS EMPLOYEE_TAB
( NESTED TABLE ADDRESS_VAR STORE AS ADDRESS_TAB);
I inserted two rows in DEPARTMENT_TAB and their nested tables using normalsql. and i generated below xml content using XSU java API
oracle.xml.sql.query.OracleXMLQuery
My Question is How to UPDATE a row in ADDRESS_TAB using XSU java API
oracle.xml.sql.dml.OracleXMLSave.
(When i was trying to update address_tab nested table's row with xml input file. it is deleting other existing rows)
Thanks.Why do you say it does not work?
-
Read Table with key field - question
Hi,
Can you use the same key field more than once?
For example:
READ TABLE I_TVKWZ INTO I_TVKWZ_2 WITH KEY WERKS = '1004'
Werks = '1002'.
I get an error when trying this.
Is there an alternative?
Thanks,
JohnHi John,
try this:
DATA: begin of itab occurs 0,
werks like mseg-werks,
i type i,
end of itab.
itab-werks = '1000'. itab-i = itab-i + 1. append itab.
itab-werks = '1000'. itab-i = itab-i + 1. append itab.
itab-werks = '2000'. itab-i = itab-i + 1. append itab.
itab-werks = '3000'. itab-i = itab-i + 1. append itab.
itab-werks = '5000'. itab-i = itab-i + 1. append itab.
itab-werks = '5000'. itab-i = itab-i + 1. append itab.
itab-werks = '7000'. itab-i = itab-i + 1. append itab.
itab-werks = '7000'. itab-i = itab-i + 1. append itab.
itab-werks = '9000'. itab-i = itab-i + 1. append itab.
itab-werks = '9000'. itab-i = itab-i + 1. append itab.
itab-werks = '9000'. itab-i = itab-i + 1. append itab.
loop at itab where werks = '1000' or werks = '9000'.
write: / itab-werks, itab-i.
endloop.
Regards, Dieter -
How to update database table in jdeveloper 10g
I currently have a roles table, usersinroles table, and a users table. The users table has a user ID, the roles table has a Role ID, and the usersinroles table has Role ID and user ID as foreign keys. I can add new users, but how can I implement the ability to add a role to the user and it store the USER ID of that particular user and the ROLE ID of the role I choose in the usersinroles table??
Thanks,
AdamI'm not sure I understand your question here.
If you have EOs for each one of the three tables with master-detail associations from the user and role tables to the cross table, then you can create a master/details form showing a user and all his roles and then adding a record to the crosstable will automatically add the userid correctly. -
How to update a table with strin that contains &
Hi,
I would like to update ename col of emp table with a string that contains &
update emp set ename = 'tom&jerry' where empno = 7369But this gives an error.Please advice.
Regards,Consult the sql*plus reference manual on how to disable the &
Software engineers should be capable of doing research themselves, please stop abusing this forum to increase your salary by being spoon fed for free.
Sybrand Bakker
Senior Oracle DBA
Maybe you are looking for
-
Hi All, I have problems with iOS5 installed on my iPad1. After successfully installing the new iOS5, my iPad1 apps are jumbled up with my wife's apps. Some of my paid apps are missing. So, i tried to restore to factory default. Now, my iTunes could
-
Bridge think photoshop is busy with a task - CS6/Window 7
Bridge keeps telling me that photoshop is busy with a task and asks if a wish to queue the request. Photoshop is not busy. I can go to photoshop and open and close items, run batch process, ect. I even tried closing and opening Photoshop. Bridge stil
-
Help: Internet Connection
Hi, I'd be really grateful if anyone had a solution to this problem: I am able to connect to the internet, but then frequently find that my connection stops (somehow) and I get the "You are not connected to the internet" page. On the Network Diagnos
-
Start the Listener Automatically
OS is Solaris Data base is 9i I shutdown database (shutdown immediate) and after that Solaris server (shutdown now). When I start solaris server database started but listener didn't start. How to start the listener automatically when OS reeboots? Tha
-
Want to use "LINE-IN" but keeps recording with "BUILT-IN MICROPHONE"?
Set up Mac>System Preferences>Sound and choose LINE-IN......check! Set up Audio MIDI setup default to Built-in Line-in, NOT microphone...check?? okay.. i've been trying to record with a microphone that i have. i did everything i could to NOT record w