Keep "update" and "generate update script" buttons enabled in compare screen in database project.
In database project I wanted to generate update script after running "Compare". But "update" and "generate update script" buttons are disabled.
Keep buttons disabled without information why is a bad UX design. Better way would be to have buttons enabled, but when user clicked them, show detailed message why the operation couldn't be done.
Google gives multiple reasons why "update" and "generate script" buttons could be disabled, but the most often reason is the errors during the build( e.g see http://stackoverflow.com/questions/17742638/update-target-button-is-disabled-after-schema-comparison?noredirect=1&lq=1)
Why some errors in the database project should prevent generating script? Why errors on objects which you've excluded from the compare prevent the buttons from being enabled? I understand, that results of compare may be not accurate, but they are shown anyway. So it's ok to show comparison result on screen, but not allowed to generate script based on comparison result. It doesn't make any sense.
It will be better to show warning , that results may be not accurate due to compile errors, and it is better to fix the errors first, but still allow user to continue, if he/she insists.
"I have plenty off Errors mostly due to unresolved/ambiguous references. However, I don't think that visual studio schema compare should bother about this." – Joel http://stackoverflow.com/questions/29277339/update-target-button-is-disabled-in-sql-server-database-schema-comparison#comment47665497_29277339
Actually unresolved/ambiguous references in most cases are false alarms, and compiler should be fixed to reduce number of errors( but it's out of scope for this suggestion- e.g. See https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/3577074-allow-three-part-naming-for-referring-a-db-object)
Please allow update/ generate script functionality to be executed regardless of number of reported errors.
Janet Beckmann commented
I end up with update enabled, generate script not and not errors. How annoying
This is a good suggestion. Disabling functionality without cause is infuriating.