今天学到如何读取内表。在SQL Server 2005管理器里面看到了SPFLI这个航班表,里面有一大串的数据。其中第一个栏位是MANDT,放的是Client的信息。由于我登录的是Client 001,而表里面却没有001的数据,故在SE16里面看不到任何记录。
于是我就做了一点手脚,直接在SQL Server 2005管理器里面直接把这些000的数据给Update了,000的数据都改为001,这样在SAP里SE16里面就可以有数据了,但是要命的是在SAP写ABAP查询的时候却无论如何也找不到。语法是绝对没问题了,可是不管用什么方法就是显示不出来数据!就差点要崩溃了,上QQ群和百度都没有找到相关的信息。
后来转念一想,应该是自己把数据给搞脏了才对。于是又Update回来,用DDIC登录000的Client系统,新建了一个用户,并赋予SAP_ALL最高权限。在登录之,之行SE38,运行之前查询的程序,这下数据都显示出来了~
我想数据库里面每个Client里表之间都是互相有关联的,私自在数据库里更改肯定会破坏一些规则。不过惊讶的发现不同的Client里程序貌似是公用的~