乙個關於VOFM的文章

2021-06-26 23:41:36 字數 1134 閱讀 7956

問題描述

sap erp 實施中,經常會用到例程開發(tcode:vofm)。建立例程需要access key,這個可以通過申請得到,建立後例程會被包含在乙個request下,例程建立之後還不能馬上使用,需要啟用,如圖所示。

否則無法正常使用。

request釋放後可以傳輸到目標系統,但是問題就出現在傳輸。如果只是傳輸,是無法正常使用的。這是sap的乙個bug。要了解這個bug,先要了解sap例程的工作原理。

例程工作原理

例程,即fomula,是使用在銷售、採購、發票、交貨等單據中定價過程的一小段程式。之所以有fomula存在,是因為在不同的業務場景下,定價過程可能千差萬別,但是卻可以拆分為一些關鍵的組成部分,如複製請求、資料傳輸、要求、公式,每個例程就是一小段專用程式,這些例程程式會被標準程式動態呼叫:如:perform *** in ***x if found. 我們可以在例程中編寫**片段,修改執行環境中的資料。具體的每種例程都有不同的環境變數和介面資料,在此就不詳細說明了。

建立例程的過程,實際上是做了以下幾件事,我們以要求–定價–998例程為例說明:

1 建立了程式:rv61a998,改程式可通過se38檢視

2 在表tfrm、tfrmt中新增資料,記錄建立的例程編號等資訊

3 啟用例程時,rv61a998被include 在rv61annn,即在rv61annn中新增一行:include rv61a998.

下面解釋下傳輸後無法正常使用。

change request釋放後傳輸,1、2兩步可以正常完成,但是第三步,雖然在目標系統中啟用了,但是未能include在rv61annn程式中,因此定價過程配置好之後,會出現abap dump.

解決方法:在目標系統中執行程式:rv80hgen即可修復bug,而不需要在目標系統中通過vofm啟用例程。該程式的作用是根據表tfrm,tfrmt在rv61annn等程式中增加include rv61a998這樣的**,如此才能正常執行。具體見notes:28683

關於Linux IPC的乙個系列的文章

原帖發表在ibm的developerworks 上,是乙個系列的文章,作者鄭彥興,通過講解和例子演示了linux中幾種ipc的使用方式,我覺得很好,在這裡做乙個保留,能看完的話linux ipc的基礎是沒有問題的了。一 linux環境程序間通訊 一 管道及有名管道 二 linux環境程序間通訊 二 ...

關於Linux IPC的乙個系列的文章

原帖發表在ibm的developerworks 上,是乙個系列的文章,作者鄭彥興,通過講解和例子演示了linux中幾種ipc的使用方式,我覺得很好,在這裡做乙個保留,能看完的話linux ipc的基礎是沒有問題的了。一 linux環境程序間通訊 一 管道及有名管道 二 linux環境程序間通訊 二 ...

收藏關於Linux IPC的乙個系列的文章

原帖發表在ibm的developerworks 上,是乙個系列的文章,作者鄭彥興,通過講解和例子演示了linux中幾種ipc的使用方式,我覺得很好,在這裡做乙個保留,能看完的話linux ipc的基礎是沒有問題的了。一 linux環境程序間通訊 一 管道及有名管道 二 linux環境程序間通訊 二 ...