直接切入问题。
有两个参数,如文件名和表名。要求是将数据从excel表上传到数据库表,输入另一个参数。这应该是在运行时。没有硬编码字段名,该程序应该足够灵活,以适应任何表。请帮助。
我可以想到两种可能的方法:
- 动态代码生成——编写一个程序来编写一个程序
- 使用动态类型工具
1。试试用谷歌搜索
2。参见https://wiki.scn.sap.com/wiki/display/Snippets/Example+-+create+a+dynamic+internal+table -这个wiki展示了一种方法(不确定它是否过分,因为它从头开始创建类型,而SAP系统中的任何表都已经在数据字典中定义了类型)。
你可以很容易地在Open SQL中引用一个参数化的表,例如MODIFY (p_tab)…
也许您可以将分隔符从file中读取的行拆分为一个字段表-然后您可以使用ASSIGN COMPONENT将您读取的字段与内部类型中的字段进行匹配。
如果你正在这样做,我认为允许的表的白名单将是明智的-并验证检查。否则,有人可能在没有授权的情况下上传SAP标准表。