Solved

Missing the add button in Files section of Customization Project Editor

  • 21 December 2021
  • 5 replies
  • 267 views

Userlevel 3
Badge

I’m working on an upgrade from 2019 R1 to 2021 R1 and it appears that my Files section of the Customization Project Editor no longer has the add button.  I’ll share an image at the end with a side by side of a 2021 R1 demo site loaded with the U100 data set.

Until today, I’ve never had cause to use the add button in Custom Files on this upgrade instance.  In every other customization project on this site (with an extension library) the DLL is visible by default. However, I have one project where the DLL did not show up and I can't figure out how to correct that if I cannot add the file and the detect changes button isn't picking the new DLL up.  I cannot say if the add button was on this screen after moving from 2019R1 to 2021R1, I never checked.

I'm not sure the way I noticed this has any bearing on the ultimate cause, but I'll include an explanation if it ends up being relevant:

Today I was working on a customization project that was all custom fields and no business logic.  I wanted to create a field selecting event handler for one of those fields. Naturally I started off by converting the DAC to an extension in the "Data Access" section.  Next I selected the option to move the new extension to an extension library from the "Code" section.  

I was working on this upgrade instance remotely those commands remotely and something went wrong and instead of my browser downloading the .bat file, I saw a message to the effect of "A local web site is required".  That is likely an issue with the IIS configuration on this virtual machine and is probably not related to the underlying thing I'd like to fix.  In any case I was able to pick things back up on the VM directly and work on the code I wanted to implement. 

A side effect of the above is that nothing showed up in the Files section after I compiled the library, reopened the project and clicked the Detect Modified Files button.  

I kept working on my code after setting Visual Studio to put the DLL into the instance's bin folder directly, but this is just a temporary solution.

I've tried to get the file to show up a number of ways, likely all the wrong ways seeing as nothing has worked.  I had been working on v21.113 until this evening.  I've upgraded to 21.117 and the add button is still not visible on this screen.  The tool bars in other parts of the Project Editor all seem normal (i.e., there are add buttons on them).

Any help is appreciated, thanks!

 

19 R1 Upgraded to 21 R1 on left, fresh 21 R1 with U100 dataset on right
​​​​​​

 

icon

Best answer by hkabiri 23 December 2021, 18:35

View original

5 replies

Userlevel 6
Badge +5

@PorchlightZach

  1. I would check Access Rights by User (ScreenId=SM201055) select the user you usually log in with, on top and check what the computed Access Rights for the following Node:

Hidden>Customization Project Browser>Files>CustObject

  1. alternatively you can check the same object on Access Rights by Role (ScreenId=SM201025)  if you know certain role is assigned to your user, like customizer and first unnamed node before cancel is for + button or add file, check on the Access Rights for this one

 

  1. You may also want to check the user being used on Instance Deployment has enough access to Acumatica Folders. In some cases user may lose access to folders and can result into not being able to publish customization projects or create or import snapshots.
Userlevel 3
Badge

@hkabiri Thanks for these suggestions.  Initially the CustObject node under Files had access rights of Inherit for all of the items listed.  While my normal user and the admin user had Delete rights to the Customization Project Browser, I explicitly set Delete on everything under CustObject.

 

I haven’t had any issues publishing customizations but to be thorough I made sure that the IIS configuration for this instance had the proper settings to access the Acumatica folder.  I did this using my local windows login.

 

I also made sure to explicitly set user settings on the Acumatica folder for that same windows user (my account)

 

I’m still not seeing the add button though.  Very perplexing.

Userlevel 6
Badge +5

@PorchlightZach Thanks for your detailed response.

Just to make sure there is nothing related to the application side, and as the last resort I would suggest deploy a new instance against the same Database and login using the new URL and check if that makes the difference. This way we can make sure nothing is related to the Application files.

Userlevel 3
Badge

@PorchlightZach Thanks for your detailed response.

Just to make sure there is nothing related to the application side, and as the last resort I would suggest deploy a new instance against the same Database and login using the new URL and check if that makes the difference. This way we can make sure nothing is related to the Application files.

I’ll give this a try, but it won’t be for a while.   When I am ready to do our upgrade on the production instance, I intend to check this part of the Customization Project Editor before I upload the updated projects and publish them.

Our live 19R1 instance has the add button on this form.  If it disappears after the upgrade is complete but before I publish customizations, I’ll at least know whether it was related to the upgrade.  I’ll post an update when I know more.  Thanks for your help again.

Userlevel 3
Badge

While I never figured out exactly what caused the add button to disappear, I ran into some problems when I tried to get my customization ready for export.  Since I could not add the DLLs to the project, I removed the code from the Visual Studio solution folder and recreated my Graph and DAC extensions as entries in the Code section of the Customization Project Editor.  There was a bit of extra work making sure all of the previously compiled customization DLLs were cleaned up, but that is tangential info so I won’t cover it here.

After I recreated my extensions in the Code section of the CPE, I attempted to publish everything and ran into a namespace collision within PX.Objects.SO.  My project's DAC and Graph extensions for SOOrder and SOOrderEntry were created with the default class names.  As it happens when our VAR created customizations for us a couple years ago their code also used the same default class names.

After I refactored my code to use a unique name, I was able to compile everything and keep going with my upgrade work.  

The instance on my virtual machine still does not have the add button so nothing I've tried has fixed that. Our production instance retained the add button when we went to 2020R2 and it remains there in 2021 R1, which is what I really care about.  

I suspect that the namespace collision could have contributed to the initial problem with moving code entries into my extension library.  I have no substantial evidence to prove that out, but it stands to reason that some part of the move to extension process would go haywire if the code involved caused a namespace collision.

I’m going to accept the “deploy new instance” response as the answer to this question.  If I wasn’t experiencing this issue on a throw away VM, I’d have taken that route.

 

 

 

Reply


About Acumatica ERP system
Acumatica Cloud ERP provides the best business management solution for transforming your company to thrive in the new digital economy. Built on a future-proof platform with open architecture for rapid integrations, scalability, and ease of use, Acumatica delivers unparalleled value to small and midmarket organizations. Connected Business. Delivered.
© 2008 — 2024  Acumatica, Inc. All rights reserved