点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
专家们,
我确实有交易通知,阻止特定用户更改付款期限,但奇怪的是它仅适用于供应商。 每次用户编辑客户时,除了付款条件以外的任何其他字段,系统都会阻止其更新。 参见下面的代码,这有什么问题吗? 谢谢
如果@TRANSACTION_TYPE IN('A','U')AND(@OBJECT_TYPE ='2')
如果存在就开始(从OCRD T1中选择T1.CARDCODE
内部联接(从ACRD TA组中选择MAX(TA.LogInstanc)作为LogInstan,TA.CARDCODE,TA.GroupNum由TA.CARDCODE,TA.GroupNum选择)T0 ON T0.CARDCODE = T1.CARDCODE
T1上的INNER JOIN DBO.OUSR T2.USERSIGN2 = T2.USERID
T1.CARDCODE = @LIST_OF_COLS_VAL_TAB_DEL AND(T0。[GroupNum] <> T1。[GroupNum])和T1.USERSIGN2不在('96')中)
BEGIN SELECT @ERROR = 81,@ERROR_MESSAGE ='不允许您添加/更改付款条款'
结束
END
谢谢
玛丽亚
如果(@object_type ='2'和@transaction_type位于('A','U')中,您可以在下面做类似的事情
您好! 由于存在相同的问题,我一直在寻找一种方法,仅允许特定用户更新BP上的付款条件。 我们使用的是SAP B1 9.2 11.这是在TN上使用的查询im
IF(@object_type ='2'和@transaction_type IN('U'))
开始
声明@currPayment INT
DECLARE @oldPayment INT
DECLARE @MYUSER NVARCHAR(20)
SET @currPayment =(从OCRD WHERE卡代码中选择GroupNum = @list_of_cols_val_tab_del)
SET @oldPayment =(从ACRD WHERE卡代码= TOP TOP(1)GroupNum = @list_of_cols_val_tab_del ORDER BY LogInstanc DESC)
SET @MYUSER =(从[dbo]中选择T2.User_Code。[OINV] T0内部联接[dbo]。[OUSR] T2在T0上。[UserSign] = T2。[USERID]其中t0.DocEntry = @list_of_cols_val_tab_del )
如果@currPayment <> @oldPayment
开始
如果@MYUSER!='vmorales'
开始
SET @error = 1
SET @error_message ='没有社会责任的实际条件'
END
END
END
查询工作正常,但是当我尝试更新SAP上的bp付款条款时,出现查询错误,提示[Microsoft] [SQL Server Native Client 10.0] [SQL Server]将nvarchar值" clientnumber"转换为数据时转换失败 输入int。 (CINF)
有什么主意我在这里做错什么吗?
谢谢!
一周热门 更多>