короткий ответ: вы помещаете содержимое поля в переменную, имеющую правильную структуру таблицы, и вставляете эту переменную в таблицу (или обновляете, если хотите изменить существующее значение)
DATA line LIKE Txxxx. 'Txxxx is the table you want to insert into
line-v1 = inputfield1. 'inputfield1 is your first inputfield
line-v2 = inputfiled2. 'inputfield1 is your second inputfield
INSERT Txxxx FROM line.
if sy-subrc ne 0.
* an error has occured...
endif.
если вы использовали мастер из определения таблицы, тогда поля ввода уже могут быть чем-то вроде Txxxx-v1 и Txxxx-v2. В этом может быть даже проще, так как вы можете просто сделать следующее:
INSERT Txxxx.
Обратите внимание, что это всего лишь очень быстрый и грязный ответ на ваш вопрос. Возможно, вам придется проверить, имеют ли значения какой-либо смысл, и, по крайней мере, если они еще не существуют в таблице.
Привет
Редактировать :
о вашем обновлении ...
запятая разделяет обновление на две части. Вы должны удалить это.
Кроме того, вы должны использовать рабочую область: переменную той же структуры, которую вы заполняете. Затем вы используете его для создания / чтения / обновления / удаления в вашей таблице ... Это упростит чтение кода.
Что-то вроде:
* define the working area
data wa_zmotoren_jat like zmotoren_jat. " wa_ stand for "working area"
* modifiy the variable
wa_zmotoren_jat-motorid = ....
wa_zmotoren_jat-prijs = ...
wa_zmotoren_jat-naam = ...
* use it to update...
UPDATE zmotoren_jat SET:
prijs = wa_zmotoren_jat-prijs,
naam = wa_zmotoren_jat-naam
WHERE motorid = wa_zmotoren_jat-motorid.