Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics GP (Archived)

AP Batches

Posted on by Microsoft Employee

Is there a way to pull a list of users that have access to post AP Batches?

*This post is locked for comments

  • Albert Quezada Profile Picture
    Albert Quezada 95 on at
    RE: AP Batches

    Hello Leslie,

    This also apply to AP security adding, for example went someone in AP is trying to invoice a partial purchase order, there's no warning message to warn the person before invoicing is complete? Basically, trying to avoid wrong invoicing and $ amounts.

  • Suggested answer
    L Vail Profile Picture
    L Vail 65,271 on at
    RE: AP Batches

    Hi,

    Here's what I do.

    1. Run File>Maintenance>Clear Data

    2. Change the display from Logical (the default) to Physical

    3. Select the System Series and insert the Security Resource Descriptions table (to be cleared)

    4. Process or OK, depending on your version. This action will populate the table with the descriptions of the different security objects. It's not what you might expect 'clear' to do; but it does.

    5. Using the script below (provided by Victoria Yudin and one other contributor, I don't remember who at this time of night :)) to create a view against the DYNAMICS database. You could just use the 'select' part of it if you do not want to create the view:

    /*******************************************************************

    This script creates the view view_Security_and_SL_Details

    It should be created in the dyncoa database

    The view lists object security and the task and role

    from which that security is granted

    *******************************************************************/

    create VIEW view_Security_Details

    AS

     

    SELECT DISTINCT

    S.USERID [User_ID],

    S.CMPANYID Company_ID,

    C.CMPNYNAM Company_Name,

    S.SECURITYROLEID Security_Role_ID,

    coalesce(T.SECURITYTASKID,'') Security_Task_ID,

    coalesce(TM.SECURITYTASKNAME,'') Security_Task_Name,

    coalesce(TM.SECURITYTASKDESC,'') Security_Task_Description,

    coalesce(R.DICTID,SO.ASI_DICTID,'') Dictionary_ID,

    coalesce(R.PRODNAME,'') Product_Name,

    coalesce(R.TYPESTR,SO.ResType,'') Resource_Type,

    coalesce(R.DSPLNAME,SO.SmartlistObject,'') Resource_Display_Name,

    coalesce(R.RESTECHNAME,'') Resource_Technical_Name,

    coalesce(R.Series_Name,'') Resource_Series

    FROM SY10500 S -- security assignment user role

    LEFT OUTER JOIN

    SY01500 C -- company master

    ON S.CMPANYID = C.CMPANYID

    LEFT OUTER JOIN

    SY10600 T -- tasks in roles

    ON S.SECURITYROLEID = T.SECURITYROLEID

    LEFT OUTER JOIN

    SY09000 TM -- tasks master

    ON T.SECURITYTASKID = TM.SECURITYTASKID

    LEFT OUTER JOIN

    SY10700 O -- operations in tasks

    ON T.SECURITYTASKID = O.SECURITYTASKID

    LEFT OUTER JOIN

    SY09400 R -- resource descriptions

    ON R.DICTID = O.DICTID AND O.SECRESTYPE = R.SECRESTYPE

    AND O.SECURITYID = R.SECURITYID

    LEFT OUTER JOIN -- smartlist objects

    (SELECT SECURITYTASKID, SECURITYID, DICTID, SECRESTYPE,

    ASI_DICTID, SL_OBJID, SmartlistObject,

    'Smartlist' ResType

    FROM

    (SELECT SECURITYTASKID, SECURITYID, DICTID, SECRESTYPE,

    SECURITYID / 65536 ASI_DICTID, SECURITYID % 65536 SL_OBJID

    FROM SY10700

    WHERE SECRESTYPE = 1000 AND DICTID = 1493) ST

    JOIN

    (SELECT coalesce(TRANSVAL, ASI_Favorite_Name) SmartlistObject,

    ASI_Favorite_Dict_ID, ASI_Favorite_Type

    FROM ASIEXP81 F

    LEFT JOIN

    ASITAB30 A

    ON F.ASI_Favorite_Name = A.UNTRSVAL

    AND A.Language_ID = 0

    WHERE ASI_Favorite_Save_Level = 0) SM

    ON ASI_DICTID = ASI_Favorite_Dict_ID

    AND SL_OBJID = ASI_Favorite_Type) SO

    ON SO.DICTID = O.DICTID AND O.SECRESTYPE = SO.SECRESTYPE

    AND O.SECURITYID = SO.SECURITYID

    GO

    GRANT SELECT ON view_Security_Details TO DYNGRP

    GO

    6. Open the view and filter it by Resource_Type and look for Series Posting Permission.

    This will give you not only who has them, but also through which role and task they were granted.

    I love and recommend the Support Debugging Tool, but this is my go to method for coming up with spreadsheet everyone is looking for.

    Kind regards,

    Leslie

  • Suggested answer
    Redbeard Profile Picture
    Redbeard 12,931 on at
    RE: AP Batches

    nlo -

    You can use the support debugging tool to determine which users have access to any particular functions in GP.  Here is a link, you might find helpful.

    dyngpbeat.wordpress.com/.../use-the-support-debugging-tool-to-tackle-gp-security-issues

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Tips for Writing Effective Suggested Answers

Best practices for providing successful forum answers ✍️

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,280 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,214 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans