📁 SODA+ AI - Project Management Guide

Organize, Save, and Copy Your Database Objects Across Environments


Version: 1.0 | Last Updated: January 2026
Feature: Project Management & Cross-Environment Copying | Estimated Time: 15 minutes


📑 Table of Contents

  1. Overview
  2. What are Projects?
  3. Key Features
  4. Getting Started
  5. Working with Projects
  6. Cross-Environment Features
  7. Common Use Cases
  8. Best Practices
  9. Troubleshooting
  10. Keyboard Shortcuts

Overview

Project Management in SODA+ AI allows you to organize and save collections of database objects (procedures, tables, views, functions) into persistent projects. Think of projects as folders or bookmarks for your database work.

What makes it special:


What are Projects?

A Project is a named collection of database objects that you want to keep together.

Example Projects:

Each Project Contains:

Projects are Saved:


Key Features

📁 Project Organization

🚀 Quick Access

🌍 Cross-Environment

🔄 Project Management


Getting Started

Opening Project Manager

Option 1: From Menu (Recommended)

  1. Click FileProject Manager (or similar menu location)
  2. Project Manager dialog opens

Option 2: After Adding Object

  1. Analyze any database object (procedure, table, view)
  2. Click 📁 Add to Project in analyzer toolbar
  3. Project Manager dialog opens automatically

Creating Your First Project

Step 1: Open Project Manager

Step 2: Click "➕ New Project"

Step 3: Fill in Project Details

Create New Project Dialog:

Project Name: *Required
   Customer Orders - Phase 1

Primary Environment: *Required
   ● DEV (Green)
   ○ TEST (Orange)
   ○ UAT (Yellow)
   ○ PROD (Red)

Description: Optional
   Initial release of customer order processing module.
   Includes order creation, updates, and reporting procedures.

   Click [Create]

✅ Success! Your project appears in the project list with:


Adding Objects to a Project

Method 1: From Analyzer Toolbar (Most Common)

  1. Analyze an Object

    • Open any stored procedure, table, or view in SODA+ AI
    • Example: Right-click dbo.usp_GetCustomerOrders → Analyze
  2. Click "📁 Add to Project"

    • Button is in analyzer toolbar (after Export button)
  3. Choose Project

    • If you have existing projects:

      • Project Selection Dialog appears
      • Select project from list
      • Click [Add to Project]
    • If no projects exist:

      • Prompt: "No projects found. Create one?"
      • Click [Yes] → Create Project dialog opens
      • Follow "Creating Your First Project" steps above
  4. Confirmation

    • Status bar shows: "✅ Added to project: Customer Orders - Phase 1"

Method 2: From Project Manager (Batch Mode)

  1. Open Project Manager
  2. Analyze multiple objects and add them one by one using Method 1
  3. Keep Project Manager open to see objects accumulate in real-time

Working with Projects

Viewing Project Details

Step 1: Open Project Manager

Step 2: Select a Project

Each Object Shows:

Object Actions:


Opening All Objects

Use Case: You have a project with 10 procedures you need to review.

Step 1: Select Project

Step 2: Click "🚀 Open All Objects"

Result:

10 Analyzer Tabs Open:
   [dbo.usp_GetCustomerOrders]
   [dbo.usp_UpdateCustomer]
   [dbo.usp_DeleteOrder]
   [dbo.vw_CustomerDetails]
   [dbo.usp_CalculateTotal]
   ...

✅ Instant Access - All objects loaded with SQL code and dependencies!


Editing Projects

Step 1: Select Project

Step 2: Click "✏️ Edit"

Step 3: Modify Details

Edit Project Dialog:

Project Name:
   Customer Orders - Phase 1 ✏️

Description:
   Updated: Phase 1 complete. Ready for TEST deployment. ✏️

   Click [Save]

✅ Changes Saved - Project list updates instantly

Note: You cannot change the Primary Environment after creation. If you need a different environment, use the Copy Project feature (see below).


Deleting Projects

⚠️ Warning: Deleting a project removes it permanently. Objects themselves are not deleted from the database, only the project container.

Step 1: Select Project

Step 2: Click "🗑️ Delete"

Step 3: Confirm Deletion

Confirmation Dialog:

⚠️ Delete Project?

Are you sure you want to delete "Customer Orders - Phase 1"?
This will remove the project and all its object associations.

The database objects themselves will NOT be deleted.

   [Yes, Delete]  [Cancel]

Step 4: Confirm Again

✅ Project Deleted - Removed from list


Cross-Environment Features

Server Translation Rules

What are Translation Rules?

Translation Rules define how server names should be mapped when copying projects across environments.

Example:

DEV Environment → TEST Environment:
   DEV-SQL-01\INSTANCE  →  TEST-SQL-01\INSTANCE
   DEV-SQL-02           →  TEST-SQL-02
   DEV-ANALYTICS        →  TEST-ANALYTICS

Why are they needed?

When you copy a project from DEV to TEST, the database objects reference server names like DEV-SQL-01. In TEST, you need these to become TEST-SQL-01 automatically.

Without Translation Rules:

With Translation Rules:


Managing Translation Rules

Step 1: Open Translation Rules Manager

Step 2: Create a Translation Rule

Click ➕ Add Rule

Translation Rule Editor:

Source Environment: *Required
   ● DEV
   ○ TEST
   ○ UAT
   ○ PROD

Source Server Name: *Required
   DEV-SQL-01\INSTANCE

Target Environment: *Required
   ○ DEV
   ● TEST
   ○ UAT
   ○ PROD

Target Server Name: *Required
   TEST-SQL-01\INSTANCE

Description: Optional
   Primary SQL Server for application data

Active:
   ☑ Rule is active (use for translations)

   Click [💾 Save Rule]

✅ Rule Created!

Step 3: Create More Rules

Managing Rules:

Important Notes:


Copying Projects to Different Environments

Use Case: You've developed 25 procedures in DEV and need them in TEST.

Step 1: Setup Translation Rules (One-Time)

Step 2: Select Source Project

Step 3: Click "📋 Copy to..."

Step 4: Configure the Copy

Copy Project Dialog:

📁 Source Project
   Name: Customer Orders - Phase 1
   Environment: DEV (Green badge)
   Objects: 25

➡️ Copy Settings

Target Environment: *Required
   ○ DEV
   ● TEST (Orange badge)
   ○ UAT
   ○ PROD

New Project Name: *Required
   Customer Orders - TEST

New Description: Optional
   TEST environment deployment of Customer Orders module

🔍 Translation Preview

   Server Translation:
   ✅ 3 servers will be translated
   ⚠️ 0 unmapped servers

   💡 Tip: Review translation rules to ensure all servers are mapped

   Click [📋 Copy Project]

Step 5: Review & Confirm

Confirmation Dialog:

⚠️ Copy Project?

This will create a new project with 25 objects in TEST environment.
Server names will be translated automatically.

   [Yes, Copy]  [Cancel]

Step 6: Success!

✅ Project Copied Successfully!

New Project: Customer Orders - TEST
Objects Copied: 25
Servers Translated: 3
Unmapped Servers: 0

The new project has been created in TEST environment.

✅ Result:

Step 7: Verify the Copy


Handling Unmapped Servers

What if a server doesn't have a translation rule?

Example:

Your DEV project references:
   ✅ DEV-SQL-01 (HAS rule → TEST-SQL-01)
   ✅ DEV-SQL-02 (HAS rule → TEST-SQL-02)
   ❌ DEV-REPORTING-SERVER (NO rule!)

During Copy:

⚠️ Warning: Unmapped Servers

The following servers do not have translation rules:
   • DEV-REPORTING-SERVER
   • DEV-OLD-ARCHIVE

These servers will keep their original names in the copied project.
You may need to update them manually or create translation rules.

   [Continue Anyway]  [Cancel and Add Rules]

Options:

  1. Continue Anyway - Copy proceeds, unmapped servers keep original names
  2. Cancel and Add Rules - Go back and create translation rules first

Best Practice: Create all translation rules before copying projects to avoid manual editing.


Common Use Cases

Use Case 1: Daily Development

Scenario: You're working on a new feature that spans 10 procedures and 3 tables.

Workflow:

  1. Create Project: "Feature X - Development"
  2. Analyze Objects: As you work on each procedure/table
  3. Add to Project: Click 📁 Add to Project after each analysis
  4. Quick Access: Open Project Manager → Open All Objects to review everything
  5. Iterate: Continue development, adding new objects as needed

Benefits:


Use Case 2: Code Migration

Scenario: Migrate 50 procedures from DEV → TEST → PROD.

Workflow:

  1. Setup Translation Rules:

    • DEV → TEST server mappings
    • TEST → PROD server mappings
  2. Create DEV Project:

    • "Q1 Migration - Wave 1"
    • Add all 50 procedures
  3. Copy to TEST:

    • Select project, click Copy
    • Target: TEST
    • New name: "Q1 Migration - Wave 1 (TEST)"
    • All server names translated automatically
  4. Test in TEST:

    • Open All Objects in TEST project
    • Run tests, verify functionality
  5. Copy to PROD:

    • Select TEST project, click Copy
    • Target: PROD
    • New name: "Q1 Migration - Wave 1 (PROD)"
    • Server names translated DEV → TEST → PROD

Benefits:


Use Case 3: Security Audit

Scenario: Identify all procedures accessing dbo.Customers table.

