Question on importing 100 function profile's functional authorization

SUGGESTED

Hi,

I would like to update 100 function profile's functional authorization.

I developed an import template (based on AFP and GESAFP; I did something on AFP object to allow import) but I got this error for special supervisor functions like: AIMP or GESITM, which does not have Site Grouping (1) or Sites (2) and using number 0 of the local menu (912) which starts at 1.

While standard procedure expects me to use Menu Profile/Functional Authorization or manually do it, there are a few functions not in the Menu Profile such as GESBOD and to manually do it is labor intensive with chance of mistake.

I am not given access to the SQL Server so using SQL query is out of the question. I am only given access to Sage X3 website only.

  • 0

    Removing AFP object allows me to import.

    However, during test, the function profile only accepted the standard ones and the special functions like AIMP and GESITM are not on the Navigation Page and cannot be accessible directly even by function code.

    The only way to get it to work is through Functional Authorization page of the function profile's function and manually save it, defeating the purpose of using the import template.

  • 0 in reply to chunheng

    Additionally, I noticed that during creation of function profile, there was a request from Sage X3 supervisor to overall update the AFCTFCY table.

    As I was creating an empty function profile to fill function authorization, I clicked Yes and quickly done since there's no Functional Authorization to fill in.

    When I observe from SQL side after updating AIMP function in Functional Authorization, an AIMP entry has been created in AFCTFCY table.

  • 0 in reply to chunheng
    SUGGESTED

    From the two replies by me, I do a two-import approach.
    I believe the AFCTFCY will probably be in a terrible shape but this is a temporary workaround until anyone have an idea on the proper way of doing this.

    I used one import template during testing, would recommend to prepare 2 instead so no need to go back and change it.

    On first import, I remove the AFP object of the import template and validate.
    Import it.
    This is to bypass the NBAFP error which I have zero idea on.  
    Everything except the supervisor can be accessed at this point.

    On second import, I add back the AFP object of the import template and validate.
    Import the same file, again.
    This time, the supervisor entries are input to the AFCTFCY and all access granted.

  • 0

    Did you setup the import template as a normal template or mark is as special import? For this object, you would need to create it as a "special import" and write your own code in the SAIMSK label. The issue is the way the object functions, you need to trigger and load the screen values manually within the import template. 

  • 0 in reply to Regard Hulsbos

    > Did you setup the import template as a normal template or mark is as special import?

    From standard's object AFP by default could not be import. I manually turned it on as a temporary measure (in actuality, a permanent measure whenever function profile update is required).

    Once I put in the AFP object, the special import option is available for use.

    For this object, you would need to create it as a "special import" and write your own code in the SAIMSK label.

    For my reference:

    The whole Import/Export work process: https://online-help.sageerpx3.com/erp/12/staticpost/importexport-templates-technical-annex/

    At tab Header field, $SAIMSK information: https://online-help.sageerpx3.com/erp/12/staticpost/import-export-template/

    > The issue is the way the object functions, you need to trigger and load the screen values manually within the import template. 

    I will need to create a specific script for the import/export template.

    On this specific script, I will need to setup the $SAIMSK label.

    What should I fill in on AFP0's NBAFP screen field in cases like AIMP function or GESBOD function which are all triggering the error?

  • 0 in reply to chunheng

    This two-import approach has a known expectation issue due to method used.

    If say there is a site grouping with empty site (meaning, all sites) and were expecting the import file to overwrite it, then no it will append to it rather than overwriting it.

    Reimporting the same import file will just update the access and options if changed or adding more site/site grouping if additional rows being different.

    To actually remove it, well, I recommend deleting the function profile (either through SQL query on two tables of the function profile in question or delete the Function Profile after moving the users out temporary to a dummy function profile).

    Just be very careful when using this method and have at least 2 stakeholders to confirm file import details before running the import procedure as cleaning this up, especially if it is not new function profile creation, will become extremely messy when nobody knows what it should looks like and to manually remove the mistake rows inside the SQL Server database or Functional Authorization screen.

  • 0

    I now have a separate problem.

    Assuming I have made a mistake import on all 100 function profile's functional authorization, how do I remove the mistake import without relying on SQL DELETE query of 300 lines (1x for Menu Profile, 1x for functional authorization, 1x for site-function table)?