SAP将数据插入SQL SEVER中
FORM frm_update_sql . DATA lv_dbname TYPE dbcon_name VALUE 'KPI'. DATA exc_ref TYPE REF TO cx_sy_native_sql_error. DATA error_text TYPE string. TRY. *---连接到SQL EXEC SQL. CONNECT TO :LV_DBNAME ENDEXEC. IF sy-subrc <> 0. RAISE EXCEPTION TYPE cx_sy_native_sql_error. ELSE. MESSAGE '连接成功' TYPE 'S'. ENDIF. EXEC SQL. SET CONNECTION :LV_DBNAME ENDEXEC. IF <dyn_table1> IS NOT INITIAL. LOOP AT <dyn_table1> INTO <dyn_wa>. ASSIGN COMPONENT 'ZFXN' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zfxn = <dyn_field>. ASSIGN COMPONENT 'ZFXY' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zfxy = <dyn_field>. ASSIGN COMPONENT 'PERNR' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-pernr = <dyn_field>. ASSIGN COMPONENT 'ZZ_ZJ' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zz_zj = <dyn_field>. ASSIGN COMPONENT 'ZJITUAN' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zjituan = <dyn_field>. ASSIGN COMPONENT 'ZZ_YJBM' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zz_yjbm = <dyn_field>. ASSIGN COMPONENT 'ZZ_EJBM' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zz_ejbm = <dyn_field>. ASSIGN COMPONENT 'ZZ_SJBM' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zz_sjbm = <dyn_field>. ASSIGN COMPONENT 'ZZ_SJBM4' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-zz_sjbm4 = <dyn_field>. ASSIGN COMPONENT 'EENUM' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-eenum = <dyn_field>. ASSIGN COMPONENT '900000' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9000 = <dyn_field>. ASSIGN COMPONENT '900010' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9001 = <dyn_field>. ASSIGN COMPONENT '900020' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9002 = <dyn_field>. ASSIGN COMPONENT '900030' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9003 = <dyn_field>. ASSIGN COMPONENT '900040' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9004 = <dyn_field>. ASSIGN COMPONENT '900050' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9005 = <dyn_field>. ASSIGN COMPONENT '900060' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9006 = <dyn_field>. ASSIGN COMPONENT '900070' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9007 = <dyn_field>. ASSIGN COMPONENT '900080' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9008 = <dyn_field>. ASSIGN COMPONENT '900090' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9009 = <dyn_field>. ASSIGN COMPONENT '900100' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9010 = <dyn_field>. ASSIGN COMPONENT '900110' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9011 = <dyn_field>. ASSIGN COMPONENT '900120' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9012 = <dyn_field>. ASSIGN COMPONENT '900130' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9013 = <dyn_field>. ASSIGN COMPONENT '900140' OF STRUCTURE <dyn_wa> TO <dyn_field>. gt_bi-z9014 = <dyn_field>. APPEND gt_bi. CLEAR gt_bi. ENDLOOP. ENDIF. LOOP AT gt_bi. TRY . EXEC SQL. INSERT INTO zhr_bi_010(zfxn, zfxy, zjituan, zz_yjbm, zz_ejbm, zz_sjbm, zz_sjbm4, ZZ_ZJ, EENUM, z9000, z9001, z9002, z9003, z9004, z9005, z9006, z9007, z9008, z9009, z9010, z9011, z9012, z9013, z9014) VALUES ( :gt_bi-zfxn, :gt_bi-zfxy, :gt_bi-zjituan, :gt_bi-zz_yjbm, :gt_bi-zz_ejbm, :gt_bi-zz_sjbm, :gt_bi-zz_sjbm4, :gt_bi-ZZ_ZJ, :gt_bi-EENUM, :gt_bi-Z9000, :gt_bi-Z9001, :gt_bi-Z9002, :gt_bi-Z9003, :gt_bi-Z9004, :gt_bi-Z9005, :gt_bi-Z9006, :gt_bi-Z9007, :gt_bi-Z9008, :gt_bi-Z9009, :gt_bi-Z9010, :gt_bi-Z9011, :gt_bi-Z9012, :gt_bi-Z9013, :gt_bi-Z9014) ENDEXEC. CATCH cx_sy_native_sql_error INTO exc_ref. error_text = exc_ref->get_text( ). MESSAGE error_text TYPE 'I'. ENDTRY. ENDLOOP. IF error_text IS INITIAL. COMMIT WORK AND WAIT. ELSE. ROLLBACK WORK. ENDIF. *---关闭连接 EXEC SQL. DISCONNECT :lv_dbname ENDEXEC. CATCH cx_sy_native_sql_error. MESSAGE 'Error in Native SQL.' TYPE 'E'. ENDTRY. ENDFORM.

浙公网安备 33010602011771号