我想以编程方式写入SAP自定义表。
如何将表条目更改到更改日志中?
我不需要运输。它只有一个表,没有相应的语言依赖表。
我知道自定义表更改会记录到表DBTABLOG中。 (这与使用更改文档的应用程序数据更改不同。)
如何以编程方式将更改导入DBTABLOG?
我使用了事务SE56'生成表维护对话框'生成似乎对此任务有用的表单:
这会生成由FORM vim_bc_logs_put
使用的~SingleThreadPtr() {
if (c_) {
if (--*c_ != 0) {
return;
}
delete c_;
}
delete p_;
}
之类的表单。
是否有示例如何在没有生成对话框的情况下使用这些生成的表单?
答案 0 :(得分:1)
首先,您应该了解SAP日志记录的概念。登录SAP分为业务对象日志记录和表日志记录,我们称之为技术。我们不考虑应用程序日志记录(SLG1
),而只讨论表格数据。
业务日志记录由变更文档(SCDO
)表示,技术日志记录(表格)由标准工具(SCU3
)表示。
DBTABLOG
表。您可以通过以下方式为任何表启用日志记录(包括自定义):
rec/client
参数(RZ11 tcode)设置为您希望跟踪更改的客户端编号。如果要为所有客户端启用日志记录,请在那里设置ALL
值(不推荐!)。回答您的特定问题:
您不需要特殊的FM或方法来填充DBTABLOG
表格。无论如何更改,都会记录更改:通过维护视图,以编程方式或通过手动编辑。
您不需要任何特殊操作来填充此表,并且您可以通过您喜欢的任何方式读取存储的记录(编写自己的报告,创建视图或其他任何方式)。
其他几点需要注意:
SPRO
交易中查看。 更改日志。在此之前,您应该选择要查看其日志的SPRO节点。