表的下载结构

2020-08-19 09:50发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我想在Excel工作表中下载表格的结构。 是否有相同的菜单路径,事务或程序?

预先感谢您的帮助。

此致

Anuja。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我想在Excel工作表中下载表格的结构。 是否有相同的菜单路径,事务或程序?

预先感谢您的帮助。

此致

Anuja。

付费偷看设置
发送
8条回答
clever101
1楼 · 2020-08-19 10:07.采纳回答

您好

使用功能模块:DDIF_FIELDINFO_GET并指定需要其结构的表,它将提供该表的结构,包括字段,数据元素和域等。

< p>致谢

Sreeram Kumar.Madisetty

huskylover
2楼-- · 2020-08-19 09:55

嗨Anuja,


晚上好。

以下是使用VBScript将结构获取到excel文件的步骤:

a。 定义此脚本所需的所有变量。


-并且主要变量之一是"长索引变量",您可以按以下方式定义:

Dim lngIdx'需要通过SAP表结构循环并检索表列字段名称。

Dim ExcelApp'Excel App

Dim ExcelWorkbook'Excel工作簿

Dim ExcelSheet'Excel工作表

b。 实例化SAP访问的结构和功能-

Set objFileSystemObject = CreateObject(" Scripting.FileSystemObject")'文件系统对象的实例化

设置ctlLogon = CreateObject(" SAP.LogonControl.1")'SAP登录控制对象的实例

Set funcControl = CreateObject(" SAP.Functions")'SAP函数实例-注意应安装SAP

Set ctlTableFactory = CreateObject(" SAP.TableFactory.1")'SAP Table Factory的设置和实例化

设置RFC_READ_TABLE = funcControl.Add(" RFC_READ_TABLE")'RFC READ TABLE的功能控件,按此顺序需要以下4个

设置strExport1 = RFC_READ_TABLE.Exports(" QUERY_TABLE")'SAP查询表实例化

设置strExport2 = RFC_READ_TABLE.Exports(" DELIMITER")'根据需要分隔符,并且是SAP中RFC READ TABLE的一部分

设置tblOptions = RFC_READ_TABLE.Tables(" OPTIONS")'这是用于编写实际的SQL查询

设置tblData = RFC_READ_TABLE.Tables(" DATA")'请参考上面显示的实际RFC READ TABLE FM(SE37)

设置tblFields = RFC_READ_TABLE.Tables(" FIELDS")

设置tblStructure = funcControl.CreateStructure(sapTables(m))'其中sapTables(m)是包含要检索其结构的表列表的数组。

c。 以下是您需要检索表结构及其位置的功能
SE16向您显示或ZSE16向您显示。

对于lngIdx = 1到tblStructure.ColumnCount'遍历整个表结构并获取表列字段名称。 这很理想。

如果tblStructure.ColumnCount> 10然后

actCounter = 10'这是必需的,因为RFC_READ_TABLE,我使用的主要功能具有一个TAB512输出字段-表示输出的总长度不能大于512字节。

其他

actCounter = tblStructure.ColumnCount

如果结束

对于lngIdx = 1的actCounter

'.ColumnName包含字段名称

'.ColumnLength包含字段长度

'.ColumnOffset包含字段偏移量

tblFields.AppendRow

tblFields(tblFields.RowCount," FIELDNAME")= tblStructure.ColumnName(lngIdx)

ExcelSheet.Cells(row,n).Value = tblStructure.ColumnName(lngIdx)'将复制输入表中的10个字段及其域,大小,偏移量和长度。

'如果tblStructure.ColumnOffset(lngIdx)+ tblStructure.ColumnLength(lngIdx)> 1024,然后退出

'WshShell.Popup tblFields(tblFields.RowCount," FIELDNAME")&"检索到列",1," Progress"'显示带有表字段名的消息框,第二秒钟&消失。

下一个

'----不包括完整代码。在这里。

其他仅供参考-我目前正在研究使用以下功能来帮助实现

增加输出缓冲区的大小,以便我可以提取整个表,而不仅限于此

512字节:

a。 RPY_TABLE_READ或

b。 BBP_RFC_READ_TABLE

希望有帮助。 让我知道您是否需要更多帮助?。

谢谢

Ram.S

一周热门 更多>