Skip to main content

FAQ

Answers to common questions from developers joining the project or returning after time away. For symptom-based fixes, see Troubleshooting.

Introduction​

Damsy ERP is a mature ASP.NET MVC + SQL Server system with conventions that differ from modern SPA or EF Core stacks. These Q&A pairs address the gaps teams hit most often in the first few days and after deployment.

Purpose​

Short, actionable answers with links to detailed guides — reducing repeated onboarding explanations.

When to use​

  • First-day setup questions
  • "Why does it work locally but not on VPS?"
  • Quick reminders on schema, session keys, and publish

Getting started​

What do I open first?​

Open DamsyERP.sln in Visual Studio, set DamsyERP.UI as the startup project, and confirm MyConnectionString in Web.config points to a database with full schema. See Installation and Running locally.

Why won't the solution run with only Git clone?​

The SQL schema is not fully in Git (~185 tables, ~887 stored procedures). You need either a restored backup, a shared dev database, or Blank database setup with schema export from a working DB.

What are the default login credentials on a seeded blank DB?​

FieldValue
CompanyDamsy Technologies
Login IDadmin
PasswordAdmin@123

See Seed scripts. Change the password after first login.


Architecture​

Does the app use Entity Framework?​

No. Data access is ADO.NET through BaseHelper, calling stored procedures. See Data access layer.

Where is business logic?​

Primarily in SQL Server stored procedures. Controllers and DAL orchestrate parameters, session gates, and view models; complex rules live in dbo.* procedures.

Why is the Administration area spelled "Adminisration"?​

Historical route name — intentional in code. URLs and Area registration use Adminisration. Do not rename without a full migration. See Naming conventions.

How does module access work?​

There is no single permission string in session. After login, dtVerifyUser (BO.User) holds boolean module flags (Payroll, Billing, ZStock, …). The dashboard shows tiles for enabled modules. Menu-level permissions use MenuMaster / UserPermissions when populated.

What connection string does the app use?​

MyConnectionString — resolved in BaseHelper. Other names in Web.config exist for legacy/Crystal scenarios. See Connection strings.


Session and authentication​

Why does my code not find RoleID in session?​

The session key is RoleId, not RoleID. See Glossary — RoleId.

What is dtVerifyUser?​

The full authenticated BO.User object in session, including module flags and company context. Controllers read it for authorization and dashboard behavior.

Login works but menus are empty or pages error?​

Minimal seed does not fill MenuMaster / UserPermissions. Copy those tables from a dev database or run your full migration scripts.


Database​

How many tables and procedures should DB_DAMSYERP have?​

After schema apply, 02-verify-blank-database.sql should show non-zero counts — on the order of ~185+ tables and ~887 procedures depending on export source. Zero counts mean schema was not applied.

Can I run only 04-seed-minimal.sql on an empty database?​

No. Seed inserts rows into existing tables. Apply schema first — Blank database setup.

What is 04b-fix-admin-login.sql for?​

Diagnostics and repair when admin / Admin@123 fails despite schema being present — resets encrypted password, branch, company link, and module flags.


Publish and deployment​

Which publish profile should I use?​

MVC_PUBLISH — Release, file system, PrecompileBeforePublish=False, DeleteExistingFiles=True. See Publish the application.

Why PrecompileBeforePublish=False?​

Precompiled publish has caused missing views and broken IIS deployments for this solution. Views publish as source .cshtml files.

I added a CSS file but IIS doesn't serve it?​

Include the file as <Content Include="..."> in DamsyERP.UI.csproj, republish, verify the publish folder, copy to inetpub. See Publish gotcha.

Where does the site live on IIS?​

Typical path: C:\inetpub\wwwroot\damsy_erp. Recycle the app pool after deploy. See Deploy to IIS.

What SQL login does IIS use?​

IIS APPPOOL\<ApplicationPoolName> when using Integrated Security — not your personal Windows account.


Configuration​

Why redirect loop on VPS after deploy?​

Usually ForceHttps=true or requireSSL=true without HTTPS. For HTTP sites, both must be false. See Release configuration.

Should I commit production connection strings?​

No. Maintain production strings in the server's deployed Web.config. Do not commit secrets or machine-specific VPS credentials to Git.

When can I enable ForceHttps?​

After an SSL certificate is bound in IIS and https:// works end-to-end. Then set ForceHttps=true and requireSSL=true together.


Reports​

Crystal Reports fail on server but work locally?​

Install Crystal Reports runtime on the server (version compatible with project references, typically 13.x). Ensure .rpt files and crystalreportviewers13/ published. See Crystal Reports and Common issues.


Debugging​

Users see "Something went wrong" — how do I find the real error?​

Release uses customErrors mode="RemoteOnly" — browse from the server console or check IIS failed request tracing / Event Viewer. The friendly page is ManageError/Index.

Works on my laptop, fails on VPS — first three checks?​

  1. MyConnectionString on VPS Web.config
  2. IIS APPPOOL\... SQL permissions
  3. Complete publish folder copied (especially app-assets, Areas, views)

See Works locally, fails on VPS.

Where is the in-repo knowledge guide?​

docs/DAMSY-ERP-KNOWLEDGE-GUIDE.md in the application repository — complementary to this Docusaurus site.


Examples​

Example — Quick local smoke test​

  1. F5 → Login page loads with companies
  2. Login admin / Admin@123 / Damsy Technologies
  3. Dashboard shows module tiles
  4. Open Payroll → dashboard loads without 404 CSS

Example — Quick VPS smoke test​

  1. Hit http://server/app-assets/css/shell-modern.css → 200
  2. Login → Dashboard
  3. Open one report and one grid page per critical module

Important notes​

  • FAQ answers reflect current deployment practices in this codebase — verify against your org's security policy before production.
  • When FAQ and older wiki text conflict, prefer published Docusaurus and DAMSY-ERP-KNOWLEDGE-GUIDE.md in repo.

Common mistakes​

Question phrasingUnderlying issue
"EF migration failed"Project doesn't use EF
"Fix Administration spelling"Breaks routes
"Seed didn't create tables"Schema step skipped
"Published but old UI"Browser cache or incomplete copy

Next steps​

New developers:

  1. Requirements → Installation → Running locally
  2. System overview → Login flow
  3. Deployment when preparing VPS

Returning developers:

  1. Knowledge refresh — module flags
  2. In-repo docs/DAMSY-ERP-KNOWLEDGE-GUIDE.md §10 (URL map and symptom cheatsheet)