Workflow:

  1. Use Cross-Database Search:

    • Search for: "Customers"
    • Match Location: Code Content
    • Find 30 procedures
  2. Create Project: "Security Audit - Customer Access"

  3. Add All 30 Procedures:

    • Analyze each one
    • Click 📁 Add to Project
  4. Review:

    • Project Manager → Open All Objects
    • Review all 30 procedures in analyzer tabs
    • Document findings

Benefits:


Use Case 4: Performance Optimization

Scenario: Track procedures identified for optimization.

Workflow:

  1. Create Project: "Performance - Phase 1"

  2. Add Slow Procedures:

    • Analyze each slow procedure
    • Add to project with notes in description
  3. Optimize:

    • Open All Objects
    • Work through each procedure
    • Remove from project after optimization
  4. Track Progress:

    • Object count shows remaining work (e.g., "12 objects")

Benefits:


Best Practices

1. Use Descriptive Project Names

Good:

Bad:

2. Include Environment in Project Name

When copying projects across environments, include environment in the name:

This makes it clear which version is which.

3. Setup Translation Rules Early

Create all DEV → TEST → PROD translation rules before starting development:

4. Use Projects as Deployment Checklists

Create a project for each deployment:

5. Leverage Descriptions

Add detailed descriptions to projects:

Description:
   Q1 2025 Migration - Wave 1
   
   Includes:
   - Customer order processing (10 procedures)
   - Reporting views (5 views)
   - Helper functions (3 functions)
   
   Status: Ready for TEST deployment
   Owner: John Smith
   Jira: PROJ-1234

6. Clean Up Old Projects

Periodically delete projects you no longer need:

This keeps your project list manageable.

7. Set a Default Project for Rapid Development

If you're working on one main project:


Troubleshooting

Problem: "No projects found" when trying to add object

Cause: You haven't created any projects yet.

Solution:

  1. Click [Create New Project] in the prompt
  2. Fill in project details
  3. After creation, object will be added automatically

Problem: Translation rules not working during copy

Symptoms:

Solution:

  1. Verify rules are Active (checkbox in Translation Rules dialog)
  2. Check Source Environment matches project environment (e.g., DEV)
  3. Check Target Environment matches copy target (e.g., TEST)
  4. Verify Source Server Name matches exactly (case-insensitive, but spacing matters)

Server Name Normalization:


Problem: Can't find Project Manager in menu

Solution:

  1. Quick Access: Analyze any object → Click 📁 Add to Project
  2. Menu: Check File → Project Manager (or Tools → Project Manager)
  3. If not visible, contact administrator to enable feature

Problem: Objects missing from project after refresh

Cause: Project was deleted or objects were removed by another user.

Solution:

  1. Check if project still exists in left panel
  2. If project deleted, you'll need to recreate it
  3. If objects removed, re-add them using 📁 Add to Project

Problem: Copy Project creates duplicate objects

Expected Behavior: Copying creates a new project with copies of objects. Original project and objects remain unchanged.

This is normal:

Both projects exist independently.


Problem: Server names not translating correctly

Symptoms:

Expected: TEST-SQL-01
Actual: DEV-SQL-01 (unchanged)

Debugging Steps:

  1. Check Translation Rule:

    • Open Translation Rules
    • Verify rule exists: DEV-SQL-01TEST-SQL-01
    • Ensure Source Environment = DEV
    • Ensure Target Environment = TEST
    • Ensure rule is Active
  2. Check Server Name Format:

    • Rules normalize names: DEV-sql-01.domain.comDEV-SQL-01
    • Verify your object uses DEV-SQL-01 (not DEV-sql-01 with different case)
  3. Re-create Rule:

    • Delete existing rule
    • Create new rule with exact server names
    • Try copy again

Keyboard Shortcuts

Shortcut Action Context
Ctrl + P Open Project Manager Main Window
Ctrl + N Create New Project Project Manager
Ctrl + T Open Translation Rules Project Manager
Ctrl + E Edit Selected Project Project Manager
Delete Delete Selected Project Project Manager
Enter Open Project Details Project List
Ctrl + O Open All Objects Project Details
Escape Close Dialog Any Dialog

Summary

Project Management in SODA+ AI provides:

Key Features:

  1. Create Projects - Group related objects
  2. Add Objects - One-click from analyzer toolbar
  3. Open All - Load all objects instantly
  4. Translation Rules - Define server name mappings
  5. Copy Projects - Duplicate across environments with automatic translation

Next Steps:

  1. Create your first project
  2. Add some database objects
  3. Setup translation rules for DEV → TEST
  4. Try copying a project to TEST
  5. Open All Objects to verify

Questions? Check the SODA+ AI User Guide or contact support.


Happy Organizing! 🎉

↑ Top