Want to throw error message

Stivan_dsouza21Stivan_dsouza21 Member Posts: 218
when user is putting a check mark in closed field on sales line if he does not have role of sales order approval it should throw an error......

below is the code written but it throwing error even if it have sale order approval role.
Closed - OnValidate() --- ON Form i have written code
Usersetup.GET(USERID);
Memberof.RESET;
Memberof.SETRANGE(Memberof."User ID",Usersetup."User ID");
IF Memberof.FINDFIRST THEN
BEGIN
IF Memberof."Role ID" <> 'SALES ORDER APPROVAL' THEN
ERROR ('You do not have permission to close the line');
END;


can somebody help me
Thanks & Regards,
Stivan D'souza

Comments

  • mohana_cse06mohana_cse06 Member Posts: 5,504
    May be you have different roles assigned to user?
    Closed - OnValidate()
    Usersetup.GET(USERID);
    Memberof.RESET;
    Memberof.SETRANGE("User ID",Usersetup."User ID");
    Memberof.SETRANGE("Role ID",'SALES ORDER APPROVAL' );
    IF Memberof.ISEMPTY THEN
      ERROR ('You do not have permission to close the line');
    

    Try some thing like this..
  • Stivan_dsouza21Stivan_dsouza21 Member Posts: 218
    Thanks Mohana it worked

    =D>
    Thanks & Regards,
    Stivan D'souza
  • ssinglassingla Member Posts: 2,973
    Writing code on form is something which is not recommended. Try transferring your code to table field OnValidate trigger.
    Further alternative approach can be to insert a boolean field in user setup and then checking the values.
    CA Sandeep Singla
    http://ssdynamics.co.in
  • raveendran.sraveendran.s Member Posts: 119
    ssingla wrote:
    Writing code on form is something which is not recommended. Try transferring your code to table field OnValidate trigger.
    Further alternative approach can be to insert a boolean field in user setup and then checking the values.

    I prefer not to do this as the IT Admin forgets the Setup options in the User Setup.

    We can use NAV without User Setup, wherein the same is not possible without Roles & Permissions.

    I support your point on moving code in to Table Trigger, in that case, we need to check the Document Type, Since the same table is used commonly across various documents.
    --
    Regards,
    Raveendran.BS
Sign In or Register to comment.