I ASP.net 웹 사이트의 기능 중 하나에서 여러 BAPI 및 저장 프로 시저를 호출하는 C# 웹 응용 프로그램이 있습니다. 함수 안에있는 메소드 중 하나가 실패하면 웹에서 호출 된 함수에서 실행 된 모든 bapi를 롤백해야합니다.asp.net 웹 페이지의 BAPI 기능 롤백
SQL에서전이라고 할
SqlTransaction 트랜잭션 connectionsql.BeginTransaction =();
및 전화
transaction.Rollback();
중 하나가 실패한 경우 C# 코드에. (이것은 SQL 롤백을 위해 수행 될 수 있습니다)
그러나 SAP BAPI의 경우 C# catch 문에서 BAPI_TRANSACTION_ROLLBACK을 호출하더라도 변경 사항은 여전히 존재합니다. (롤백 성공하지 못했습니다)
FYI, 내 BAPI 함수에서 CSAP_MAT_BOM_MAINTAIN을 사용하여 BOM 정보를 업데이트합니다.
SAP BAPI 기능의 C# 코드에서 SQL 트랜잭션과 같은 롤백을 수행하는 방법이 있으며 웹에서 예외를 catch하는 경우 C#에서 실행되는 모든 BAPI를 롤백 할 수 있습니까?
이 게시물은 SAP와 BAPI에 관한 것입니다. 중도에서 실패한 것이 있으면 BAPI는 SAP 자체에서 처리하는 롤백을 수행합니다. – Mike