cancel
Showing results for 
Search instead for 
Did you mean: 

Removing or Hiding 'ROW DETAILS'

Former Member
0 Kudos

Hi

For our SAP B1 solution in entering Sales Orders, we have fixed through various Price Lists. In the front end, we have the Price column visible but inactive through form settings. However, the problem we recently noticed was that anyone could Right Click > Go to Row details and change the price to whatever.

Is there anyway to block a persons ability to go to either Row Details or to make the price column inactive over there. The 'Form Setting' button does not work in Row details

We are using B1 2007A PL42

Thanks for your help.

~ moiz

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

That is a known limitation for row detail. You need an SP_TN to block the change of this price.

Thanks,

Gordon

Former Member
0 Kudos

Could you tell me what is SP_TN and how would I use it?

Thanks

Former Member
0 Kudos

You may search this forum for SP Transaction Notification to find many discussions about this SP.

Former Member
0 Kudos

I would try the SP Transaction Number thing and keep you posted.

For the record, Authorizations > Edit Document Table did not work. Neither did making the price inactive because the Edit Form button does not work.

Former Member
0 Kudos

Hi

After several different methods, the one we can come up with to solve this issue is as follows:

Put a check on SP Transaction Number on 'Add' Button. The trigger checks against all the line items to the prices against ALL the price lists we have defined. If the price for item does not match either one of the prices, then an error is given.

While it does work, surely there should be a better and quicker method to solve this?

Any ideas?

Thanks for your help.

Former Member
0 Kudos

You may post your SP here for others to check the logic in order to improve the outcome.

former_member583013
Active Contributor
0 Kudos

In the Authorization window > Sales A/R > Change Row Amount ....set it to No Authorization

Former Member
0 Kudos

I think we have improved on the query and it seems to work fine now. Ill post it over here for everyone's reference soon.

Edit: Here is the query we used

IF @transaction_type IN ('A','U') AND (@Object_type = '15')
BEGIN 
IF EXISTS ( SELECT     dbo.ITM1.Price, dbo.ITM1.ItemCode, dbo.ITM1.PriceList, dbo.ODLN.CardCode, dbo.ODLN.CardName
FROM         dbo.DLN1 INNER JOIN
                      dbo.ODLN ON dbo.DLN1.DocEntry = dbo.ODLN.DocEntry INNER JOIN
                      dbo.ITM1 INNER JOIN
                      dbo.OCRD ON dbo.ITM1.PriceList = dbo.OCRD.ListNum ON dbo.ODLN.CardCode = dbo.OCRD.CardCode
					  where DLN1.PriceBefDi<>dbo.ITM1.Price and DLN1.itemcode=dbo.ITM1.itemcode and odln.usersign=32 AND ODLN.docentry = @list_of_cols_val_tab_del)
BEGIN 
SELECT @Error = 5, @error_message ='Mandatory field [Price List] missing.' 
END 

-- Select the return values
select @error, @error_message

end

It checks against the user assigned Price List and gives error if price is different. The query also grants exemption to user whose usersign is 32 (a Manager in our case)

Hope it could help other people too!

Edited by: Moiz Aly Manji on May 30, 2009 6:17 PM

Answers (2)

Answers (2)

former_member187989
Active Contributor
0 Kudos

Set Authorization as General --> Edit Document Tables ---> No Authorization.

Jeyakanthan

former_member204969
Active Contributor
0 Kudos

You should make inactive or invisible the price in the row details window by setting in the form setting under the Row Format tab.